Распознавание лиц: как это работает и что с ним будет дальше? Биометрическая идентификация в интегрированных системах безопасности Алгоритм автоматического определения органов на лице

Открыл новую эпоху. Технология распознавания лиц - основная его «фишка». И никто не сомневается в том, что такой способ разблокировки будет внедряться и во многие другие смартфоны.

Ещё в 1960-ых годах проводились специальные опыты, в ходе которых компьютер должен был научиться распознавать лицо человека. Тогда это ни к чему не привело, так как любая эмоция приводила к сбою. Также изобретенная система боялась изменения условий освещения.

Лишь в самом конце XX века появились системы, которые научились определять лица людей по фотографиям, запоминая их. При этом они перестали сбоить при появлении усов, бороды, очков и прочих «помех». Активнее всего подобные системы начали внедряться в цифровые фотоаппараты. Также они нашли себе место в охранном секторе.

У систем распознавания лиц долгое время был один существенный недостаток. Они сильно зависели от освещения и ракурса. Впрочем, в охранных сканерах эта проблема не была заметна. К ним лицо прикладывалось почти вплотную, освещаясь затем лампами. Избавиться же от вышеупомянутого недостатка помогло внедрение стереосъемки. Две камеры понимают глубину сцены, в связи с чем точность показаний вырастает в несколько раз.

Как работает технология распознавания лиц?

Постепенно новая функция начала появляться в смартфонах. Здесь биометрическая идентификация пользователя внедряется для того, чтобы разблокировать устройство не мог посторонний человек. В идеале получить доступ к персональной информации может только близнец. Переживать по этому поводу не стоит. Вряд ли кто-то будет всерьез скрывать что-то от родного брата или сестры. Да и никто не мешает установить для чтения каких-то особо секретных данных дополнительный пароль.

Работу системы распознавания лиц в смартфонах можно условно разделить на четыре этапа:

  1. Сканирование лица. Оно осуществляется при помощи фронтальной камеры или, как в случае с iPhone X, специального сенсора. Сканирование является трехмерным, поэтому фокус с показом фотографии срабатывать не будет.
  2. Извлечение уникальных данных. Система ориентируется на набор особенностей сканируемого лица. Чаще всего это контуры глазниц, форма скул и ширина носа. В продвинутых системах также могут «замечаться» шрамы.
  3. Извлечение из памяти шаблона с ранее полученными данными.
  4. Поиск соответствий. Финальный этап, на котором система решает, разблокировать ли дисплей. Мощности современных процессоров позволяют тратить на «размышление» всего доли секунды.

Функция распознавания лиц может быть реализована даже при помощи фронтальной камеры - лишь бы она имела два объектива. Однако в таком случае работа данной функции окажется нестабильной. Дело в том, что лишь специальные датчики обеспечат сканирование лица даже в темноте, тогда как «фронталке» требуется яркое освещение. Также особые датчики виртуально выводят на лицо большее количество точек, поэтому они срабатывают даже при появлении бороды, очков и других помех. Словом, в каком-нибудь DOOGEE Mix 2 система точно будет работать заметно хуже, чем в iPhone X. Другое дело - юбилейный продукт Apple стоит гораздо дороже, чем все остальные смартфоны с функцией распознавания лица.

За технологией будущее?

Нужные для сканирования лица датчики требуют идеальной установки. Сдвиг на сотые доли миллиметра приведет к тому, что работа функции перестанет быть идеальной - поэтому при производстве смартфона может наблюдаться повышенный выход брака, а это приводит к росту его стоимости. Да и сами датчики стоят весьма дорого, неспроста их использует только компания Apple, хотя никаких патентов на них у неё нет.

Одним словом, пока функцию распознавания лиц производители «андроидов» будут реализовывать посредством фронтальной камеры. Уже сейчас её можно встретить в Samsung Galaxy S8 и Note 8. Но владельцы этих устройств подтвердят вам, что работает она не лучшим образом - легче использовать сканер отпечатков пальцев . Поэтому пока о будущем функции ничего сказать нельзя. Нужно ждать, будет ли Apple внедрять соответствующие датчики в более доступные смартфоны, а также появятся ли они в устройствах на базе Android.

Заключение

Переживать по поводу сохранения ваших идентификационных данных не стоит. Созданный при сканировании лица шаблон находится в отдельном разделе памяти - чтение этого сектора компьютером или сторонними программами невозможно. Впрочем, это касается и отпечатков пальцев. А каким видом идентификации пользоваться удобнее - это выбирать только вам.

Держали ли вы когда-нибудь в руках смартфон, умеющий распознавать лицо? И ждете ли вы массового внедрения данной функции? Поделитесь своим мнением в комментариях, мы будем этому рады!

Биометрическую систему распознавания лиц планируется включить в стандарт «смарт-сити» для российских городов, который начал разрабатывать Минстрой. Об этом рассказал «Известиям» замглавы ведомства Андрей Чибис. Он отметил, что такую технологию было бы удобно использовать в общественном транспорте: пассажир заходит в автобус, программа его узнает и списывает за проезд деньги с банковского счета. Министерство намерено ознакомиться с опытом китайских городов и распространить подобные технологии в России.

Министерство планирует привлечь китайские компании, в том числе Huawei, к внедрению совместно с «Ростелекомом» технологии биометрии и анализа событий в российских городах. Об этом сообщил «Известиям» заместитель министра строительства и ЖКХ Андрей Чибис. По его словам, в случае успеха эта система ляжет в основу стандарта «смарт-сити» - минимального набора решений для повышения комфортности городов. К разработке стандарта ведомство уже приступило.

Представители министерства планируют посетить Китай, чтобы оценить, как современные технологии, включая биометрию, работают там.

Насколько я знаю, сейчас идет дискуссия по поводу внедрения такой технологии в Москве. Очевидно, что из-за необходимости использовать карточки, время посадки пассажиров затягивается. А алгоритм распознавания лиц работает так: пассажир заходит в метро или автобус, программа его распознает и списывает за проезд деньги с банковского счета, - привел пример Андрей Чибис.

Во многих городах уже установлено значительное количество камер, то есть инфраструктура в целом создана, подчеркнул чиновник. Вопрос в нормативном регулировании и реализации пилотных проектов - в случае их успеха дальнейший процесс будет стремителен: «как в свое время быстро ушли от жетонов в метро, так можем уйти и от турникетов».

В пресс-службе «Ростелекома» отметили, что идентификация пассажиров в городском транспорте, в том числе для оплаты проезда, - это одна из самых очевидных возможностей использования системы.

В мире есть реальные примеры, и в России создание такого рода решений ожидается уже в скором времени, - подтвердили «Известиям» в компании.

Проект «Умный город», в рамках которого планируется развивать новую технологию, рассчитан на шесть лет. По словам Андрея Чибиса, никто не говорит, что в течение этого срока везде обязательно появится система распознавания лиц, но нужно двигаться в этом направлении. «Это же не только вопрос безопасности, но и комфорта. Мы изучим эту технологию и в ближайшее время определимся с возможностью внедрения - конечно, в первую очередь, с точки зрения ее стоимости», - указал он.

Генеральный директор компании VisionLabs, специализирующейся на компьютерном зрении, Александр Ханин отмечает, что процесс установки камер и серверов технически несложный, поэтому в ближайшем будущем подобные системы могут быть внедрены повсеместно. Их можно использовать в том числе для поиска пропавших, считает он. Стоимость подключения к каждой камере зависит от сценария использования и типа камеры: от 200 рублей до нескольких тысяч.

Заведующий кафедрой телекоммуникационных систем Московского института электронной техники Александр Бахтин отметил, что сети городов готовы к передаче таких данных. Однако на начальном этапе внедрения новых технологий всегда есть риск нарушения конфиденциальности. Существует достаточно много точек, в которых сведения могут быть перехвачены. Но после тестовых испытаний система выстраивается и эффективно работает.

Томограф в поликлинике генерирует гораздо больше информации, чем видеопоток из какого-нибудь автобуса. Вопрос в том, кто ее анализирует и в каких целях. Хотелось бы, чтобы законодательство защищало нас от тех сотрудников, которые используют персональные данные неправомочно, - сказал «Известиям» Александр Бахтин.

В «Ростелекоме» признают, что оборот таких данных - очень чувствительная тема, поэтому, как и в других странах, в России единая биометрическая система создается под контролем государства. На первом этапе в сотрудничестве с Центробанком она внедряется в интересах банковской сферы. Уже проводились эксперименты по распознаванию лиц для бесконтактного прохода в музеи, и в дальнейшем система будет развиваться, уверены в компании.

В сентябре 2017 года о внедрении системы видеонаблюдения с функцией распознавания лиц объявили власти Москвы. Сообщалось, что столичная сеть включает в себя 160 тыс. видеокамер и охватывает 95% подъездов жилых домов. Лица на записях сканируются, чтобы при необходимости можно было сравнить данные с информацией в различных базах - например, правоохранительных органов, когда речь идет о поиске правонарушителя, указано на портале мэра Москвы. Система способна установить личность человека на видео, его пол и возраст.

Госкорпорация «Ростех» применила технологию распознавания лиц во время ЧМ-2018. С ее помощью, например, удалось вычислить фаната, которому по решению суда запрещено посещать спортивные мероприятия. Алгоритм позволяет узнавать лица с точностью до 99%. В госкорпорации отмечали, что поиск конкретного человека среди миллиарда лиц занимает менее полусекунды.

Далее под распознаванием лиц будем понимать этапы, идущие после выделения лица и его нормализации, а именно извлечение признаков и сравнение с эталоном. Приведем основные известные методы, которые применяются для решения этих двух задач.

Методы извлечения признаков можно разделить на две группы. Это методы, использующие локальные признаки и глобальные признаки лица. При использовании локальных признаков, алгоритм выделяет отдельные части лица (такие как глаза, нос, рот и др.) и уже по ним выделяет или распознает лицо. При использовании же глобальных признаков, алгоритм оперирует со всем лицом в целом.

К методам, работающим с локальными признаками, относятся:

    фильтры Габора;

    метод сравнения эластичных графов;

    контурные модели лица;

    метод наиболее информативных областей;

    скрытые марковские модели;

    морфинговые модели;

  • методы, основанные на геометрических характеристиках лица;

    методы, основанные на сравнении эталонов;

    нейронные сети.

Методами, использующими глобальные признаки, являются:

    дискриминантные методы;

  • фильтры Габора;

    нейронные сети.

Как видно, одни и те же методы могут использоваться как для выделения локальных признаков лица, так и для выделения глобальных признаков:

    фильтры Габора;

  • нейронные сети.

Все классификаторы можно разбить на следующие группы:

    статистические методы, строящиеся на базе принципов математической статистики;

    методы, основанные на построении разделяющих гиперповерхностей;

    методы, основанные на принципе потенциалов;

    методы, основанные на определении экземпляров;

    методы, разработанные на основании изучения биологических нейронных сетей.

Количество существующих методов выделения признаков и их классификации безгранично. Далее рассмотрим лишь наиболее известные из них методы.

3.4.2. Методы, основывающиеся на анализе локальных признаков

Все методы данной группы, так или иначе, локализуют характерные участки лица и уже на основании них реализуют свой алгоритм.

Контурные (эластичные) модели лица (Flexible Appearance Models)

Некоторые методы решения задачи распознавания лиц используют понятия «эластичных моделей лица» (Flexible model), которые в свою очередь являются объектами, реконструированными на основе главных компонент. В данных методах распознавание производится на основе сравнения контуров лица. Контуры обычно извлекаются для линий головы, ушей, губ, носа, бровей и глаз. Контуры представлены ключевыми позициями, между которыми положение точек, принадлежащих контуру, вычисляются интерполированием. Для локализации контуров в различных методах используется как априорная информация, так и информация, полученная в результате анализа тренировочного набора.

В работе ключевые точки, соответствующие контурам, размещались вручную на наборе тренировочных изображений. Эти наборы точек – первоначальные признаки – представляют собой исходные модели формы лица (МФЛ). Далее эти признаки редуцируются по методу главных компонент и на их основе формируется усредненная МФЛ. При этом создается возможность изменения формы модели лица и, соответственно, создания эластичной модели формы лица (ЭМФЛ) за счет изменения параметров в пространстве редуцированных признаков. В процессе распознавания ЭМФЛ как бы «натягивается» на распознаваемый образ лица, а полученные при этом новые параметры формы модели являются ключом для классификации распознаваемого образа.

Для поиска контуров на лице предлагается использовать алгоритм Active Shape Models. Главной задачей при распознавании по контурам является правильное выделение этих контуров. В общем виде эта задача по сложности сравнима непосредственно с распознаванием изображений. Кроме того, использование этого метода самого по себе для задачи распознавания недостаточно.

Рис. Расположение точек на лице из обучающей выборки

Рис. Влияние главных компонент на форму лица

blackcat87 25 сентября 2014 в 17:05

Анализ существующих подходов к распознаванию лиц

  • Блог компании Синезис ,
  • Работа с видео

С завидной регулярностью на Хабре появляются статьи, рассказывающие о тех или иных методах распознавания лиц. Мы решили не просто поддержать эту замечательную тему, но выложить наш внутренний документ, который освещает пусть и не все, но многие подходы к распознаванию лиц, их сильные и слабые места. Он был составлен Андреем Гусаком, нашим инженером, для молодых сотрудников отдела машинного зрения, в образовательных, так сказать, целях. Сегодня предлагаем его все желающим. В конце статьи – впечатляющих размеров список литературы для самых любознательных.

Итак, начнем.
Несмотря на большое разнообразие представленных алгоритмов, можно выделить общую структуру процесса распознавания лиц:

Общий процесс обработки изображения лица при распознавании

На первом этапе производится детектирование и локализация лица на изображении. На этапе распознавания производится выравнивание изображения лица (геометрическое и яркостное), вычисление признаков и непосредственно распознавание – сравнение вычисленных признаков с заложенными в базу данных эталонами. Основным отличием всех представленных алгоритмов будет вычисление признаков и сравнение их совокупностей между собой.

1. Метод гибкого сравнения на графах (Elastic graph matching) .

Суть метода сводится к эластичному сопоставлению графов, описывающих изображения лиц. Лица представлены в виде графов со взвешенными вершинами и ребрами. На этапе распознавания один из графов – эталонный – остается неизменным, в то время как другой деформируется с целью наилучшей подгонки к первому. В подобных системах распознавания графы могут представлять собой как прямоугольную решетку, так и структуру, образованную характерными (антропометрическими) точками лица.

А)

Б)

Пример структуры графа для распознавания лиц: а) регулярная решетка б) граф на основе антропометрических точек лица.

В вершинах графа вычисляются значения признаков, чаще всего используют комплексные значения фильтров Габора или их упорядоченных наборов – Габоровских вейвлет (строи Габора), которые вычисляются в некоторой локальной области вершины графа локально путем свертки значений яркости пикселей с фильтрами Габора.


Набор (банк, jet) фильтров Габора


Пример свертки изображения лица с двумя фильтрами Габора

Ребра графа взвешиваются расстояниями между смежными вершинами. Различие (расстояние, дискриминационная характеристика) между двумя графами вычисляется при помощи некоторой ценовой функции деформации, учитывающей как различие между значениями признаков, вычисленными в вершинах, так и степень деформации ребер графа.
Деформация графа происходит путем смещения каждой из его вершин на некоторое расстояние в определённых направлениях относительно ее исходного местоположения и выбора такой ее позиции, при которой разница между значениями признаков (откликов фильтров Габора) в вершине деформируемого графа и соответствующей ей вершине эталонного графа будет минимальной. Данная операция выполняется поочередно для всех вершин графа до тех пор, пока не будет достигнуто наименьшее суммарное различие между признаками деформируемого и эталонного графов. Значение ценовой функции деформации при таком положении деформируемого графа и будет являться мерой различия между входным изображением лица и эталонным графом. Данная «релаксационная» процедура деформации должна выполняться для всех эталонных лиц, заложенных в базу данных системы. Результат распознавания системы – эталон с наилучшим значением ценовой функции деформации.


Пример деформации графа в виде регулярной решетки

В отдельных публикациях указывается 95-97%-ая эффективность распознавания даже при наличии различных эмоциональных выражениях и изменении ракурса лица до 15 градусов. Однако разработчики систем эластичного сравнения на графах ссылаются на высокую вычислительную стоимость данного подхода. Например, для сравнения входного изображения лица с 87 эталонными тратилось приблизительно 25 секунд при работе на параллельной ЭВМ с 23 транспьютерами (Примечание: публикация датирована 1993 годом). В других публикациях по данной тематике время либо не указывается, либо говорится, что оно велико.

Недостатки: высокая вычислительная сложность процедуры распознавания. Низкая технологичность при запоминании новых эталонов. Линейная зависимость времени работы от размера базы данных лиц.

2. Нейронные сети

В настоящее время существует около десятка разновидности нейронных сетей (НС). Одним из самых широко используемых вариантов являться сеть, построенная на многослойном перцептроне, которая позволяет классифицировать поданное на вход изображение/сигнал в соответствии с предварительной настройкой/обучением сети.
Обучаются нейронные сети на наборе обучающих примеров. Суть обучения сводится к настройке весов межнейронных связей в процессе решения оптимизационной задачи методом градиентного спуска. В процессе обучения НС происходит автоматическое извлечение ключевых признаков, определение их важности и построение взаимосвязей между ними. Предполагается, что обученная НС сможет применить опыт, полученный в процессе обучения, на неизвестные образы за счет обобщающих способностей.
Наилучшие результаты в области распознавания лиц (по результатам анализа публикаций) показала Convolutional Neural Network или сверточная нейронная сеть (далее – СНС) , которая является логическим развитием идей таких архитектур НС как когнитрона и неокогнитрона. Успех обусловлен возможностью учета двумерной топологии изображения, в отличие от многослойного перцептрона.
Отличительными особенностями СНС являются локальные рецепторные поля (обеспечивают локальную двумерную связность нейронов), общие веса (обеспечивают детектирование некоторых черт в любом месте изображения) и иерархическая организация с пространственными сэмплингом (spatial subsampling). Благодаря этим нововведениям СНС обеспечивает частичную устойчивость к изменениям масштаба, смещениям, поворотам, смене ракурса и прочим искажениям.


Схематичное изображение архитектуры сверточной нейронной сети

Тестирование СНС на базе данных ORL, содержащей изображения лиц с небольшими изменениями освещения, масштаба, пространственных поворотов, положения и различными эмоциями, показало 96% точность распознавания.
Свое развитие СНС получили в разработке DeepFace , которую приобрел
Facebook для распознавания лиц пользователей своей соцсети. Все особенности архитектуры носят закрытый характер.


Принцип работы DeepFace

Недостатки нейронных сетей: добавление нового эталонного лица в базу данных требует полного переобучения сети на всем имеющемся наборе (достаточно длительная процедура, в зависимости от размера выборки от 1 часа до нескольких дней). Проблемы математического характера, связанные с обучением: попадание в локальный оптимум, выбор оптимального шага оптимизации, переобучение и т. д. Трудно формализуемый этап выбора архитектуры сети (количество нейронов, слоев, характер связей). Обобщая все вышесказанное, можно заключить, что НС – «черный ящик» с трудно интерпретируемыми результатами работы.

3. Скрытые Марковские модели (СММ, HMM)

Одним из статистических методов распознавания лиц являются скрытые Марковские модели (СММ) с дискретным временем . СММ используют статистические свойства сигналов и учитывают непосредственно их пространственные характеристики. Элементами модели являются: множество скрытых состояний, множество наблюдаемых состояний, матрица переходных вероятностей, начальная вероятность состояний. Каждому соответствует своя Марковская модель. При распознавании объекта проверяются сгенерированные для заданной базы объектов Марковские модели и ищется максимальная из наблюдаемых вероятность того, что последовательность наблюдений для данного объекта сгенерирована соответствующей моделью.
На сегодняшний день не удалось найти примера коммерческого применения СММ для распознавания лиц.

Недостатки:
- необходимо подбирать параметры модели для каждой базы данных;
- СММ не обладает различающей способностью, то есть алгоритм обучения только максимизирует отклик каждого изображения на свою модель, но не минимизирует отклик на другие модели.

4. Метод главных компонент или principal component analysis (PCA)

Одним из наиболее известных и проработанных является метод главных компонент (principal component analysis, PCA), основанный на преобразовании Карунена-Лоева.
Первоначально метод главных компонент начал применяться в статистике для снижения пространства признаков без существенной потери информации. В задаче распознавания лиц его применяют главным образом для представления изображения лица вектором малой размерности (главных компонент), который сравнивается затем с эталонными векторами, заложенными в базу данных.
Главной целью метода главных компонент является значительное уменьшение размерности пространства признаков таким образом, чтобы оно как можно лучше описывало «типичные» образы, принадлежащие множеству лиц. Используя этот метод можно выявить различные изменчивости в обучающей выборке изображений лиц и описать эту изменчивость в базисе нескольких ортогональных векторов, которые называются собственными (eigenface).

Полученный один раз на обучающей выборке изображений лиц набор собственных векторов используется для кодирования всех остальных изображений лиц, которые представляются взвешенной комбинацией этих собственных векторов. Используя ограниченное количество собственных векторов можно получить сжатую аппроксимацию входному изображению лица, которую затем можно хранить в базе данных в виде вектора коэффициентов, служащего одновременно ключом поиска в базе данных лиц.

Суть метода главных компонент сводится к следующему. Вначале весь обучающий набор лиц преобразуется в одну общую матрицу данных, где каждая строка представляет собой один экземпляр изображения лица, разложенного в строку. Все лица обучающего набора должны быть приведены к одному размеру и с нормированными гистограммами.


Преобразования обучающего набора лиц в одну общую матрицу X

Затем производится нормировка данных и приведение строк к 0-му среднему и 1-й дисперсии, вычисляется матрица ковариации. Для полученной матрицы ковариации решается задача определения собственных значений и соответствующих им собственных векторов (собственные лица). Далее производится сортировка собственных векторов в порядке убывания собственных значений и оставляют только первые k векторов по правилу:




Алгоритм РСА


Пример первых десяти собственных векторов (собственных лиц), полученных на обучаемом наборе лиц

= 0.956*-1.842*+0.046

Пример построения (синтеза) человеческого лица с помощью комбинации собственных лиц и главных компонент


Принцип выбора базиса из первых лучших собственных векторов


Пример отображения лица в трехмерное метрическое пространство, полученном по трем собственным лицам и дальнейшее распознавание

Метод главных компонент хорошо зарекомендовал себя в практических приложениях. Однако, в тех случаях, когда на изображении лица присутствуют значительные изменения в освещенности или выражении лица, эффективность метода значительно падает. Все дело в том, что PCA выбирает подпространство с такой целью, чтобы максимально аппроксимировать входной набор данных, а не выполнить дискриминацию между классами лиц.

В было предложено решение этой проблемы с использование линейного дискриминанта Фишера (в литературе встречается название “Eigen-Fisher”, “Fisherface”, LDA). LDA выбирает линейное подпространство, которое максимизирует отношение:

Где

Матрица межклассового разброса, и

Матрица внутриклассового разброса; m – число классов в базе данных.

LDA ищет проекцию данных, при которой классы являются максимально линейно сепарабельны (см. рисунок ниже). Для сравнения PCA ищет такую проекцию данных, при которой будет максимизирован разброс по всей базе данных лиц (без учета классов). По результатам экспериментов в условиях сильного бакового и нижнего затенения изображений лиц Fisherface показал 95% эффективность по сравнению с 53% Eigenface.


Принципиальное отличие формирования проекций PCA и LDA

Отличие PCA от LDA

5. Active Appearance Models (AAM) и Active Shape Models (ASM) ()
Active Appearance Models (AAM)
Активные модели внешнего вида (Active Appearance Models, AAM) - это статистические модели изображений, которые путем разного рода деформаций могут быть подогнаны под реальное изображение. Данный тип моделей в двумерном варианте был предложен Тимом Кутсом и Крисом Тейлором в 1998 году . Первоначально активные модели внешнего вида применялись для оценки параметров изображений лиц.
Активная модель внешнего вида содержит два типа параметров: параметры, связанные с формой (параметры формы), и параметры, связанные со статистической моделью пикселей изображения или текстурой (параметры внешнего вида). Перед использованием модель должна быть обучена на множестве заранее размеченных изображений. Разметка изображений производится вручную. Каждая метка имеет свой номер и определяет характерную точку, которую должна будет находить модель во время адаптации к новому изображению.


Пример разметки изображения лица из 68 точек, образующих форму AAM.

Процедура обучения AAM начинается с нормализации форм на размеченных изображениях с целью компенсации различий в масштабе, наклоне и смещении. Для этого используется так называемый обобщенный Прокрустов анализ.


Координаты точек формы лица до и после нормализации

Из всего множества нормированных точек затем выделяются главные компоненты с использованием метода PCA.


Модель формы AAM состоит из триангуляционной решетки s0 и линейной комбинации смещений si относительно s0

Далее из пикселей внутри треугольников, образуемых точками формы, формируется матрица, такая что, каждый ее столбец содержит значения пикселей соответствующей текстуры. Стоит отметить, что используемые для обучения текстуры могут быть как одноканальными (градации серого), так и многоканальными (например, пространство цветов RGB или другое). В случае многоканальных текстур векторы пикселов формируются отдельно по каждому из каналов, а потом выполняется их конкатенация. После нахождения главных компонент матрицы текстур модель AAM считается обученной.

Модель внешнего вида AAM состоит из базового вида A0, определенного пикселями внутри базовой решетки s0 и линейной комбинации смещений Ai относительно A0

Пример конкретизации AAM. Вектор параметров формы
p=(p_1,p_2,〖…,p〗_m)^T=(-54,10,-9.1,…)^T используется для синтеза модели формы s, а вектор параметров λ=(λ_1,λ_2,〖…,λ〗_m)^T=(3559,351,-256,…)^Tдля синтеза внешнего вида модели. Итоговая модель лица 〖M(W(x;p))〗^ получается как комбинация двух моделей – формы и внешнего вида.

Подгонка модели под конкретное изображение лица выполняется в процессе решения оптимизационной задачи, суть которой сводится к минимизации функционала

Методом градиентного спуска. Найденные при этом параметры модели и будут отражать положение модели на конкретном изображении.




Пример подгонки модели на конкретное изображение за 20 итераций процедуры градиентного спуска.

С помощью AAM можно моделировать изображения объектов, подверженных как жесткой, так и нежесткой деформации. ААМ состоит из набора параметров, часть которых представляют форму лица, остальные задают его текстуру. Под деформации обычно понимают геометрическое преобразование в виде композиции переноса, поворота и масштабирования. При решении задачи локализации лица на изображении выполняется поиск параметров (расположение, форма, текстура) ААМ, которые представляют синтезируемое изображение, наиболее близкое к наблюдаемому. По степени близости AAM подгоняемому изображению принимается решение – есть лицо или нет.

Active Shape Models (ASM)

Суть метода ASM заключается в учете статистических связей между расположением антропометрических точек. На имеющейся выборке изображений лиц, снятых в анфас. На изображении эксперт размечает расположение антропометрических точек. На каждом изображении точки пронумерованы в одинаковом порядке.




Пример представления формы лица с использованием 68 точек

Для того чтобы привести координаты на всех изображениях к единой системе обычно выполняется т.н. обобщенный прокрустов анализ, в результате которого все точки приводятся к одному масштабу и центрируются. Далее для всего набора образов вычисляется средняя форма и матрица ковариации. На основе матрицы ковариации вычисляются собственные вектора, которые затем сортируются в порядке убывания соответствующих им собственных значений. Модель ASM определяется матрицей Φ и вектором средней формы s ̅.
Тогда любая форма может быть описана с помощью модели и параметров:

Локализации ASM модели на новом, не входящем в обучающую выборку изображении осуществляется в процессе решения оптимизационной задачи.


а) б) в) г)
Иллюстрация процесса локализации модели ASM на конкретном изображении: а) начальное положение б) после 5 итераций в) после 10 итераций г) модель сошлась

Однако все же главной целью AAM и ASM является не распознавание лиц, а точная локализация лица и антропометрических точек на изображении для дальнейшей обработки.

Практически во всех алгоритмах обязательным этапом, предваряющим классификацию, является выравнивание, под которым понимается выравнивание изображения лица во фронтальное положение относительно камеры или приведение совокупности лиц (например, в обучающей выборке для обучения классификатора) к единой системе координат. Для реализации этого этапа необходима локализация на изображении характерных для всех лиц антропометрических точек – чаще всего это центры зрачков или уголки глаз. Разные исследователи выделяют разные группы таких точек. В целях сокращения вычислительных затрат для систем реального времени разработчики выделяют не более 10 таких точек .

Модели AAM и ASM как раз и предназначены для того чтобы точно локализовать эти антропометрические точки на изображении лица.

6. Основные проблемы, связанные с разработкой систем распознавания лиц

Проблема освещенности

Проблема положения головы (лицо – это, все же, 3D объект).

С целью оценки эффективности предложенных алгоритмов распознавания лиц агентство DARPA и исследовательская лаборатория армии США разработали программу FERET (face recognition technology).

В масштабных тестах программы FERET принимали участие алгоритмы, основанные на гибком сравнении на графах и всевозможные модификации метода главных компонент (PCA). Эффективность всех алгоритмов была примерно одинаковой. В этой связи трудно или даже невозможно провести четкие различия между ними (особенно если согласовать даты тестирования). Для фронтальных изображений, сделанных в один и тот же день, приемлемая точность распознавания, как правило, составляет 95%. Для изображений, сделанных разными аппаратами и при разном освещении, точность, как правило, падает до 80%. Для изображений, сделанных с разницей в год, точность распознавания составило примерно 50%. При этом стоит заметить, что даже 50 процентов - это более чем приемлемая точность работы системы подобного рода.

Ежегодно FERET публикует отчет о сравнительном испытании современных систем распознавания лиц на базе лиц более одного миллиона. К большому сожалению в последних отчетах не раскрываются принципы построения систем распознавания, а публикуются только результаты работы коммерческих систем. На сегодняшний день лидирующей является система NeoFace разработанная компанией NEC.

Список литературы (гуглится по первой ссылке)
1. Image-based Face Recognition - Issues and Methods
2. Face Detection A Survey.pdf
3. Face Recognition A Literature Survey
4. A survey of face recognition techniques
5. A survey of face detection, extraction and recognition
6. Обзор методов идентификации людей на основе изображений лиц
7. Методы распознавания человека по изображению лица
8. Сравнительный анализ алгоритмов распознавания лиц
9. Face Recognition Techniques
10. Об одном подходе к локализации антропометрических точек.
11. Распознавание лиц на групповых фотографиях с использованием алгоритмов сегментации
12. Отчет о НИР 2-й этап по распознаванию лиц
13. Face Recognition by Elastic Bunch Graph Matching
14. Алгоритмы идентификации человека по фотопортрету на основе геометриче-ских преобразований. Диссертация.
15. Distortion Invariant Object Recognition in the Dynamic Link Architecture
16. Facial Recognition Using Active Shape Models, Local Patches and Support Vector Machines
17. Face Recognition Using Active Appearance Models
18. Active Appearance Models for Face Recognition
19. Face Alignment Using Active Shape Model And Support Vector Machine
20. Active Shape Models - Their Training and Application
21. Fisher Vector Faces in the Wild
22. Eigenfaces vs. Fisherfaces Recognition Using Class Specific Linear Projection
23. Eigenfaces and fisherfaces
24. Dimensionality Reduction
25. ICCV 2011 Tutorial on Parts Based Deformable Registration
26. Constrained Local Model for Face Alignment, a Tutorial
27. Who are you – Learning person specific classifiers from video
28. Распознавание человека по изображению лица нейросетевыми методами
29. Face Recognition A Convolutional Neural Network Approach
30. Face Recognition using Convolutional Neural Network and Simple Logistic Classifier
31. Face Image Analysis With Convolutional Neural Networks
32. Методы распознавания лиц на основе скрытых марковских процессов. Авторе-ферат
33. Применение скрытых марковских моделей для распознавания лиц
34. Face Detection and Recognition Using Hidden Markovs Models
35. Face Recognition with GNU Octave-MATLAB
36. Face Recognition with Python
37. Anthropometric 3D Face Recognition
38. 3D Face Recognition
39. Face Recognition Based on Fitting a 3D Morphable Model
40. Face Recognition
41. Robust Face Recognition via Sparse Representation
42. The FERET Evaluation Methodology For Face-Recognition Algorithms
43. Поиск лиц в электронных коллекциях исторических фотографий
44. Design, Implementation and Evaluation of Hardware Vision Systems dedicated to Real-Time Face Recognition
45. An Introduction to the Good, the Bad, & the Ugly Face Recognition Challenge Prob-lem
46. Исследование и разработка методов обнаружения человеческого лица на циф-ровых изображениях. Диплом
47. DeepFace Closing the Gap to Human-Level Performance in Face Verification
48. Taking the bite out of automated naming of characters in TV video
49. Towards a Practical Face Recognition System Robust Alignment and Illumination by Sparse Representation
50. Алгоритмы обнаружения лица человека для решения прикладных задач анализа и обработки изображений
51. Обнаружение и локализация лица на изображении
52. Модифицированный мотод Виолы-Джонса
53. Разработка и анализ алгоритмов детектирования и классификации объектов на основе методов машинного обучения
54. Overview of the Face Recognition Grand Challenge
55. Face Recognition Vendor Test (FRVT)
56. Об эффективности применения алгоритма SURF в задаче идентификации лиц

    Что говорить, если в одной только Москве уже работает сеть из более 150 000 камер наружного видеонаблюдения. От них никуда не скрыться, и это заставляет людей задумываться, но масштабы «слежки» не настолько велики. Сеть использует мощную систему распознавания лиц, но для ее работы необходимо много энергии, поэтому в режиме реального времени работают всего 2-4 тысячи камер. Массовым слежением за населением пока только пугают, поэтому стоит сосредоточиться на реальных плюсах работы данной технологии. Но обо всем по порядку.

    Как работает система распознавания лиц?

    Никогда не задумывались о том, как вы сами узнаете лицо, распознаете его? А как это делает компьютер? Конечно, у человеческих лиц есть определенные свойства, которые легко описать. Расстояние между глазами, положение и ширина носа, форма надбровных дуг и подбородка - все эти детали вы подмечаете бессознательно, когда смотрите на другого человека. Компьютер же делает все это с определенной эффективностью и точностью, потому что, совмещая все эти метрики, получает математическую формулу человеческого лица.

    Итак, насколько хорошо работает система распознавания лиц в настоящее время? Вполне неплохо, но иногда ошибается. Если вы когда-нибудь сталкивались с ПО, распознающим лица на Facebook или на другой платформе, вы наверняка замечали, что забавных результатов бывает столько же, сколько и точных. И все же, хотя технология работает не со 100-процентной точностью, она достаточно хороша, чтобы найти широкое применение. И даже заставить понервничать.

    Пол Хоуи из NEC говорит, что их система распознавания лиц сканирует лица на предмет индивидуальных идентификаторов:

    «К примеру, многие считают расстояние между глазами уникальной характеристикой. Или же это может быть расстояние от подбородка до лба и другие компоненты. Мы, в частности, учитываем 15-20 факторов, которые считаются важными, а также другие факторы, уже не настолько значимые. Создается трехмерное изображение головы человека, поэтому даже если она частично будет закрыта, мы все равно сможем получить точное соответствие. Затем система берет сигнатуру лица и пропускает ее через базу данных».

    Стоит ли переживать о программах, распознающих лица?

    Прежде всего, распознавание лиц - это данные. Данные можно собирать и хранить, зачастую без разрешения. Как только информация собрана и сохранена, она открыта и для взлома. Платформы с ПО, распознающим лица, пока не подвергались серьезным взломам, но по мере распространения технологий ваши биометрические данные оказываются в руках все большего числа людей.

    Существуют также вопросы владения. Большинство людей не знают, что когда они регистрируются в социальных медиаплатформах вроде Facebook, их данные с этого момента принадлежат этой самой Facebook. Поскольку число компаний, использующих распознавание лиц, постоянно растет, очень скоро даже не придется загружать собственные фотографии в Интернет, чтобы оказаться скомпрометированным. Они уже там хранятся, и хранятся давно.

    Говоря о программном обеспечении, все они работают по-разному, но в основе своей используют похожие методы и нейросети. У каждого лица есть множество отличительных признаков (в мире невозможно найти два идентичных лица, а ведь сколько их было за всю историю человечества!). К примеру, программное обеспечение FaceIt определяет эти признаки как узловые точки. Каждое лицо содержит примерно 80 узловых точек, схожих с теми, что мы упоминали прежде: расстояние между глазами, ширина носа, глубина глазных впадин, форма подбородка, длина челюсти. Эти точки измеряются и создают числовой код - «отпечаток лица» - который затем попадает в базу данных.

    В прошлом распознавание лиц опиралось на двумерные снимки для сравнения или идентификации других двумерных снимков из базы данных. Для пущей эффективности и точности изображение должно было быть лицом, прямо смотрящим в камеру, с небольшой дисперсией света и без особого выражения лица. Конечно, работало это чертовски плохо.

    В большинстве случаев снимки не создавались в подходящей среде. Даже небольшая игра света могла снизить эффективность системы, что приводило к высоким показателям отказа.

    На смену 2D пришло 3D-распознавание. Эта недавно появившаяся тенденция в программном обеспечении использует 3D-модель, обеспечивающую высокую точность распознавания лица. Запечатлевая трехмерное изображение поверхности лица человека в реальном времени, ПО выделяет отличительные черты - где больше всего выдаются жесткие ткани и кость, например, кривые глазного гнезда, носа и подбородка - для идентификации субъекта. Эти области уникальны и не меняются со временем.

    Используя глубину и ось измерения, на которые не влияет освещение, система трехмерного распознавания лиц может даже использоваться в темноте и распознавать объекты под разными углами (даже в профиль). Подобное программное обеспечение проходит через несколько этапов, идентифицируя человека:

  • Обнаружение : получение снимка при помощи цифрового сканирования существующей фотографии (2D) или видео для получения живой картинки субъекта (3D).
  • Центровка : определив лицо, система отмечает положение головы, размер и позу.
  • Измерение : система измеряет кривые на лице с точностью до миллиметра и создает шаблон.
  • Репрезентация : система переводит шаблон в уникальный код. Этот код задает каждому шаблону набор чисел, представляющих особенности и черты лица.
  • Сопоставление : если снимок в 3D и база данных содержит трехмерные изображения, сопоставление пройдет без изменений снимка. Но если же база данных состоит из двумерных снимков, трехмерное изображение раскладывается на разные составляющие (словно сделанные под разными углами двумерные снимки одних и тех же черт лица), и они конвертируются в 2D-изображения. И затем находится соответствие в базе данных.
  • Верификация или идентификация : в процессе верификации снимок сравнивается только с одним снимков в базе данных (1:1). Если целью же стоит идентификация, снимок сравнивается со всеми снимками в базе данных, что приводит к ряду возможных совпадений (1:N). Применяется тот или иной другой метод по необходимости.

Где используются системы распознавания лиц?

В прошлом системы распознавания лиц находили применение в основном в сфере правоохранения, поскольку органы использовали их для поиска случайных лиц в толпе. Некоторые правительственные учреждения также использовали подобные системы для безопасности и для устранения мошенничества на выборах.

Однако есть много других ситуаций, в которых такое программное обеспечение становится популярным. Системы становятся дешевле, их распространение растет. Теперь они совместимы с камерами и компьютерами, которые используются банками и аэропортами. Туристические агентства работают над программой «бывалого путешественника»: с ее помощью они проводят быстрый скрининг безопасности для пассажиров, которые добровольно предоставляют информацию. Очереди в аэропортах будут продвигаться быстрее, если люди будут проходить через систему распознавания лиц, сопоставляющую лица с внутренней базой данных.

Другие потенциальные применения включают банкоматы и терминалы выдачи наличных денег. Программное обеспечение может быстро проверить лицо клиента. После разрешения клиента банкомат или терминал делает снимок лица. Программное обеспечение создает отпечаток лица, защищающий клиента от кражи личных данных и мошеннических транзакций, - банкомат просто не выдаст деньги человеку с другим лицом. Даже ПИН-код не потребуется.

Волшебство? Технологии!

Особенно важным и интересным может быть развитие технологии распознавания лиц в сфере банковских переводов. На днях российский банк «Открытие» представил собственное уникальное решение, разработанное под технологическим брендом Open Garage: перевод денег по фотографии в мобильном приложении «Открытие.Переводы» . Вместо того чтобы вбивать номер карты или телефона, достаточно просто сфотографировать человека, которому нужно сделать перевод. Система распознавания лиц сравнит фото с эталонным (делается, когда банк выдает карту) и подскажет имя и фамилию. Останется только выбрать карту и ввести сумму. Что особенно важно, клиенты сторонних банков также могут использовать эту функцию для переводов клиентам «Открытия» - отправитель переводов может пользоваться картой любого российского банка.

«Использование фотографии клиента вместо номера банковской карты - это принципиально новый подход к онлайн-переводам, основанный на использовании нейросетевой системы распознавания лиц, которая позволяет с высокой степенью точности идентифицировать клиента по его биометрическим данным, - говорит начальник Управления развития партнерских систем банка «Открытие» Алексей Матвеев. - Сервис открывает для пользователей совершенно новые жизненные сценарии для выполнения денежных переводов. В настоящее время ни один из участников финансового рынка в мире не предлагает подобного сервиса своим клиентам».

Мобильное приложение «Открытие. Переводы» можно .