Поиск по сайту Поиск

Методы распознавания радужной оболочки глаз. Часть 1

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

Введение

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

Одно из исследований проводилось в рамках конкурса NICE (Noisy Iris Challenge Evaluation) с использованием набора данных UBIRIS (University of Beira Iris). Датасет содержит изображения глаз, снятые с расстояния от четырёх до восьми метров в различных условиях. Многие фотографии сделаны с плохой фокусировкой, неудачным углом обзора, плохим освещением и другими зашумлениями для имитации реальных трудностей, с которыми можно столкнуться при распознавании радужной оболочки. На рисунке ниже показаны примеры снимков низкого качества.

(a) — глаза находятся за очками, (b) — взгляд под углом и блик, (c) — размытие, (d) — глаз закрыт веком и ресницами

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

Метод 1. Три нейросети

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

— Получение трёх изображений

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

(a) — радужная оболочка, (b) — первая периокулярная область, (c) — вторая периокулярная область

— Нормализация

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

— CNN

Традиционные архитектуры, такие как AlexNet и VGGNet, обычно принимают на вход квадратные фотографии и используют симметричные фильтры. Однако полученные в результате нормализации изображения имеют несимметричный размер (8x256), поэтому предварительно обученные CNN для них не подходят. Чтобы решить эту проблему, исследователи предложили новую структуру нейросети с несимметричными фильтрами. 

Сеть состоит из восьми свёрточных слоёв и использует нестандартные размеры фильтров: 1x13x3, 1x13x64, 1x13x128 и так далее. Причины использования таких размеров заключались в том, что ширина изображения в полярных координатах намного превышает высоту, а вертикальная корреляция рисунка радужки больше, чем горизонтальная. Следовательно, эту избыточность можно уменьшить только с помощью фильтра, ширина которого намного больше высоты. 

Завершают структуру три полносвязных слоя. Подобная архитектура используется для всех трёх свёрточных нейросетей.

— Результаты экспериментов

Используемый датасет NICE.II содержит 1000 фотографий глаз и 171 класс. Для качественного обучения нейросети такого объёма данных обычно недостаточно. Поэтому датасет был дополнен до 81000 образцов с помощью различных операций над изображениями, а затем разделён на две подвыборки A и B примерно по 40000 образцов в каждой.

Для обучения нейросети использовался фреймворк Caffe, кросс-энтропийная функция потерь и оптимизатор Adam. 

Оценка точности модели проводилась с помощью биометрических метрик:

— ложное распознавание (False Access Rate, FAR)

— отказ распознавания (False Reject Rate, FRR)

Уровень ошибок в случае, когда FAR=FRR, называется EER (equal error rate) и обычно применяется для сравнения разных биометрических методов (чем он меньше, тем лучше). Также для оценки модели использовался индекс чувствительности (d-Prime Value) — чем выше его значение, тем эффективнее работает биометрическая система.

Чтобы оценить модель на фотографиях, снятых на обычные смартфоны, исследователи провели эксперимент с датасетом MICHE. Он содержит снимки глаз, сделанные на iPhone 5, Galaxy Tab2 и Galaxy S4. В таблице ниже можно увидеть сравнение описанного метода с другими существующими алгоритмами. Оценки ERR и d-Prime показывают, что решение достигает более высокой точности.

Сравнение предлагаемого решения с методами Abate и др., Barra и др., Raja и др., Santos и др.

В дальнейшем исследователи планируют улучшить точность распознавания, разработав более глубокую структуру CNN и дополнив её другими методами извлечения признаков из изображений. 

Метод 2. IrisDenseNet

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

На рисунке ниже показана архитектура нейросети. Она состоит из 13 слоёв и использует сочетание двух методов: свёрточная сеть с усиленным распространением признаков (DenseNet) и сеть типа энкодер-декодер SegNet. Это позволяет значительно улучшить процесс извлечения и распознавания признаков.

Архитектура включает пакетную нормализацию и функцию активации ReLU. Нейросеть обучалась с нуля на упомянутом наборе данных NICE.II, который также был расширен с помощью различных методов дополнения данных.

На рисунке ниже показаны успешные результаты сегментации, полученные IrisDenseNet.Эффективность метода измеряется метрикой Ea — средней ошибкой (чем меньше, тем лучше). Для наглядного представления результата определены два типа ошибок: ложноположительная и ложноотрицательная. Первая — ложноположительная классификация пикселя, не принадлежащего радужной оболочке, а вторая —  ложноотрицательная классификация пикселя оболочки. Ложноположительные и отрицательные ошибки отмечены зелёным и красным цветами соответственно.

(a) — исходное изображение, (b) — истинное изображение, (с) — результат сегментации IrisDenseNet

Алгоритм также был протестирован на наборе данных MICHE и показал следующие результаты:

Сравнение IrisDenseNet с методами Hu и др., Arslan и др., Seg-Net-Basic

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

⌘⌘⌘

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

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

C оригинальными материалами (1, 2) можно ознакомиться на сайте Национального центра биотехнологической информации.

Domains weekly: конец стабильности .COM, детали продажи .ORG и сделки недели

Domains weekly: конец стабильности .COM, детали продажи .ORG и сделки недели

Из нового доменного дайджеста вы узнаете, может ли проигрыш спора за домен стать победой, чего ждать от повышения цен на...
Read More
PHP 7 или Как ускорить сайт за минуту без регистрации и СМС

PHP 7 или Как ускорить сайт за минуту без регистрации и СМС

Вы наверняка в курсе, что PHP удерживает лидерство среди языков, применяющихся для создания сайтов. В конце 2019 года версия PHP...
Read More
Приключенческая игра с самым опасным ИИ в мире

Приключенческая игра с самым опасным ИИ в мире

Долгие праздничные каникулы уже позади, но многим наверняка хочется ещё немного отдохнуть от серьёзных тем. Поэтому сегодня мы расскажем вам...
Read More
Новогодний чек-лист: не пропразднуй свой домен

Новогодний чек-лист: не пропразднуй свой домен

Не все задачи и дела подходят под фразу «А давайте уже после праздников». И те, что «горят прям горят», мы...
Read More
Domains weekly: рост Интернета, зона .AMAZON и домен на миллион

Domains weekly: рост Интернета, зона .AMAZON и домен на миллион

Приближаются праздники, и в доменной индустрии всё становится спокойнее… Или нет? Из последней подборки в этом году вы узнаете, насколько...
Read More
Итоги 2019 года в блоге REG.RU: создание сайтов, бэкапы, нейросети и UX‑дизайн

Итоги 2019 года в блоге REG.RU: создание сайтов, бэкапы, нейросети и UX‑дизайн

Год приближается к финишной прямой, и редакция блога, следуя тренду, подводит его итоги. Сегодня мы поделимся материалами, которые вы больше...
Read More
Стэнфордский курс: лекция 10. Рекуррентные нейронные сети

Стэнфордский курс: лекция 10. Рекуррентные нейронные сети

В прошлый раз мы рассказали о нескольких популярных свёрточных архитектурах и узнали об их влиянии на развитие машинного обучения. В...
Read More
Domains weekly: карта Интернет-мира, перспективы Китая и доменная зависть

Domains weekly: карта Интернет-мира, перспективы Китая и доменная зависть

Новая подборка новостей будет очень полезной для домейнеров. Насколько активно страны мира регистрируют сайты в своих национальных доменных зонах? Есть...
Read More
Shared или VPS — какой хостинг выбрать для сайта?

Shared или VPS — какой хостинг выбрать для сайта?

Один из наших читателей попросил рассказать, какой же вариант хостинга стоит использовать для своего онлайн-проекта. Этим вопросом задаётся почти каждый...
Read More
С чего начать SEO-продвижение сайта

С чего начать SEO-продвижение сайта

Вы создали красивый и яркий сайт, грамотно расписали контент, добавили акценты для целевой аудитории, но трафик не растёт? Скорее всего,...
Read More