В рубрику "Системы контроля и управления доступом (СКУД)" | К списку рубрик | К списку авторов | К списку публикаций
С точки зрения применения в системах безопасности с повышенными требованиями к точности и надежности самым перспективным методом (не считая точного анализа ДНК) идентификации человека является распознавание по радужной оболочке глаза. Это обусловлено следующими факторами:
1. Радужная оболочка наиболее информативна из всех разнообразных биометрик. Действительно, теоретическая (подчеркнем – чисто теоретически, с точки зрения математики) вероятность того, что два разных человека имеют одинаковые рисунки радужки на своих двух глазах, приблизительно равна 10-78, в то время как все население Земли составляет <1010. Понятное дело, что в реальной физической системе мы никогда не достигнем значений 10-78, однако даже получаемые значения 10-10–10-11 дают фору в 4–6 порядков всем другим биометрическим методам, включая двухмодальные.
2. Стабильность биометрики по радужке во времени.
Рисунок радужки формируется на восьмом месяце внутриутробного развития, окончательно стабилизируется в возрасте около двух–трех лет и практически не изменяется в течение жизни, кроме как в результате сильных травм или резких патологий.
3. На сегодняшний день нет экономически обоснованных способов повторить/скопировать/подделать рисунок радужки и обмануть такую биометрическую систему. Это дает значительное преимущество в сравнении с биометрией по лицу или по пальцам.
4. Наконец, бесконтактный способ получения изображения радужки делает привлекательным его применение в реальных приложениях.
Идея распознавать людей по радужной оболочке глаза возникла у профессора Джона Доугмана в 1987 г., он ее запатентовал, и патентная защита не давала возможности кому-либо создать биометрический сканер по радужке. И лишь к 2006-2009 гг стали появляться первые успешные (и не очень) модели. Но стоило все это слишком дорого. С учетом возможностей современного железа мы уже можем создавать коммерческие биометрические сканеры с указанными выше значениями ошибок.
Здесь имеет смысл совсем немного "пробежаться" по теории, не утомляя читателя деталями и тонкостями математического аппарата и используемых алгоритмов.
Классический алгоритм распознавания (у того же Доугмана) состоит из двух частей - сегментации и сравнения.
Сегментация – это выделение самого глаза и радужки на фотографии или в видеопотоке. При этом алгоритм сегментации сильно зависит от используемого оборудования и оптической конфигурации. В отличие от сравнения, которое является математически строгой задачей, сегментация – это задача со слишком большим количеством переменных. Всегда приходится что-то настраивать и выдумывать свое. Например, Доугман в своем патенте предлагал при сегментации искать глаз как окружность, для которой градиент максимален:
где G – оператор гауссовского размытия изображения, I(x,y) – само изображение.
При этом количество гипотез, которые нужно перебирать, равно: W х H•(Rmax – Rmin), где W – ширина изображения, H – его высота, Rmax и Rmin – максимальные и минимальные радиусы соответственно. Решение подобной задачи обработки изображения без предварительной оптимизации даже на современных процессорах типа Intel i7 составляет порядка нескольких секунд. Поэтому существует много настроек, хитростей и уловок, чтобы добиться работы в реальном времени.
Например, использование ИК-подсветки, которая дает характерный блик на зрачке, и поиск этого блика. Задача поиска блика вычислительно значительно проще, чем задача поиска глаза. А глаз ищется потом в окрестности блика. В результате сегментации детектируется зрачок и радужка (рис. 1).
На радужке отмечаются области, интересные для дальнейшего использования, и получается сегментированная область (рис. 2).
Вторая часть – это сравнение. После выделения радужки ее нужно нормализовать для удобного сравнения с другими. Радужка разворачивается из полярных координат в прямоугольник и фильтруется. Каждый применяет свои хитрости и уловки, чтобы выделить/подчеркнуть характерные области и понизить высокочастотные шумы. Используемый фильтр тоже настраивается в зависимости от оборудования.
Преобразованную таким образом радужку называют Iris Code.
Чтобы сравнить две радужки, для полученных Iris Code строят так называемую дистанцию Хэмминга, которая в данном случае является мерой корреляции объектов. Чем меньше дистанция Хэмминга между двумя кодами, тем ближе друг к другу они расположены. Если мы сравним достаточно большую базу картинок друг с другом, вычислим для нее дистанцию Хэмминга и построим гистограмму, то получится распределение, представленное на рис. 3.
Левый "горб" будут формировать сравнения одинаковых глаз с одинаковыми, правый – сравнения разных глаз. Из этого графика берется число, которое хорошо разделяет два "горба". Обычно его выбирают ближе к левому "горбу": не допустить человека лучше, чем пропустить "шпиона". Для данного графика это приблизительно 0,34. В дальнейшем система принимает решение, что человека можно пропускать, если код его глаза имеет дистанцию меньше, чем 0,34, с каким-либо другим кодом из базы.
Все, что написано выше про потрясающую точность, достижимо? Да! Может возникнуть второй закономерный вопрос: а что, до сих пор никто в мире не делал подобное? Конечно же, делали. И даже, в принципе, неплохо Morfo/Safran, EyeLock, Iris ID и др. И были заметные внедрения - на границах некоторых государств, в проектах национальной безопасности, в индустрии и в бизнесе. Даже в нашей стране нет-нет да и можно встретить биометрию по радужке и на некоторых объектах МО, и в Росатоме, и в бизнесе (хотя у нас такие проекты можно пересчитать по пальцам). Замечу, что в данной статье мы ведем речь о действительно серьезных системах идентификации для критически важных приложений безопасности и не рассматриваем маркетинговые внедрения типа реализации Samsung для доступа в смартфон.
Широкому внедрению решений биометрии по радужке препятствовала прежде всего достаточно высокая цена таких решений. Хотя это критерий относительный. Его надо рассматривать только в контексте стоимости рисков потерь.
Прогресс в микроэлектронике и элементной базе последних лет, новый подход к построению архитектуры, учет всех плюсов и, главное, минусов предыдущих реализаций и собственные оригинальные алгоритмы - все это позволило российским разработчикам создать действительно новый, конкурентный продукт.
В отличие от классики в нем используются не только разновидности традиционных алгоритмов (типа Доугмана), но и на различных этапах обработки подходы Deep Learning на сверточных нейронных сетях (куда же без них сегодня?).
Это дает возможность не только получать превосходящие значения по главным параметрам биометрии (ошибкам 1-го и 2-го рода), но и оптимизировать решение по скорости, форм-фактору, энергетике и цене:
А с точки зрения экономики или, лучше сказать, полной стоимости получается оптимизация
На сегодня удалось создать биометрическую систему идентификации человека по радужке глаза и добиться следующих результатов:
В связи с этим пунктом часто возникает вопрос: а все же можно ли обмануть систему? Особенно после определенных публикаций2
Замечу, что такие "маркетинговые бомбы" не говорят о конкретике - то есть о том, что хакер сумел обмануть приложение для смартфона Samsung, вовсе не предназначенное для действительно надежной биометрической защиты. Это была скорее маркетинговая "фишка"/поделка от Samsung в угоду мировому тренду интереса к биометрии. Уж поверьте, все ведущие разработчики серьезных решений биометрии по радужке в первую очередь решают вопрос возможной компрометации своей системы и вносят в алгоритмы различные методы защиты от взлома. Естественно, ни один из них вам не расскажет об этих Know-How (кто ж захочет потерять свой продукт и рынок?). Но если вы немного помните физику, то, может быть, и вам удастся придумать свой способ защиты. Разработчики знают эту проблему и поэтому вносят в свои алгоритмы некоторые способы распознавания, живой ли человеческий глаз или системе предъявлено фото, муляж, и т.д.
Можно констатировать, что доступных и экономически оправданных методов фальсификации нет - система реагирует только на живой человеческий глаз.
Полагаю, что вышеперечисленные пункты прекрасно демонстрируют новизну и конкурентность решения. По-видимому, мы сделали то, что за рубежом называют Best in Class.
Важно отметить, что такие сканеры и системы - наши отечественные, российские. Вся математика, все алгоритмы и софт - собственной проприетарной разработки.
Хотя появляются они пока еще очень робко на российском рынке, что, впрочем, объяснимо:
Появляется уверенность, что наконец-то мы получили действительно серьезную биометрию, способную работать в режиме 1 :N на реальных объектах и в реальных (не выставочных, не лабораторных) условиях. По крайней мере, Русское биометрическое общество (а я бы назвал РБО не только экспертом в отечественной биометрии, но и неким "третейским судьей"), ознакомившись с результатами/статистикой оперативных испытаний таких систем (то есть не просто тестов алгоритмов, а внедрений и работы на реальном объекте) отмечает, что такой статистики пока на нашем рынке не было… При этом испытания проведены в точном соответствии с ГОСТ Р ИСО/МЭК 19795-6-201 5, что также нечасто встречается на российском рынке биометрии.
Опубликовано: Журнал "Системы безопасности" #4, 2018
Посещений: 3511
Автор
| |||
В рубрику "Системы контроля и управления доступом (СКУД)" | К списку рубрик | К списку авторов | К списку публикаций