Методы, основанные на внешних признаках, получили значительное внимание в широком круге областей исследований, таких как биометрия, распознавание образов, компьютерное зрение и машиностроение. В соответствии с данным подходом поиск лиц осуществляется полным перебором всех прямоугольных фрагментов изображения разнообразного размера, а затем производится их проверка на наличие лица. Для обучения алгоритмов требуется библиотека вручную подготовленных изображений лиц и «не лиц» – любых других изображений [1].
Метод Виолы-Джонса – самый известный и наиболее эффективный из методов, основанных на внешних признаках. Он характеризуется высокой скоростью и низкой вероятностью ложного обнаружения, алгоритм может распознавать лицо, даже если оно повернуто под углом 30 градусов. Если угол больше, то вероятность успешного обнаружения значительно падает, что усложняет использование алгоритма в современных системах. Метод является основой большинства существующих алгоритмов распознавания и идентификации, а также применяется в большинстве современных фотоаппаратов и камерах мобильных телефонов.
Метод Виолы-Джонса основан на следующих принципах:
изображения представляются в интегральной форме, что позволяет быстро вычислить необходимые характеристики;
для поиска лица на изображении используются признаки Хаара;
для выбора характеристик лица используется специальный метод обучения – бустинг;
все характеристики поступают на вход классификатора, который дает результат «верно» или «ложь»;
используются каскады признаков для быстрого отбрасывания окон с ложным результатом.
Все человеческие лица обладают схожими свойствами. Эти закономерности могут быть сопоставлены с использованием признаков Хаара. Несколько свойств, общих для всех человеческих лиц, составляющих признаки Хаара:
область глаз темнее, чем верхняя часть щек;
область переносицы ярче, чем глаза.
Состав свойств, формирующих соответствующие черты лица:
расположение и размер: глаз, рта, переносицы;
значение: ориентированные градиенты интенсивности пикселей.
Четыре признака, соответствующие этому алгоритму, затем проверяются на изображении предполагаемого лица (рисунок 1-3) [2].
Рисунок 1 – Первый признак Хаара
Рисунок 2 – Второй признак Хаара
Рисунок 3 – Третий и четвертый признак Хаара
Эти признаки-прямоугольники накладываются на изображение и подсчитывают яркость всех пикселей, попадающих в светлые и темные зоны. Затем рассчитывается разница между суммами по формуле 1:
, (1)
где I – интенсивность пикселей, S1 – все пиксели в области белого прямоугольника, S2 – все пиксели в области черного прямоугольника.
Рассчитанная разница f (значение определенной характеристики) далее сравнивается с порогом, определенным в процессе обучения. Если f больше порога, значит признак обнаружил объект, в противном случае – нет. Признаки вычисляются в окне сканирования, которое перемещается по всему изображению. Принцип работы сканирующего окна представлен на рисунке 4. Этот процесс повторяется несколько раз для различных размеров окна сканирования, то есть применяется масштабирование окна и объектов.
Рисунок 4 – Принцип работы сканирующего окна
Вычислить все признаки невозможно, поэтому необходимо выбрать некоторое подмножество признаком, которое позволит эффективно разделить обучающую выборку на лица и не-лица. Для этого используется метод бустинга. Бустинг – это современный метод классификации и распознавания образов, представляющий собой процедуру последовательного построения композиции алгоритмов обучения, когда каждый следующий алгоритм стремится компенсировать недостатки предыдущего [3]. Бустинг использует понятия слабых и сильных классификаторов. Сильным классификатором называется классификатор, который допускает мало ошибок, слабым – который классифицирует с достоверностью 51%.
В методе Виолы-Джонса используется совершенный алгоритм бустинга AdaBoost, комбинация классификаторов которого является сильным классификатором. Структура каскада признаков с использованием алгоритма AdaBoost представлена на рисунке 5.
Рисунок 5 – Каскад классификаторов
Блок-схема работы алгоритма Виолы-Джонса представлена на рисунке 6.
Рисунок 6 – Метод Виолы-Джонса
Этот тип каскадной модели хорошо подходит для обработки изображений, где общее количество обнаруженных образов невелико. В этом случае метод может быстро решить, что окно не содержит образ, отбросить его и перейти к следующему окну.
Метод хорошо находит лицо, которое повернуто на небольшой угол на зашумленном изображении со сложным фоном. На сегодняшний день метод Виолы-Джонса является самым популярным благодаря его высокой скорости и точности работы.
Использованные источники:
Тропченко А.Ю., Тропченко А.А. Методы вторичной обработки и распознавания изображений. СПб.: Университет ИТМО, 2015. – 215 с.
Гонсалес Р., Вудс Р. Цифровая обработка изображений. М.: Техносфера, 2005. – 1072 с.
Татаренков Д. А. Анализ методов обнаружения лиц на изображении // Молодой ученый, 2015. № 4. – с. 270 – 276.