УДК 004.932
И.А. Крестинин, О.С. Середин (Тула, ТулГУ)
МЕТОД ОСОБЫХ ТОЧЕК В ЗАДАЧАХ ПОИСКА ЛИЦ НА ГРАФИЧЕСКИХ ИЗОБРАЖЕНИЯХ
Рассматриваются обгцие подходы к решению задами локализащи изображения роиз-вольных графических объектов при натяни преобразования поворота и изменения масштаб, а также применение этого алгоргтма к задач поиска лица человека на тображент Предлар-ется спжоб локализации, исоользуюгция инфомацию о характернъы жобеннжтях искомоо объекта совмещенный с оостржтем реишюгцер рштарапознаванш.
Наиболее популярный сегодня подход к решению задач локализации - это использование скользящих окон [6, 8]. В этом случае, как правило, возникают сложности с выбором рамера окна, т. е. определением масштаба локаизуемых объектов. Также трудности возникают при поиске повернутых на некоторый неизвестный угол объектов. Для рарешения этих проблем часто используют несколько окон различного размера, сравнение содержимого с несколькими изображениями, на каждом из которых объект повернут на различные углы. Однако вычислительна сложность исходного агоригма при этом возрастает настолько, что, как правило, приходится отказываться от поиска повернутых объектов, а часто также и от определения масштаба.
Рассмотрим группу агоригмов локализации, использующую понятие особых точек для решения задач локаизации повернутых и масштабированных графических объектов, а также их применение к задаче локаи-зации лица на изображении.
Пусть имеется множество цветов С, а также некоторое подмножество двумерного пространства Р ей2, на котором определена функция цвета /: Р ^ С. Тогда под термином "графическое изображение" будем понимать любую упорядоченную тройку ю=(/,Р,С). Множество всех возможных графических изображений будем обозначать П. Введем поняие преобразования изображения как функции ю = г (юэ), определенной как
отображение Т: П ^ П.
Рассмотрим преобраования изображений, наываемые аффинными:
Та (п,а12,а1Ъ,а21,а22,а2Ъ):/(х,у) = /(апх + а12у + а13,а21х+а22у +а23). (1)
Их удобно описывать так наываемой матрицей аффинного преобраования с использованием однородных координат:
а11 а12 а13
а21 а22 а23
0 0 1
Та (А): / ()=/0 ( ) * = ( У,1)Т .
Отметим, что области определения функций / и /0, а также множества цветов могут не позволить напрямую использовать вышеописанные преобразования. Например, когда функция цвета определена на узлах решетки (растровое изображение), то ясно, что узлы, на которых определено результирующее изображение, не обязаны совпадать с узлами решетки, получаемой в результате преобраования координат. В таких случаях используют раличные интерполяционные процедуры.
Пусть к некоторому изображению ю0 применена
последовательность преобраований
Ю=Ц(Та (А,®0 ) (3)
Будем понимать под задачей локаизации задачу нахождения преобраования А по имеющимся изображениям ю (искомое изображение) и ю0 (баовое изображение).
Ясно, что в случае, если ничего не известно о преобраовании Т, то
решить эту задачу не представляется возможным. Потому обычно считается, что известен хотя бы приблизительный вид этого преобраования. Можно потребовать, чтобы это преобраование имело следующий вид: Т
не изменяет области определения функции цвета; значение функции яркости преобраованного изображения зависит лишь от значений функции яркости в некоторой локальной окрестности соответствующей координаты на исходном изображении. Этим ограничениям удовлетворяют такие часто применяемые на практике преобраования, как изменение якости изображения, контрастности, гаммы, фильтры подавления шума и многие другие виды преобразований.
Можно отметить, что большинство встречающихся на практике преобразований могут быть представлены в виде (3), т. е. в виде последовательного применения аффинного преобраования координат и некоторого преобраования цветов пикселей. При осуществлении различных преоб-раований координат изображение, как правило, не меняется по своему содержанию, следовательно, если выделить на изображении некоторые объекты, то при преобраования координат эти объекты сохранят свое взаимное расположение.
Если известны координаты центров хотя бы трех объектов на искомом изображении и координаты центров этих же объектов на баовом изображении, то можно легко восстановить параметры преобраования координат, отображающего одно изображение на другое (рис. 1).
Алгоритм локаизации на основе особых точек выгладит следующим образом:
- на искомом и на баовом изображениях выделяются множества некоторых объектов (их центры - особые точки);
- находятся соответствия трех или более особых точек искомого изображения особым точкам баового изображения;
- вычисляются параметры преобразования координат.
Рис. 1. Восстановление параметров преобразования координат: а - базовое изображение; б- искомое
Ясно, что для практического решения проблемы выделения объектов необходимо выбрать такое их множество, для которого бы существовали эффективные процедуры их нахождения на произвольном изображении. Потому в качестве объектов часто используют локаьные экстремумы функции яркости, функций составляющих цвета, локальные экстремумы градиента функции яркости и т.д. Центры таких объектов шзывают особыми точками. Главное свойство, которому должны удовлетворять особые точки, они должны сохранять своё взаимное расположение при всех допустимых преобразования изображений Т •
Очевидно, что, например, взаимное расположение локаьных экстремумов функции яркости будет сохраняться и при таких операция, как увеличение масштаба, поворот, зеркалирование, не слишком сильное изменение яркости, контраста, гаммы. Однако проблемной остается операция уменьшения масштаба т. к. при этом две особых точки могут слиться в одну. Также наичие шума, например, при получении изображения с цифровой фотокамеры может привести к появлению большого числа ложных особых точек.
Для нахождения параметров преобраования, отображающего искомое изображение на баовое, выберем на искомом изображении п >3 особых точек: (,у?) I = 1...п, пусть на базовом изображении им соответствуют точки (х®0,у?0), такие, что они не лежат на одной прямой. Составим из этих точек матрицы следующего вида:
(4)
В случае идеальных изображений, к которым было применено исключительно преобразование координат, определяемое матрицей аффинного преобрлования А , выполняется равенство
и№=Аи №0. (5)
( (№> 0 2 у.№> ^ п ( V® Х1 V® 2 V® ^ п
и № = №0 У,0 0 У 2 0 . 0 .. Уп ; и№ = у№ У 2 у № У П
1 1 .. 1 1 1 ... 1
V V У
Однако на практике из-за ошибок, вносимых, например, дискретностью решетки растровых изображений, неточностью определения координат особых точек и т. д., равенство (5) выполняется лишь приближено:
и ?~ли ?0. (6)
В таком случае аффинное преобраование можно искать как решение оптимизационной задачи:
Л* = аг§шт и?-Ли^, (7)
ЛеЕ6
где под символом [ ] понимается сумма квадратов элементов матрицы:
М) соЬ{М)
[М]= II М. (8)
г =1 }=1
Для случа п = 3
Л *и? (и? )-, и?01 * 0. (9)
Отметим, что решене задачи (7) для п >3 также может быть найдено анаиттесь®, но трудоемкость его нахождения растет с п, потому для высоких п может потребоваться решение уже численными процедрами, что намного повышает вычислительную сложность задачи в целом, что часто крайне нежелательно.
Выделив на изображениях некоторые множества объектов и определи их центры, необходимо найти соответствие особых точек баового изображения особым точкам искомого изображения. Существует несколько путей решения этой задачи. Рассмотрим ж более подробно.
В некоторых случая удается отнести каждый из объектов, выделенных на изображении, к отдельному классу. Так, например, объекты, выделенные на изображениях рис. 2, можно отнести к классам "нос самолета", "правое крыло самолета", "левое крыло самолета". Если каждый из объектов изображения имеет уникаьный класс, то легко сопоставить объекты базового и искомого изображений. Однако на практике крайне редко удается наначить каждому объекту уникаьный класс, что является главным недостатком данного метода.
Этот подход заключается в переборе возможных соответствий групп из п особых точек искомого изображения группам из п особых точек баового изображения с оцениванием степени успеха такого сопоставления при помощи какого-лбо критерия q(и?,и?0).
Например, при п> 3 в большинстве случаев не удастся найти ни одного соответствия групп из п особых точек, которое бы полностью удовлетворяло равенству (5), поэтому в качестве критерия можно выбрать степень расхождения решения с этим равенством:
q(и?,и? ) = и?-Ли?0
(10)
Однако, как уже говорилось ранее, использоване п >3 крайне нежелательно из-за роста сложности решения задачи (7), поэтому можно использовать следующий подход: после того, как по некоторой паре групп из п особых точек получены параметры преобразования координат, попытаться проверить другие точки искомого изображения на степень соответствия точкам баового изображения. Еще одним подходом может быть использование уже самих изображений, можно найти по некоторой паре групп из п особых точек параметры отображения искомого изображения на баовое, после этого вырезать из обоих изображений области, которые согласно этому отображению перекрываются, и сравнить полученные области каким-либо алгоритмом сравнения изображений. Как продолжение этого подхода можно предложить не ссавнение вырезанного фрагмента с искомым, а распознавание его содержимою каким-либо классификатором.
Как общий недостаток можно отметить крайне большое количество
таких соответствий, оно составляет (Ы?Ы?), где Ы? и Ы? - число особых
точек на искомом и базовом изображениях соответственно, так, например, при локаизации объекта типа самолет даже на относительно простом изображении получаем порядка 7000000 соответствий.
Отнести каждую из особых точек изображения к отдельному классу затруднительно, однако можно попытаться ввести небольшое количество классов и использовать перебор возможных соответствий лишь для объектов, попавших в один касс. Такой подход может существенно сократить количество вычислительных ресурсов, необходимых для решения задачи по сравнению с подходом, основанным на простом переборе. Описание подобного подхода можно найти, в статье [4].
Так, например, в случае использования в качестве особых точек центров локаьных экстремумов функции яркости, можно отнести к одному кассу минимумы этой функции, а к другому - максимумы.
Решение задачи идентификации личности по фотопортрету остается актуальной на сегодняшний дет. Одной из подзадач данной проблемы является задача локаизации изображения лица на предъявленном, обычно растровом, изображении.
Этой проблеме посвящено достаточно большое количество трудов [1, 2, 5, 7, 9], однако покаатели качества, демонстрируемые существующими алгоритмами, как правило, недостаточно высок. Одной из причин снижения качества можно навать отсутствие учета таких особенностей, как наклон головы, различный рам ер изображения в зависимости от близости человека к видеокамере или другому регистрирующему устройству.
Можно ожидать, что использование для решения этой задачи алгоритмов на основе особых точек [3] может улучшить качество решения за-
дачи в целом. Общий алгоритм локализации на основе особых точек предназначен для поиска любых изображений, вследствие этого при прямом применении он дает невысокие результаты на столь частной задаче. В связи с этим будут рассмотрены модификации этого алгоритма, учитывающие специфику поиска лиц и позволяющие значительно повысить качество распознавания.
Традиционно алгоритмы локаизации лиц используют модель человеческого глаа в качестве объекта поиска. Отметим некоторые возможные варианты изображений, накладывающие существенные ограничения на подобные модели:
маый рамер лица на изображении -может привести к тому, что зрачок будет иметь рамеры, находящиеся на пределе разрешающей способности аппаратуры регистрации изображения, в результате в случае использования традиционного растрового формата изображение зрачка будет иметь рамеры порядка одного пиксел;
неизвестный рамер зрачка - в зависимости от близости человека к регистрирующей аппаратуре рамер зрачка может изменяться в значительном диапаоне;
закрытые глаа - формально на таком изображении вообще нет зрачков, однако для удачного решения задачи локлизации изображения лица в целом, необходимо, чтобы модель описывала как зрачки область, где они находились бы в случае открытых глаз; потенциаьно для этого случа возможно введение некоторой дополнительной модели, описывающей изображение опущенных век, и ее отдельное использование.
В качестве модели, удовлетворяющей вышеперечисленным требованиям, было выбрано описание изображения зрачк как центра локаьно-го минимума функции яркости. Действительно, така модель достаточно проста для того, чтобы можно было реализовать эффективные агоритмы на ее основе, и в то же время достаточно «инвариантна», т.к. почти не зависит от рамер а зрачка. Помимо этого, с помощью нее хоть и с меньшей эффектностью, но все же могут быть описаны ситуации, когда глаа закрыты, т. к. обычно можно обнаружить по крайней мере один четко выраженный минимум на изображении ресниц (рис. 2).
Рис. 2. Центры локальных минимумов функции яркости в случа полуоткрытых и закрытых глаз
Однако простота такой модели является как ее преимуществом, так и ее главным недостатком. На ее основе не удается отличить минимумы, соответствующие зрачкам гла, от других минимумов функции якости изображения, количество которых обычно колеблется в диапаоне от 10 до 100000 в зависимости от рам ера изображения и его зашумленности. Интересный подход, позволяющий уменьшить количество получаемых таким обраом особых точек, представлен в работе [5], описание более сложных моделей глаа можно найти в работе [1].
Фрагмент, поиск которого будет осуществляться, должен не очень сильно изменяться на раных изображениях, потому, например, неудачным выбором будет использование изображения головы человека, т. к. для ра-ных людей может изменяься вид прически, наичие бороды, усов. На ра-ных фотография одного человека может сильно меняться изображение рта, особенно, во время раговора. В связи с этим подходящим объектом для поиска можно назвать изображение глаз и носа человека, т. к. они
имеют не очень большую вариабельность. Как правило, вид этой части лица не очень сильно варьируются ни для раных людей, ни для раных фотографий одного человека.
На стадии предварительных исследований как решение задачи локализации в целом на изображении искася фрагмент, минимально отличающийся от шаблона, полученного путем усреднения изображений лица, вырезанных из 1520 фотографий различных людей. Применение данного подхода дао невысокие результаты, в частности, при тестировании на базе ЫоЮ удаось правильно определить положение лица лишь на 60 % изображений.
Одним из важных преимуществ использования классификатора в задаче локаизации является возможность определения с помощью него количества лиц на изображении. Кроме этого, можно сделать предположение, что использование классификатора должно дать лучшие результаты, чем обычное сравнение с этаоном.
Объект распознавания (после фотометрической нормализации) проецировался в решетку фиксированного размера (12х10). Значения якостей узлов решетки использоваись как числовые признаки. Исходя из свойства симметричности искомого изображения была выдвинута идея о независимой классификации каждой из половинок (относительно вертикаьной оси) искомого изображения, поэтому окончательное пространство признаков имеет рамерность 6 х 10 = 60.
Использование сложных раделяющих поверхностей нежелательно, т. к. решающие правила, построенные с их помощью, требуют больших вычислительных ресурсов при их применении, кроме того, требуется большее количество данных для обучения. В связи с этим, несмотря на линейную нераделимость имеющихся множеств в выбранном пространстве, на настоящий момент использоваась линейна раделяюща гиперплоскость.
Обучающая выборка была сформирована следующим обраом: к бае изображений ЫоЮ была применена процедура, анаогична процеду-
ре локаизации изображения на основе особых точек [3], за тем исключением, что фрагменты, которые должны были подаваться на вход бинарному классификатору, вместо этого записываись в файлы, составляющие обучающую выборку. Класс этих изображений определялся на основе содержащихся в базе ЫоЮ сведений об истинном положении зрачков гла. Таким обраом, была сформирована баа из 1300000 изображений "нелиц" и порядка 3000 изображений лиц. Дополнительно в обучающую выборку было добавлено порядка 1200000 изображений лиц, полученных путем вырезки фрагмента соответствующего изображению лица на основе данных о его положении с применением различных смещений.
Таким образом, полна обучающа выборка составила около 2500000 фрагментов, однако имеющиеся в наичии процедуры обучения имели существенные ограничения на количество объектов, на которых возможно провести обучение за приемлемое время, обычно их количество не превышао 5 - 8 тыс. объектов. В связи с этим для обучения был использован итерационный подход, основанный на особенностях БУМ-классификатора, в частности, на том свойстве, что решающее правило в итоге определяется не всем множеством объектов, а лишь некоторой его частью, так наываемыми опорными векторами. Таким обраом, можно попытаться построить некоторое решающее правило по небольшой случайной подвыборке, а затем, зафиксировав только опорные объекты, добавить к ним очередную случайную порцию данных в надежде, что новые объекты уточнят решающее правило. Схема такой процедуры представлена на рис. 3.
Рис. 3. Итерационная процедура обучения
Можно доказать сходимость данной процедуры для случа разделимых множеств. Однако, как покааи эксперименты, имеющиеся множества не являются линейно разделимыми, тем не менее, с использованием данного подхода удаось добиться удовлетворительного решения задачи.
Заметим, что для общего агоонтма локаизации изображений по особым точкам требуется как минимум 3 точки, однако, эффективно выделять можно лишь 2 точки - центры зрачков. Решить данную проблему, можно откаавшись от поиска аффинного преобраования общего вида и перейдя к его достаточно частной форме, учитывающей лишь поворот, масштабное преобразование (с равным масштабом по обеим осям) и смещение .
Для ускорения процедуры поиска можно воспользоваться еще некоторой априорной информацией, например, если известно, что видеокамера имеет определенное положение и люди стоя либо сддят, то можно предположить, что изображение лица наклонено не слишком сильно, например, не более, чем на ±45°. Также может быть известно, что люди находятся не дальше и не ближе какого-либо расстояния от видеокамеры, тогда размер лица на изображении будет достаточно определенным, в данном случае можно наложить дополнительные ограничения на возможный масштаб изображения (фактически на расстояние меду особыми точками). Также некоторое количество особых точек может быть отсеяно по величине заданного заранее порога.
Рис. 4. Множество фрагментов до и после наложения ограничений на возможный маштаб и наклон головы
Все эти эмпирические предположения позволяют наложить дополнительные ограничения на множество возможных преобразований А, а, следовательно, и сократить количество анализируемых фрагментов изображений, существенно сократив время работы алгоритма (рис. 4).
При тестировании алгоритма локализации была выявлена следующая особенность: при классификации фрагментов, выделенных на изображении, классификатор относил к классу "лицо" около 4 - 30 фрагментов, несмотря на то, что верным был лишь один из них. Данный результат можно объяснить недостаточно высоким качеством классификатора, тем не менее, после сортировки полученных после классификации фрагментов были получены следующие результаты:
- на 91,2 % изображений алгоритм верно указывает область лица, и эта область оказывается на первом месте;
- на 96,5 % изображений область лица оказывается среди четырех «лучших» областей указанных алголтом.
Алгоритмы, использующие понятие особых точек, могут быть применены для решения широкого круга задач, связанных с локализацией изображений. Они могут давать значительно лучшие результаты в случае наличия масштабных преобразований и поворотов изображений по сравнению с алгоритмами, построенными по принципу скользящего окна.
Использование для восстановления соответствий алгоритмов основывающихся на переборе, выгладит наиболее перспективным, однако, лх вычислительная сложность дотаточно велика, тем не менее, как показал
опыт применения данного алгоритма в задаче локализации изображения лица, использование дополнительной эмпирической информации является эффективным путем снижения вычислительной сложности.
Использование для сравнения изображений методов теории распознавания образов позволяет существенно улучшить качество решения задачи локализации по сравнению с использованием обычного сравнения фрагмента с искомым изображением. Здесь направления будущих исследований связаны с изменением вида потенциальной (функции и применением процедр отбора признаков.
Библиографический список
1. Accurate Eye Detection Using Elliptical Separability Filter / Qui Chen [et al.] // Proceding of the Eighth IASTED International Conference. Signal and Image Processing. - Honolulu, Hawaii, USA, August 14-16, 2006. - P. 207-211.
2. Face Detection Algorithm for Video Surveillance Systems / A. Sachenko [et al.] // Pattern Recognition and Information Processing: Proceedings of the Ninth International Conference. Vol. II. - Minsk: United Institute of Informatics Problems of National Academy of Science of Belarus, 2007. - P. 141-145.
3. Krestinin I. A. Peculiar Point Technique For Object Detection in Image Analysis /1. A. Krestinin, O. S. Seredin // 8th International Conference on Pattern recognition and Image analysis: New information technologies. - PRIA-8-2007, Yoshkar-Ola, 2007 - Vol. 2 - P. 110-113.
4. Object detection and localisation using local and global features / K. Murphy [et al.] Lecture Notes in Computer Science. Sicily workshop on object recognition. - 2005.
5. Pupil detection and tracking using multiple light source / C. Morimoto [et al.] // Image and Vision Computing, special issue on Advances in Facial Image Analysis and Recognition Technology. - 2000. - No. 4. - P. 331-335.
6. Ratan A. L. Object detection and localization by dynamic template warping / A. L. Ratan, W. Grimson, W. M. Wells // Int. Journal of Computer Vision. -2000.-Vol. 36.-No. 2.-P. 131-147.
7. Seredin O. Face detection using peculiar point technique / O. S. Seredin, I. A. Krestinin // 8th International Conference on Pattern recognition and Image analysis: New information technologies. - PRIA-8-2007 Yoshkar-Ola - 2007. - Vol. 2. - P. 335-338.
8. Torralba A. Contextual models for object detection using boosted random fields / A. Torralba, K. Murphy, W. Freeman // In Advances in Neural Info. Proc. Systems. -2004.
9. Zhiwei Zhu. Real-Time Eye Detection and Tracking Under Various Light Conditions / Zhiwei Zhu, Kikuo Fujimura, Qiang Ji // ETRA'02 - New Orleans Louisiana, USA - 2002.
Получено 23.04.08