Статья направлена на обсуждение революционного алгоритма компьютерного зрения - обнаружения Вуаля Джонса, который формирует основу интуиции для операций свертки в CNN и продвинутых глубоких нейронных сетях.
Инфраструктура обнаружения объектов Виолы – Джонса - первая среда обнаружения объектов, обеспечивающая конкурентоспособные показатели обнаружения объектов в режиме реального времени, предложенная в 2001 году Полом Виолой и Майклом Джонсом. Хотя исходное обучение было мотивировано проблемой распознавания лиц, его можно масштабировать для других объектов. Алгоритм не очень часто используется в первую очередь из-за его огромного количества функций, но составляет основу для некоторых передовых сетей компьютерного зрения.
На высоком уровне классификатор принимает данные, состоящие из лиц, а не лиц, как положительные и отрицательные.
Функции Хаара похожи на сверточные ядра и составляют основу для свертки. Существует 5 основных типов каскадов, которые сворачивают изображение в окнах 24 * 24, увеличивая их размер и форму.
Результат в одном окне 24 * 24 с извлечением всех функций хаара дает более 160 000+ функций!
Поскольку алгоритм использует вычисления над большими массивами, вычисления упрощаются за счет подхода «разделяй и властвуй» за счет использования концепции целостного изображения.
Улучшение: устраните избыточные функции с помощью AdaBoost и уменьшите результат до 7000 функций на окно.
AdaBoost объединяет слабые классификаторы (релевантные, лучше, чем случайные) для создания сильного классификатора, используя линейную комбинацию слабых классификаторов, чтобы определить, есть ли у изображения лицо или нет.
Алгоритм дополнительно улучшен за счет каскадирования сильных классификаторов (построения дерева решений), чтобы избежать избыточности в скользящих вычислениях и исключить пиксели, не связанные с лицом.