Введение Обнаружение человеческих лиц на изображениях является одной из актуальных задач в области автоматической обработки визуальной информации. Задача обнаружения лица на изображении является ключевой при решении задач распознавания человеческих эмоций и автоматического слежения за передвигающимся в поле зрения камеры человеком. Для успешного функционирования системы обнаружения лиц необходимы алгоритмы, обеспечивающие высокую скорость работы и минимально возможное количество ложных обнаружений. Метод Виолы - Джонса Метод Виолы - Джонса [1] основан на следующих принципах. Интегральное представление изображения. Изображение представляется в интегральном виде, что позволяет быстро вычислять необходимые объекты [2]. Интегральное представление изображения представляет собой матрицу, совпадающую по размерам с исходным изображением. В каждом ее элементе хранится сумма яркостей пикселей, находящихся левее и выше данного элемента. Элементы матрицы рассчитываются по формуле , где - интегральное изображение; - исходное изображение. Пример расчета интегрального изображения представлен на рис. 1. 0 1 1 1 0 1 2 3 1 2 2 3 1 4 7 11 1 2 1 1 2 7 11 16 1 3 1 0 3 11 16 21 Исходное изображение I (i, j) Интегральное изображение L (x, y) Рис. 1. Пример интегрального изображения Пусть в изображении есть прямоугольник АБВГ (рис. 2). Тогда сумму пикселей внутри прямоугольника можно выразить через разность смежных прямоугольников по формуле Рис. 2. Расчет суммы яркостей пикселей в произвольном прямоугольнике Признаки Хаара. На основании признаков Хаара [3] происходит поиск нужного объекта (в данном контексте - лица и его черт). Признак - отображение области изображения на множество допустимых значений, т. е. где X - область изображения для вычисления признака; Df - множество допустимых значений признака. В стандартном методе Виолы - Джонса используются прямоугольные признаки, представленные на рис. 3. Рис. 3. Примеры признаков Хаара Бустинг. Для выбора наиболее подходящих признаков для искомого объекта на части изображения применяется бустинг [2]. Бустинг - комплекс методов, способствующих повышению точности аналитических моделей. Бустинг (от англ. boosting - повышение, усиление, улучшение) означает дословно «усиление» «слабых» моделей - это процедура последовательного построения композиции алгоритмов машинного обучения, когда каждый следующий алгоритм стремится компенсировать недостатки композиции всех предыдущих алгоритмов. Метод комбинирования классификаторов в каскадную структуру. Для быстрого отбрасывания окон, где не найдено лицо, применяются каскады признаков. Метод повышает скорость обнаружения, фокусируя свою работу на наиболее информативных областях изображения. Структура каскадного детектора приведена на рис. 4. Каскад состоит из слоев, которые представляют собой классификаторы, обученные с помощью процедуры бустинга. Рис. 4 . Структура каскадного детектора Mетод Захры Метод Захры [4] является гибридным методом обнаружения лица: сначала на входном изображении осуществляется поиск областей, содержащих изображение кожи человека, затем применяется метод Виолы - Джонса. Предлагаемый подход Классификатор Виолы - Джонса является наиболее быстрым и точным из существующих методов, его эффективность доказана многочисленными исследованиями. Однако при работе на сложных изображениях этот метод характеризуется большим количеством ложных обнаружений. Для минимизации количества ложных обнаружений проведем дополнительную обработку изображения на базе алгоритма обнаружения кожи, т. е. предлагаемый метод обнаружения лиц на изображении будет состоять из следующих шагов: - применение алгоритма Виолы - Джонса; - применение алгоритма обнаружения кожи с использованием методов кодирования цветовых пространств (Log opponent и YIQ). Цветовое пространство. YIQ - основная цветовая схема, принятая Национальным комитетом по телевизионным стандартам США для широковещательной передачи цветного телевещания. Сигнал I называется синфазным, Q - квадратурным. Конверсия в RGB и обратно осуществляется по следующим формулам [5]: В [6] показано, что пиксель классифицируется как кожа, когда выполняется условие . (1) Цветовое пространство Log opponent для обнаружения кожи было предложено в [7, 8]: Значения RGB преобразуются в Log opponent I, Rg и By следующими уравнениями [7]: Тогда оттенок (hue H) и насыщенность (saturation S) можно вычислить, используя следующие уравнения [7]: Цвет кожи (лица) человека находится в диапазоне (2) Учитывая вышеизложенное, будем считать, что пиксель классифицируется как кожа при выполнении условий , (3) полученных из уравнений (1) и (2). Общая схема предлагаемого алгоритма показана на рис. 5. Рис. 5. Функциональная схема комбинированного метода обнаружения лиц Таким образом, для выявления лиц на изображениях сначала предлагается использовать на исходном изображении метод Виолы - Джонса. Затем дополнительно проводим классификацию на принадлежность оцениваемой области коже человека на основе уравнения (3). Экспериментально установлено, что наименьшее число ошибок первого и второго рода обеспечивается, если выполняется следующее условие для каждой из оцениваемых областей - 15 ≤ кожа, % ≤ 110. Результаты экспериментов Для оценки предлагаемого алгоритма использовалась выборка из 60 цветных изображений от BioDatabase [9], суммарно содержащих 317 лиц. Оценка проводилась по следующим параметрам: 1. ТР (true positive - верные обнаружения) - число объектов, присутствующих на изображении и обнаруженных алгоритмом. 2. FP (false positive - ложноположительные обнаружения) - число объектов, обнаруженных алгоритмом при их отсутствии на изображении. 3. FN (false negative - ложноотрицательные обнаружения) - число объектов, присутствующих на изображении и не обнаруженных алгоритмом. Из [10] мы можем использовать: Точность обнаружения = Итоговую оценку работы алгоритма можно провести по формуле Точность = (1 - (Δ FP + Δ FN)) 100 % . Пример работы алгоритмов на одном из изображений тестовой базы представлен на рис. 6. Итоговые результаты сравнения работы алгоритмов представлены в таблице. а б в г Рис. 6. Пример результатов, полученных разными методами: а - исходное изображение; б - метод Виолы - Джонса; в - метод Захры; г - предложенный метод Результаты сравнения работы алгоритмов Метод Точность обнаружения Обнаружения Точность, % Ложноположительные (ΔFP) Ложноотрицательные (ΔFN) Виолы - Джонса 0,97 0,1354 0,225 84,21 Захры 0,84 0,05 0,1784 77,16 Предложенный 0,97 0,02 0,225 95,75 Таким образом, предлагаемый подход обеспечивает более высокую точность обнаружения лиц (меньшее число ложноположительных и ложноотрицательных обнаружений) по сравнению с методами Виолы - Джонса и Захры. Заключение Экспериментальные результаты показывают, что предложенный метод более точен, чем методы Виолы - Джонса и Захры. Предложенный метод обнаруживает приблизительно 95,75 % лиц, представленных на тестовом наборе изображений. Кроме того, тесты показали, что предлагаемый подход существенно снижает вероятность ложного обнаружения.