ISBN 978-5-7262-1377-4. НЕЙРОИНФОРМАТИКА – 2011. Часть 3

advertisement
ISBN 978-5-7262-1377-4. НЕЙРОИНФОРМАТИКА – 2011. Часть 3
М.Н. ГОЛУБЕВ
Ярославский государственный университет им. П.Г. Демидова
maksimgolubev@yandex.ru
ИСПОЛЬЗОВАНИЕ ИНФОРМАЦИИ О ЦВЕТЕ
В АЛГОРИТМЕ ВЫДЕЛЕНИЯ ЛИЦ НА БАЗЕ БУСТИНГА
За последние несколько лет для решения задачи выделения лиц было
предложено множество алгоритмов, использующих различные подходы.
Однако, как бы ни был хорош алгоритм, на его выходе возникают ошибки
двух видов – пропущенные лица и ложные срабатывания. В данной работе
делается попытка уменьшить число ошибок второго рода путем использования информации о цвете, которая наряду с информацией о яркости пикселей присутствует в полноцветных изображениях.
Ключевые слова: алгоритм выделения лиц, кластер кожи, ошибки второго рода, уровень ложных срабатываний
Введение
Задача выделения лиц, на первый взгляд, кажется простой с точки зрения человека, однако, с позиций машинного зрения ее решение требует
серьезных вычислительных и интеллектуальных ресурсов. Искусственный
интеллект, привлекаемый для решения этой проблемы, пока еще не достиг уровня человека, но все-таки уже успел превратиться в серьезный
инструмент для решения важных практических задач. Решение задачи
автоматического обнаружения лиц находит применение в системах технического зрения, робототехнике, системах видеонаблюдения и контроля
доступа, в интерфейсах взаимодействия человек-компьютер. Основными
требованиями, которые предъявляются к подобному классу алгоритмов,
являются: высокий процент выделенных лиц, работа в режиме реального
времени, робастность по отношению к внешним факторам.
В качестве алгоритма выделения лиц в работе рассматривается алгоритм, предложенный П. Виолой и М. Джонсом [1], который использует
процедуру обучения, основанную на бустинге [2]. Данный алгоритм детектирования лиц на цифровом изображении, основан на выделении признаков и учитывает лишь яркостную составляющую изображения, полностью игнорируя информацию о цвете. Однако из анализа примеров детектирования следует, что рассмотренный алгоритм в некоторых случаях
УДК 004.032.26(06) Нейронные сети
55
ISBN 978-5-7262-1377-4. НЕЙРОИНФОРМАТИКА – 2011. Часть 3
допускает ошибки второго рода (ложные срабатывания) на объектах, которые по цветовой гамме значительно отличаются от цвета лица. Эти
ошибки можно значительно уменьшить, добавив к алгоритму детектирования этап проверки областей-кандидатов на цветовое соответствие [3].
Описание алгоритма выделения лиц
Алгоритм Виолы-Джонса состоит из следующих трех основных этапов:
1. Переход к интегральному изображению. Интегральное изображение в точке  x, y  содержит сумму пикселей, расположенных слева и
сверху над этой точкой, и определяется по формуле:
ii  x, y  

i  x ', y ' ,
x ' x, y ' y
где ii  x, y  – интегральное изображение, i  x, y  – исходное изображение.
Используя интегральное изображение, вычисление признаков одинакового вида, но с разными геометрическими параметрами проходит за одинаковое время.
2. Метод построения классификатора на основе алгоритма бустинга.
В результате работы алгоритма бустинга на каждой итерации формируется простой классификатор вида:
1,
hj  x  
0,
если p j f j  x   p j  j
в остальных случаях
,
где p j – показывает направление знака неравенства,  j – значение порога, f j  x  – вычисленное значение признака, x – входное изображение.
Полученный классификатор имеет минимальную ошибку по отношению к
текущим значениям весов, задействованных в процедуре обучения для
определения ошибки.
3. Метод комбинирования классификаторов в каскадную структуру, которая повышает скорость обнаружения, фокусируя свою работу
на наиболее информативных областях изображения.
Структура каскадного детектора приведена на рис. 1. Каскад состоит
из слоев, которые представляют собой классификаторы, обученные с помощью процедуры бустинга [4].
УДК 004.032.26(06) Нейронные сети
56
ISBN 978-5-7262-1377-4. НЕЙРОИНФОРМАТИКА – 2011. Часть 3
Поступающее
окно изображения
1-й
слой
2-й
слой
3-й
слой
N-й
слой
Рис. 1. Структура каскадного детектора
Для модификации алгоритма детектирования лиц были выбраны два
подхода. Рассмотрим их более подробно.
Явное задание кластера кожи
Первый подход использует классификатор, который определяется явными численными правилами, ограничивающими кластер цвета кожи в
пространстве RGB. Пиксель  R, G, B  относится к коже, если для него
выполнены все следующие условия:
 R  95 ;
 G  40 ;
 B  20 ;
 max R, G, B min R, G, B  15 ;

R  G  15 ;
 RG;
 RB.
Данный алгоритм не требует перехода в цветовую систему, отличную
от цветовой системы исходного изображения, не требует больших вычислительных ресурсов, прост и надежен. Простота классификатора и применение его только к областям-кандидатам позволили сократить количество
ошибок второго рода в алгоритме детектирования лиц, практически не
увеличив вычислительную нагрузку. Доля пикселей, которая должна быть
детектирована как кожа, чтобы алгоритм отнес данное окно к классу лиц,
задается в параметре STDR (Skin Tone Detection Rate).
Непараметрическая модель распределения оттенка кожи
Второй подход использует разработанный автором работы алгоритм и
относится к непараметрическим моделям распределения оттенка кожи [5].
Он основан на вычислении вероятности принадлежности к оттенку кожи
УДК 004.032.26(06) Нейронные сети
57
ISBN 978-5-7262-1377-4. НЕЙРОИНФОРМАТИКА – 2011. Часть 3
каждой точки дискретизированного цветового пространства. Для достижения робастности алгоритма он обучался на базе, которая состояла из
изображений кожи 6 различных оттенков.
Первым этапом процедуры обучения алгоритма являлся переход от
цветового пространства RGB к цветовому пространству K1K2K3, которое
представляет собой куб в пространстве RGB, размеры которого в 5 раз
меньше исходного. Подобный переход необходим по двум причинам: вопервых, для обучения алгоритма требуется набрать меньшую статистику,
а во-вторых, уменьшение числа элементов способствует повышению
быстродействия алгоритма. К тому же человек не может различить пиксели, отстоящие друг от друга по яркости своих цветовых компонент меньше, чем на 5 единиц.
Далее для каждого набора была получена функция плотности распределения вероятности W (k1 , k2 , k3 ) , описывающая статистическое распределение пикселей в цветовом пространстве K1 K2 K3. По функции
плотности находился порог детектирования для данного оттенка кожи. С
данными порогами сравниваются вероятности, полученные в процессе
работы алгоритма. Поскольку пороги находились для изображений размером 150×150 пикселей, то первым этапом работы алгоритма является
масштабирование изображения до указанных размеров.
Результаты экспериментов
Тестирование работы алгоритма проводилось на базе из 50 полноцветных изображений, полученных из сети Интернет, которые суммарно содержали 237 лиц. При этом число лиц на изображениях, их размер и условия съемки различны и максимально приближены к реальным.
Коэффициент масштабирования для алгоритма выделения лиц был
взят равным 1,05. При использовании коэффициента масштабирования
близкого к 1 достигается наибольший уровень выделения, но и происходит наибольшее число ложных срабатываний.
Результаты работы алгоритма, использующего явное задание кластера
кожи, при различных значениях параметра STDR приведены на рис. 2. Из
анализа полученных зависимостей следует, что данный алгоритм позволяет почти в два раза снизить количество ложных срабатываний, при небольшом снижении уровня выделения (7 %). Однако, если взять параметр
STDR слишком большим, то уровень неверного выделения снова начинает возрастать. Это объясняется тем, что даже на верно детектированных
окнах пиксели кожи занимают лишь некоторую часть выделенной облаУДК 004.032.26(06) Нейронные сети
58
ISBN 978-5-7262-1377-4. НЕЙРОИНФОРМАТИКА – 2011. Часть 3
сти. На лице человека присутствуют также глаза, волосы, брови и прочие
особенности, которые по своему цвету отличаются от пикселей кожи. В
связи с этим выбор большого значения параметра STDR приводит к значительному уменьшению уровня выделения и увеличению уровня неверного выделения. Как следует из представленных графиков, оптимальным
является STDR около 0,4.
Рис. 2. Зависимости уровня выделения и уровня ложных
срабатываний от параметра STDR
Однако алгоритм, использующий явное задание кластера кожи, ограничен в своей работе определенным набором оттенков и допускает ошибки, если оттенок кожи не входит в этот набор. В связи с этим автором работы был предложен алгоритм, который использует непараметрическую
модель распределения оттенка кожи. Данный алгоритм обучался на изображениях 6 различных оттенков. В табл. 1 представлены результаты сравнения обоих алгоритмов. В скобках указано количество выделенных областей.
Таблица 1
Сравнение результатов работы алгоритмов детектирования кожи
Тестируемый алгоритм
Только яркость
Уровень
выделения
92 % (217)
УДК 004.032.26(06) Нейронные сети
Уровень ложных
срабатываний
51 % (230)
59
ISBN 978-5-7262-1377-4. НЕЙРОИНФОРМАТИКА – 2011. Часть 3
Явное задание кластера кожи STDR =
85 % (201)
26% (72)
0,4
Непараметрическая модель кожи
88 % (209)
17% (44)
Из таблицы видно, что предлагаемый алгоритм показывает на 9 %
меньше ложных срабатываний по сравнению с первым алгоритмом при
большем уровне детектирования (на 3 %).
Среди тех ложных срабатываний, которые не удалось отсеять с помощью данных алгоритмов, часть содержит кожу и по определению не
должна отфильтровываться. Результаты работы алгоритмов без учета таких ложных срабатываний представлены в табл. 2. Из данной таблицы
видно, что «чистая» ошибка нашего алгоритма составляет 4 %.
Таблица 2
«Чистая» ошибка предлагаемого алгоритма
Доля ложных срабатываний,
которые не содержат кожу
Тестируемый алгоритм
Явное задание кластера кожи STDR =
0,4
Непараметрическая модель кожи
13% (36)
4% (10)
На рис. 3 приводится визуальный пример того, как модификации алгоритма уменьшают количество ложных срабатываний. Из рисунка видно,
что оба алгоритма успешно отсеяли по два ложных срабатывания. Однако
первый алгоритм также допустил ошибку на одном из лиц.
а)
УДК 004.032.26(06) Нейронные сети
60
ISBN 978-5-7262-1377-4. НЕЙРОИНФОРМАТИКА – 2011. Часть 3
б)
в)
Рис. 3. Сравнение работы алгоритмов: а) исходный алгоритм;
б) явное задание кластера кожи; в) непараметрическое задание кластера
кожи
Таблица 3
Сравнение скорости работы алгоритмов детектирования кожи
Тестируемый алгоритм
Явное задание кластера кожи STDR =
0,4
Непараметрическая модель кожи
Скорость работы, изоб./с
134
10
Другой немаловажной характеристикой алгоритмов является время
работы. Необходимо не только повысить качество работы алгоритма выделения лиц, но и сохранить возможность работы в реальном времени.
Сравнение скорости работы алгоритмов детектирования кожи представлено в табл. 3. Оба детектора работают достаточно быстро. Однако алгоритм, использующий явное задание кластера кожи, работает более чем
в 10 раз быстрее предлагаемого алгоритма.
Выводы
Результаты проведенных исследований позволяют сделать следующие
основные выводы:
Разработана модификация для алгоритма выделения лиц на основе детектора пикселей кожи. Применение детектора кожи позволяет уменьшить количество ложных срабатываний на цветных изображениях при
небольшом уменьшении уровня выделения.
Проведено сравнение двух алгоритмов детектирования кожи. Это алгоритм, использующий явное задание кластера кожи и алгоритм, использующий непараметрическую модель кожи.
УДК 004.032.26(06) Нейронные сети
61
ISBN 978-5-7262-1377-4. НЕЙРОИНФОРМАТИКА – 2011. Часть 3
Алгоритм, использующий явное задание цвета кожи, ограничен одной
областью цветовых оттенков. Предлагаемый автором работы алгоритм
является более гибким, и его работа определяется набором обучающих
изображений. Он показывает на 9 % меньше ложных срабатываний при
большем уровне детектирования (на 3 %).
Время работы предлагаемого алгоритма более чем в 10 раз больше алгоритма, использующего явное задание кластера кожи.
Список литературы
1. Viola P., Jones M. Rapid object detection using a boosted cascade of
simple features // Proc. Int. Conf. on Computer Vision and Pattern Recognition,
2001. № 1. P. 511–518.
Баринова О.В., Ветров Д.П. Оценки обобщающей способности бустинга с вероятностными входами // Материалы 14-й Всероссийской конференции «Математические методы распознавания образов», Суздаль, 2009.
С. 81–84.
Vezhnevets V., Sazonov V., Andreeva A. A survey on pixel-based skin color detection techniques // GRAPHICON03. 2003. P. 85–92.
Ковальчук А.В., Соколов М.Е. Экспертные комитеты: принципы построения и применения // XI всероссийская научно-техническая конференция «Нейроин-форматика-2009». Сборник научных трудов. Ч. 1. М.:
МИФИ, 2009. С. 117–123.
Апальков И.В., Голубев М.Н., Хрящев В.В. Устранение ложных срабатываний в алгоритме выделения лиц на изображении // Доклады 12-й
международной конференции «Цифровая обработка сигналов и ее применение» (DSPA-2010), Москва, 2010. Т. 2. С. 302–304.
УДК 004.032.26(06) Нейронные сети
62
Download