ИДЕНТИФИКАЦИЯ ЧЕЛОВЕКА В ВИДЕО-ПОТОКЕ НА ОСНОВЕ ЗАДАННЫХ ПАРАМЕТРОВ ОСОБЕННОСТИ ЧЕЛОВЕКА
Секция: 3. Информационные технологии
XII Студенческая международная заочная научно-практическая конференция «Молодежный научный форум: технические и математические науки»
ИДЕНТИФИКАЦИЯ ЧЕЛОВЕКА В ВИДЕО-ПОТОКЕ НА ОСНОВЕ ЗАДАННЫХ ПАРАМЕТРОВ ОСОБЕННОСТИ ЧЕЛОВЕКА
С развитием информационных технологий, очень модным стало использование функции идентификации человека в программном обеспечении. Большая часть данного программного обеспечения разработана только для идентификации человека путем поиска в базе данных. Мы, в свою очередь, предлагаем программу идентификации человека в видео-потоке по определенным классификационным параметрам. В данной работе используются три классификационных параметра: пол, возрастная категория и расовая группа.
Введение.
Идентификация людей — одна из главных целей компьютерного зрения. Человека можно идентифицировать с помощью таких параметров, как походка, лицо, отпечатки пальцев и радужная оболочка. В нашей работе мы использовали технологию распознавания лиц, так как цель проекта заключается в разработке системы идентификации человека по классификационным параметрам. Люди могут быть разделены на группы, по возрастной категории, полу и расе, лишь основываясь на черты лица. Некоторые примеры данной классификации приведены в табл. 1.
Таблица 1.
Пример классификации возрастной, гендерной и расовой груп
Лица |
|
|
|
|
|
|
|
Воз- |
0 - 2 |
3 - 7 |
8 - 12 |
13 – 19 |
20 - 36 |
37 - 65 |
66+ |
Пол |
М |
М |
Ж |
Ж |
Ж |
М |
Ж |
Расовая группа |
Европеоид |
Европеоид |
Европеоид |
Монголоид |
Монголоид |
Негроид |
Европеоид |
Сегодня в это современное время существует проблема с контролем наших детей. Нам нужно программное обеспечение, которое будет контролировать доступ детей к интернет-сайтам, предназначенных для лиц старше 18 лет. Нам нужно программное обеспечение в торговых автоматах, которые не будут продавать детям такой товар, как сигареты, алкоголь и т. п. Это социальная проблема людей во всем мире и только программное обеспечение с оценкой возраста может решить ее.
Такого рода программное обеспечение может быть также использовано для получения статистических данных. Например, с помощью демографической информации о клиентах можно получить статистические данные для маркетинга, такие как, сколько клиентов посетило торговый центр; сколько мужчин и женщин; сколько детей, подростков, взрослых и пожилых людей; сколько азиатов, европейцев, и т. д.
В настоящее время большинство организаций нуждается в программном обеспечении с возможностью поиска человека в видео-потоке по заданным классификационным параметрам, ка возраст, пол и раса. Такое программное обеспечение может использоваться в контрольно-пропускных пунктах аэропортов и банков. Например, оно может быть использовано для проверки определенного человека в черном списке клиентов.
Связанные работы.
На сегодняшний день существует много алгоритмов распознавания лиц [12; 2]. Но все они чувствительны к большим изменениям в освещенности и мимике лица. Принимая эти недостатки во внимание Бельхумеур П.Н., Хеспанна Д.П., и Крегман Д.Д. разработали алгоритм распознавания лиц, который нечувствителен для такого типа вариаций [3]. Данный алгоритм основан на двух методах, Fisherfaces (лица Фишера) и Eigenfaces (собственные лица). Метод Fisherfaces является производным от линейного дискриминанта Фишера (Fisher’s Linear Discriminant) [13], минимизирует внутриклассовое и максимизирует межклассовое расстояние в пространстве признаков. Метод Eigenfaces также основан на линейном проектировании пространства изображения в более низкое пространство признаков [9; 10; 11].
Классификация.
Первым этапом в работе была классификация человека в гендерной, расовой и возрастной группе, используя алгоритмы распознавания лиц, поэтому выбор пал на метод Fisherfaces. Метод Eigenfaces основан на методе главных компонент (Principal Component Analysis, PCA), который является бесконтрольной статистической моделью, тем самым не совсем подходит для данной задачи. В свою очередь метод Fisherfaces дает определенную классовую линейную проекцию, что говорит о том, что он гораздо лучше подходит для возрастной, расовой и гендерной классификации [4]. По экспериментам Вагнера П. [7], мы можем видеть, что метод Fisherfaces достигает скорости распознавания 98 % в предметно-независимой перекрестной проверке (subject independent cross-validation). Предметно-независимая перекрестная проверка это образы человека не использованные при обучении модели распознавания.
Метод Fisherfaces уже реализован в OpenCV. OpenCV (Open Source Computer Vision Library) это библиотека алгоритмов компьютерного зрения, обработки изображений и машинного обучения с открытым исходным кодом. Для того чтобы система классифицировала людей по возрастной, расовой и гендерной группам, необходимо обучить классификаторы модели распознавания Fisherfaces в OpenCV. Для обучения данных классификаторов необходим набор изображений разных людей.
База данных изображений лица разных людей.
Перед тем как обучить классификатор был выбор, создать свой собственный набор данных изображений лиц или же использовать уже имеющиеся базы данных изображений лиц. Выбрал пал на уже имеющиеся базы данных, так как это существенно экономит время и как говорится, зачем изобретать велосипед. Существует много баз данных изображений лица разных людей, такие как AT&T Facedatabase [8] , Yale Facedatabase A [5], Extended Yale Facedatabase B [6] и т. д. Выбор пал на базу данных The Images of Groups Dataset, созданную Галахер А. и Чэнь Т., так как данная база данных ориентирована под классификацию возрастной и гендерной групп [1]. Ими была собрана коллекция изображений людей из интернет-сайта Flickr. Они разделили фотографии на 3 группы: семейные, групповые и свадебные. Лицо каждого человека на фотографиях было обозначено по полу и возрастной категории. Они использовали семь возрастных категорий: 0—2, 3—7, 8—12, 13—19, 20—36, 37—65, и 66+, примерно соответствующие различным стадиям жизни. Для гендерной маркировки они использовали цифру 1 для женского и 2 для мужского пола. В общей сложности получилось 5080 изображений, содержащих 28 231 человеческих лица, помеченных возрастной категорией и полом; это самая большая база данных изображений лиц в своем роде. Данная база данных содержит большое количество разнообразных изображений. На изображениях люди сидят, лежат или стоят на повышенных поверхностях. Также часто встречаются люди в темных очках, с закрытыми лицами и с необычными выражениями лица. База данных распространяется в некоммерческих целях, только в рамках исследовательских работ.
С использованием данных изображений наши гендерные, расовые и возрастные классификаторы были обучены. Все изображения были собраны в одну папку. Так как, там только групповые фотографии, лицо каждого из людей было обрезано в отдельное изображение размером 70x70. Для маркировки было использовано семь возрастных категорий, как в оригинале, и цифра 0 для мужского и 1 для женского пола. Было разработано специальное приложение, с использованием OpenCV, для обучения классификаторов. Чтобы обучить один классификатор на пользовательском ПК, требуется уйма времени. Таким образом, в качестве эксперимента было взято 1500 изображений лиц человека. Приложение для обучения классификаторов в результате создает XML-файл для каждого из классификаторов.
Рисунок 1. Главное окно приложения
Обзор системы.
Программное обеспечение разработано с помощью OpenCV библиотек и QT инструментария. QT это кроссплатформенный инструментарий разработки ПО на языке программирования С++. OpenCV использовалось для построения логики, а QTдля создания пользовательского интерфейса. Программное обеспечение разработано в качестве настольного приложения (Рис. 1).
Рисунок 2. Последовательность операций
Приложение имеет 5 основных последовательных операций (Рис. 2). На входе приложение получает видео-поток из файла или через локально соединенную камеру. Поиск приложения весьма функционален, что позволяет искать людей на видео по трем параметрам: возрастная категория, пол и раса. В качестве выбора пользователю предоставляется 7 возрастных категорий: 0—2, 3—7, 8—12, 13—19, 20—36, 37—65, and 66+; мужской и женский пол; и 3 основные расы: монголоидная, европеоидная и негроидная. По умолчанию система ищет человека по первому совпадению, т.е. если в видео много людей, то система покажет лишь одного из них, а именно первого нашедшегося. Но также имеется возможность настройки данной опции на поиск всех людей удовлетворяющих заданным параметрам поиска. Процесс поиска не прерывается до тех пор, пока не найдется требуемый человек. Также можно настроить на поиск человека только в данный момент видео. Поиск осуществляется по комбинации Age OR Gender OR Race, т. е. процесс поиска завершается, если любой из заданных параметров соответствует. В приложении предоставляется возможность настройки комбинации поиска для пользователя. В качестве результата мы получаем окно приложения с изображением человека, помеченного прямоугольником вокруг лица (Рис. 3), в противном случае мы получим сообщение о неудаче.
Рисунок 3. Результат поиска
Заключение.
Основное внимание было уделено разработке настольного приложения, с функцией поиска людей в видео-потоке, в соответствии с заданными параметрами поиска. Данное программное обеспечение является основой и началом одной большой системы безопасности. Проделанная работа выступает в качестве демонстрации новых возможностей, которые можно использовать в программном обеспечении систем безопасности. В целом приложение работает хорошо, но имеет низкую способность распознавания, так как в ходе обучения классификаторов было использовано всего лишь 1500 изображений лиц людей. В будущем данная проблема будет решена, также предусматривается добавление новых функций.
Список литературы:
1. A. Gallagher, T. Chen, “Understanding Groups of Images of People,” IEEE Conference on Computer Vision and Pattern Recognition, 2009.
2. A. Samal and P. Iyengar, “Automatic Recognition and Analysis of Human Faces and Facial Expressions: A Survey,” Pattern Recognition, vol. 25, Р. 65—77, 1992.
3. Belhumeur P.N., Hespanha J., and Kriegman D. Eigenfaces vs. Fisherfaces: Recognition Using Class Specific Linear Projection. IEEE Transactions on Pattern Analysis and Machine Intelligence 19, 7 (1997), 711—720.
4. http://docs.opencv.org/trunk/modules/contrib/doc/facerec/tutorial/facerec_gender_classification.html.
5. http://vision.ucsd.edu/content/yale-face-database.
6. http://vision.ucsd.edu/~leekc/ExtYaleDatabase/ExtYaleB.html.
7. http://www.bytefish.de/blog/gender_classification.
8. http://www.cl.cam.ac.uk/research/dtg/attarchive/facedatabase.html.
9. L. Sirovitch and M. Kirby, “Low-Dimensional Procedure for the Characterization of Human Faces,” J. Optical Soc. of Am. A, vol. 2, Р. 519—524, 1987.