канд. физ.-мат. наук, доцент, Барановичский государственный университет, 225320, Республика Беларусь, Брестская обл., г. Барановичи, улица Парковая, дом №62
АННОТАЦИЯ
На сегодняшний день существует большое количество методов распознавания личности по геометрии лица. Все они основываются на том факте, что черты лица и форма черепа каждого человека индивидуальны. В данной статье рассмотрены принципы верификации личности на основе геометрии лица, полученной путем бинокулярной стерео-реконструкции. В рамках данной темы раскрыты принципы позиционирования камер и реализации нейронной сети, позволяющей производить расчет диспаратности, с предварительным приведением стереопары к эпиполярности, и проведением верификации с использованием полученных данных.
ABSTRACT
By now, there is a large number of methods for recognizing face geometry. All of them are based on the fact that the facial features and skull shape of each person are individual. In this article, we consider the principles of personal verification based on face geometry using the method of binocular stereo reconstruction. Within the framework of this topic, the principles of camera positioning and the implementation of a neural network that allows to calculate of disparity will be disclosed, with a preliminary reduction of the stereopair to epipolarity, and verification based on the obtained data.
Ключевые слова: верификация, бинокулярная стерео-реконструкция, стереопара, эпиполярность, распознавание лиц, диспаратность, нейронные сети.
Keywords: verification, binocular stereo-reconstruction, stereopair, epipolarity, face recognition, disparity, neural networks.
В современном обществе человек все время нуждается в обеспечении личной безопасности и безопасности производимых им действий. Ежедневно проходя через сотни разнообразных систем аутентификации и верификации ему необходимо помнить пароли, ключи доступа и идентифицирующие маркеры. Биометрическая идентификация способна решить данную проблему.
Актуальность темы заключается в возможности внедрения полученных в результате исследования данных и разработок в системы безопасности, информационные системы и терминалы, доступ к которым будет открыт только после прохождения аутентификации. Результат исследования может облегчить работу службы охраны, при этом значительно повысив безопасность охраняемого объекта. Здесь можно говорить как о полностью автономном модуле, установленном на контрольно-пропускном пункте, так и двухфакторной верификации личности, когда контроль над основным процессом остается в руках человека.
Реализация метода 3-D распознавания лица представляет собой довольно сложную задачу. Для решения данной задачи нами использовано бинокулярное стереозрение. Данный метод основывается на том, что точки поверхности предмета дают изображения, относительное положение которых зависит от расстояния до точки наблюдения [3].
Для реализации этого подхода требуется две предварительно откалиброванные камеры. Так как области зрения камер в стереопаре пересекаются, могут быть найдены соответствия одним и тем же частям сцены на изображениях стереопары. Эффект объема возникает в силу того, что расположенные на разном удалении от наблюдателя части сцены при просмотре с разных точек имеют различное угловое смещение, называемое параллаксом [1].
При этом параллактическое смещение объекта сцены будет тем больше, чем ближе он расположен к камере. Зная смещение для каждой точки сцены и параметры калибровки стереопары можно получить так называемую карту глубины.
Стоит отметить, что существует ряд методик отличных от предложенной: методы сканирования объекта (метод структурированного света, времяпролетные камеры) и методы накопления информации о лице (метод оценки формы по движению) [4].
Суть методов сканирования объекта сводится к его освещению, например, шаблоном в виде сетки (может быть использован проектор, проецирующий регулярную сетку из светлых линий на поверхности объектов). Камера при формировании изображений передает результат искажения сетки за счет формы и ориентации поверхности. Как следует из вышесказанного, методика сканирования объекта требует наличия специализированного оборудования (проекторов, 3D сканеров, радаров, времяпролетных камер, сонаров или лидаров), тогда как предложенная для решения методика бинокулярного стереозрения работает с обычными веб-камерами [4].
Методы накопления информации, в свою очередь, анализируют локальное движение частей сцены с течением времени. Когда перемещается камера или объект, либо они оба, то система получает последовательность изменяющихся изображений. По векторам оптического потока или соответствующим точкам на трехмерных сценах можно восстановить поверхности и углы [4]. Определение объектов из движения представляет задачу, аналогичную задаче бинокулярного стереозрения, только изображения для обработки будут получены в разное время. Это приводит к усложнению и большей ресурсоемкости задачи нахождения соответствующих точек, что делает метод бинокулярного стереозрения более выигрышным.
Задачу реконструкции объемной модели лица можно разбить на следующие этапы:
Одним из главных этапов стерео-реконструкции является правильное позиционирование камер. Они должны быть закреплены на одном уровне и повернуты с учетом стереобазиса. Пример позиционирования камер представлен на рисунке 1.
Рисунок 1. Позиционирование камер относительно объекта
При слишком малом расстоянии между точками съёма левого и правого кадра существенно уменьшится точность определения глубины точек изображения, при слишком большом — усложниться проблема поиска соответствий.
Сущность приведения к эпиполярной стереопаре заключается в модификации её таким образом, что для некоторой системы координат эпиполярные линии становятся параллельны одной из её осей и диспаратность проявляется только вдоль этой оси.
Для достижения этой цели выбирается несколько хорошо выраженных контрольных точек на лице и далее происходит выравнивание изображений по оси Y. На данном этапе можно произвести изучение изображений, и при наличии точек нарушающих эпиполярность, сделать вывод о неправильном позиционировании камер или высоком уровне помех на фото. На рисунке 2 показана стереопара, приведенная к эпиполярности.
Рисунок 2. Эпиполярная стереопара
Следующий этап является ключевым — это определение лицевых ориентиров. Данная процедура проводится на обоих фото, после чего определяются сопряженные точки. Для решения данной задачи используется специально обученная нейронная сеть, результатом работы которой являются 68 лицевых ориентиров (рисунок 3).
Рисунок 3. Определение лицевых ориентиров
Схема расположения лицевых ориентиров представлена на рисунке 4.
Рисунок 4. Расположение лицевых ориентиров и их нумерация
Из полученных ориентиров выбираются ключевые, отвечающие за кончики губ, глаз, бровей, а также определяющие овал лица и форму носа. На основе этих точек строится триангуляционная сетка (рисунок 5).
Рисунок 5. Триангуляционная сетка, построенная на основе лицевых ориентиров
Для определения диспаратности необходимо привести обе триангуляционные сетки в единую систему координат и выровнять по «якорной» точке. Различие между сопряженными точками по оси Х и будет являться диспаратностью. Результат сведения триангуляционных сеток представлен на рисунке 6.
Рисунок 6. Определение диспаратности
Расстояние до объекта обратно пропорционально диспаратности, причем расстояние до ближних объектов можно измерить точнее, чем до дальних. Заметим также, что диспаратность пропорциональна расстоянию между центрами линз, поэтому при фиксированной погрешности измерения диспаратности точность определения глубины будет возрастать с увеличением стереобазы — расстояния между центрами объектов камер.
На основе диспаратности в контрольных точках в заранее выбранном масштабе строится карта глубины. В случае, если известны фокусное расстояние и стереобаза, глубину можно вычислить по следующей формуле:
(1) |
где D — искомое расстояние до объекта,
d — значение диспаратности,
f — фокусное расстояние,
b — значение стереобазы (расстояние между центрами камер) [3].
Взяв за основу одну из триангуляционных сеток и добавив к ней рассчитанные данные о глубине, получим плоскость в пространстве, являющуюся слепком лица.
При добавлении информации о новом человеке в систему проводится ряд считываний его лица, после чего обобщенный результат заносится в базу данных. При необходимости верификации, человек становится перед камерами, происходит вычисление карты глубины и расстояний между лицевыми ориентирами, после чего результат вычислений и эталон из базы данных передаются обученной нейронной сети, которая, в свою очередь, определяет является ли человек перед камерой, обладателем лица, зафиксированного эталоном.
В качестве нейронной сети была выбрана двухслойная сеть прямого распространения, где связи между нейронами направлены строго от входных к выходным. Выбор обусловлен высокой изученностью данного типа организации нейронных сетей, и хорошими результатами в решении задач, где ответ зависит только от входных параметров, но никак от их истории (т.е. процесс не динамический) [2].
По типу входной информации сеть можно охарактеризовать как аналоговую. На входной слой подается скомбинированная вычисленная информация о распознанном лице и эталон из базы данных. Всего 408 нейронов на входном слое.
Обучение нейронной сети было проведено на основе процедуры обратного распространения — распространение сигналов ошибки от выходных нейронов к входным, т.е. в направлении обратном прямому распределению сигналов в стандартном режиме работы. Для обучения использовалась контрольная выборка, состоящая из большого количества пар вида «входные параметры — требуемый результат» [2].
Нейронная сеть решает проблему поворота головы, эмоций, изменяющих очертания лица, а также ряд других возможных искажений.
Система, работающая по данной методике бинокулярной стерео-реконструкции плоскости лица и использующая приведенную выше нейронную сеть способна производить верификацию личности с точностью 99% и выше (при условии обучения системы достаточно большой выборкой), за время, не превышающее 600–1000 мс (зависит от мощности используемого оборудования).
Проведенное исследование способствует разработке модуля верификации и аутентификации личностей с использованием стандартных камер видеонаблюдения и веб-камер. Внедрение данного модуля на контрольно-пропускных пунктах — всего лишь один из возможных сценариев его применения. Специализированные подмодули, работающие на основе обученной нейронной сети, позволяют вести распознавание лиц на потоковом видео с нескольких камер, тем самым предоставляя более полную информацию о перемещении каждого посетителя по охраняемому объекту.
В данной статье были рассмотрены принципы верификации личности на основе геометрии лица, полученной путем бинокулярной стерео-реконструкции. В рамках этой темы были продемонстрированы принципы позиционирования камер и реализации нейронной сети, позволяющей производить расчет диспаратности, с предварительным приведением стереопары к эпиполярности, и проведением верификации на основе полученных данных.
Список литературы:
1. Horn B. Robot Vision. — The MIT Press, 1986. — 480 p.
2. Rojas R. Neural Networks. A Systematic Introduction. — Springer, 1996. — 512 p.
3. Schlesinger M., Flach B. Some solvable subclass of structural recognition problems // Czech Pattern Recognition Workshop. — 2000. — Vol. 2. — P. 55—62.
4. Wöhler С. 3D Computer Vision: Efficient Methods and Applications. — Springer, 2013. — 390 p.