Известия РАН. Теория и системы управления, 2021, № 1, стр. 114-123

ПОИСК ГРАНИЦ РАДУЖНОЙ ОБОЛОЧКИ ПРИ ПОМОЩИ СВЕРТОЧНЫХ НЕЙРОННЫХ СЕТЕЙ

Ю. С. Ефимов a*, В. Ю. Леонов b, Г. А. Одиноких c***, И. А. Соломатин a**

a МФТИ, Долгопрудный
МО, Москва, Россия

b ФИЦ ИУ РАН
Москва, Россия

c Samsung R&D Institute Russia
Москва, Россия

* E-mail: yuri.efimov@phystech.edu
*** E-mail: g.odinokikh@samsung.com
** E-mail: ivan.solomatin@phystech.edu

Поступила в редакцию 09.06.2020
После доработки 17.06.2020
Принята к публикации 27.07.2020

Полный текст (PDF)

Аннотация

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

Введение. Технологии биометрического распознавания личности активно внедряются в повседневную жизнь людей. Среди способов биометрической идентификации стоит выделить методы, основанные на использовании рисунка радужной оболочки глаза, который практически не изменяется с течением жизни человека и обладает богатой индивидуальной для каждой личности текстурой [1]. Применение этого биометрического признака позволяет достигать высочайшей точности идентификации. Классическая система распознавания по радужке состоит из трех основных этапов: локализация области радужной оболочки, извлечение и сравнение признаков [2]. Этап локализации состоит, как правило, из нескольких шагов: нахождение области глаза, поиск внешней и внутренней границ радужной оболочки и выделение перекрытий области внутри найденных границ ресницами и веками [3].

Одним из способов решения задачи поиска границ является их приближение параметрическими кривыми, такими, как окружности или эллипсы. Решением в данном случае будет оптимальный по некоторому критерию набор параметров. В работе [2] предлагается модель концентрических окружностей для аппроксимации границ радужной оболочки. Для определения оптимального набора их параметров минимизируется значение интегродифференциального оператора. В [4] описан метод сегментации, основанный на преобразовании Хафа. Поиск окружностей в трехмерном пространстве параметров является вычислительно затратным, поэтому предложены различные модификации первоначальной идеи, оптимизированные непосредственно для решения задачи сегментации [5]. Как правило, при решении задачи выделения области радужки в первую очередь определяется граница зрачка, затем внешняя граница радужной оболочки. Это связано с тем, что зрачок на изображении виден как характерная темная область округлой формы. Обнаружение зрачка позволяет сузить диапазон допустимых параметров внешней границы [6]. Также предлагается совместный поиск двух границ [3].

Помимо аппроксимации границ радужной оболочки окружностями, существуют методы, моделирующие контуры области радужки более сложными кривыми [7, 8], например, активными контурами [9] или оптимизацией формы кривой в полярных координатах [10]. Решение задачи локализации области радужки на изображении глаза усложняется в случае ослабления ограничений на допустимые условия регистрации. Большие изменения освещенности или размера глаза в поле зрения камеры могут вызвать значительные изменения в видимой структуре глаза в целом, что приводит к ошибкам в работе классических алгоритмов локализации.

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

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

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

1.1. Постановка задачи. Поиск границ радужной оболочки осуществляется, когда известно расположение периокулярной области на изображении. Входными данными для предлагаемого метода является изображение, на котором заведомо содержится глаз. Без ограничения общности будем предполагать, что входное изображение I есть квадратный растр размером W × W пикселей, внешняя и внутренняя границы радужной оболочки на котором задаются двумя окружностями: $({{X}_{i}},{{Y}_{i}},{{D}_{i}})$ и $({{X}_{p}},{{Y}_{p}},{{D}_{p}})$, где X, Y – координаты центра окружности диаметром $D$ в левосторонней системе координат с центром в верхнем левом углу изображения. Индексы $i$ и $p$ соответствуют границам “склера–радужка” и “радужка–зрачок”. Значения координат центров и диаметров обеих окружностей при этом удовлетворяют неравенствам:

(1.1)
$\left\{ \begin{gathered} min\left\{ {X,W - X,Y,W - Y} \right\} < \frac{D}{2}, \hfill \\ D \leqslant W \leqslant 4D. \hfill \\ \end{gathered} \right.$

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

1) ${{x}_{i}},\;{{y}_{i}},\;{{d}_{i}}$ – внешняя граница, “радужка–склера”;

2) ${{x}_{p}},\;{{y}_{p}},\;{{d}_{p}}$ – внутренняя граница, “радужка–зрачок”.

Предлагается считать, что параметры окружностей были определены корректно, если абсолютная ошибка детектирования не превышает α = 5% истинного диаметра радужки на изображении:

(1.2)
$\begin{gathered} {\text{|}}{{x}_{i}} - {{X}_{i}}{\text{|}} < \alpha {{D}_{i}},\quad {\text{|}}{{x}_{p}} - {{X}_{p}}{\text{|}} < \alpha {{D}_{i}}, \\ {\text{|}}{{y}_{i}} - {{Y}_{i}}{\text{|}} < \alpha {{D}_{i}},\quad {\text{|}}{{y}_{p}} - {{Y}_{p}}{\text{|}} < \alpha {{D}_{i}}, \\ {\text{|}}{{d}_{i}} - {{D}_{i}}{\text{|}} < \alpha {{D}_{i}},\quad {\text{|}}{{d}_{p}} - {{D}_{p}}{\text{|}} < \alpha {{D}_{i}}. \\ \end{gathered} $

Для оценки точности работы метода применяется набор или выборка из $N$ изображений, для каждого из которых возможно определить, удовлетворяют ли предсказанные на нем значения $x_{i}^{k},y_{i}^{k},d_{i}^{k},x_{p}^{k},y_{p}^{k},d_{p}^{k}$ неравенствам (1.2). Для обозначения истинных и предсказанных параметров окружностей для k-го по порядку изображения из выборки используются верхние индексы. Совокупность упомянутых параметров применяется для расчета значений следующих мер качества.

1. Средняя абсолютная ошибка оценки диаметра:

(1.3)
$MAE(D,d) = \frac{1}{N}\sum\limits_{k = 1}^N \,{\text{|}}{{D}^{k}} - {{d}^{k}}{\text{|}}\,.$

2. Распределение относительных расстояний между предсказанным и истинным центром окружности:

(1.4)
$H(\alpha ) = \frac{1}{N}\left| {\left\{ {k:\frac{{{{\rho }^{k}}}}{{{{D}^{k}}}} < \alpha ,k \in \overline {1,N} } \right\}} \right|,$
где ${{\rho }^{k}} = \sqrt {{{{({{x}^{k}} - {{X}^{k}})}}^{2}} + {{{({{y}^{k}} - {{Y}^{k}})}}^{2}}} $, |{⋅}| – мощность множества.

3. Распределение относительных ошибок детектирования параметров окружности:

(1.5)
$Q(\alpha ) = \frac{1}{N}\left| {\left\{ {k:\frac{{{{l}^{k}}}}{{{{D}^{k}}}} < \alpha ,k \in \overline {1,N} } \right\}} \right|,$
где ${{l}^{k}} = {\text{|}}{{x}^{k}} - {{X}^{k}}{\text{|}}\; + \;{\text{|}}{{y}^{k}} - {{Y}^{k}}{\text{|}}\; + \;{\text{|}}{{d}^{k}} - {{D}^{k}}{\text{|}}$.

1.2. Переход к задаче классификации. В соответствии с постановкой задачи параметры границ радужки могут быть рассчитаны с относительной ошибкой до 5%. Поэтому отсутствует необходимость обрабатывать входные изображения в полном разрешении, и решение задачи может быть получено без потерь точности при помощи масштабированного к меньшему разрешению изображения при условии корректности условий (1.1). Размер такого изображения может быть выбран как минимальный, позволяющий притом допустить относительную ошибку не более 5%. В предположении, что диаметр радужки принимает свое наименьшее возможное значение и с учетом неравенств (1.1), после масштабирования изображения глаза к размеру W × W диаметр будет равен $D = W{\text{/}}4$. Тогда максимальная допустимая ошибка аппроксимации будет составлять

(1.6)
${{\Delta }_{{{\text{max}}}}} = \alpha {{D}_{i}} = 0.05\frac{W}{4} = \frac{W}{{80}}.$

Таким образом, чтобы максимально возможная ошибка составляла не менее одного пикселя, требуется выполнение неравенства $W \geqslant 80$. Поэтому значение W выбрано равным 80 пикселям, что соответствует наименьшему допустимому значению. Поскольку неравенство (1.1) всегда выполняется, параметры $(x,y,d)$ могут оцениваться как целочисленные. Это означает, что каждый параметр может принимать конечное множество целочисленных значений от 0 до $W - 1$. Каждое из возможных изображений глаз может быть отнесено к одному из $W = 80$ классов: $\mathop {\{ C_{k}^{X}\} }\nolimits_{k = 0}^{W - 1} $, где $C_{k}^{X}$ – класс изображений, для которых верно $X \in [k;k + 1)$. Аналогично, можно отнести изображения к одному из классов $\mathop {\{ C_{k}^{Y}\} }\nolimits_{k = 0}^{W - 1} $ значений Y и классов $\mathop {\{ C_{k}^{D}\} }\nolimits_{k = 0}^{W - 1} $ значений D.

Таким образом, задача определения параметров x, y и $d$ может быть сведена к решению трех задач классификации:

1) на классы $\mathop {\{ C_{k}^{X}\} }\nolimits_{k = 0}^{W - 1} $;

2) на классы $\mathop {\{ C_{k}^{Y}\} }\nolimits_{k = 0}^{W - 1} $;

3) на классы $\mathop {\{ C_{k}^{D}\} }\nolimits_{k = 0}^{W - 1} $.

Если для входного изображения I верны следующие утверждения: $I \in C_{i}^{X}$, $I \in C_{j}^{Y}$, $I \in C_{k}^{D}$, тогда x = i, $y = j$, $d = k$ будут корректными параметрами аппроксимации радужки в смысле условий (1.2).

1.3. Решение задачи классификации. Для решения задачи классификации в данной работе предлагается использовать сверточную нейронную сеть с небольшим количеством параметров в соответствие с идеями, предложенными в [13]. Особое строение сверточных слоев, описанное в этой статье, упрощает применение подобных нейронных сетей в мобильных устройствах. Основным компонентом, из которых состоит предлагаемая сверточная сеть, является блок операций, описанный в табл. 1. В дальнейшем предлагается называть такую последовательность операций MobileConvBlock или MCB, где $M$ и $s$ – параметры MCB, которые определяют соответственно количество каналов тензора после применения блока и шаг применения фильтра в первой операции свертки “depth-wise”.

Таблица 1.

Строение блока $MobileConvBlock(M,s)$

Слой Размер ядра Шаг Размер входного тензора
Depth-wise свертка 3 × 3 s $N \times K \times K$
Batch normalization $N \times \frac{{K - 3}}{s} + 1 \times \frac{{K - 3}}{s} + 1$
Активация ReLu $N \times \frac{{K - 3}}{s} + 1 \times \frac{{K - 3}}{s} + 1$
Свертка 1 × 1 1 $N \times \frac{{K - 3}}{s} + 1 \times \frac{{K - 3}}{s} + 1$
Batch normalization $M \times \frac{{K - 3}}{s} + 1 \times \frac{{K - 3}}{s} + 1$
Активация ReLu $M \times \frac{{K - 3}}{s} + 1 \times \frac{{K - 3}}{s} + 1$

Строение приведенной в данной работе сверточной нейронной сети дано в табл. 2. Гиперпараметры ее архитектуры были выбраны в серии экспериментов как те, которые позволили достичь наилучшей точности решения задачи детектирования на валидационной выборке.

Таблица 2.

Строение нейронной сети для аппроксимации границ радужки

Слой Размер входного тензора
Свертка 3 × 3 1 × 80 × 80
MCB(16, 2) 16 × 78 × 78
MCB(32, 1) 16 × 38 × 38
MCB(32, 2) 32 × 36 × 36
MCB(64, 1) 32 × 18 × 18
MCB(64, 2) 64 × 16 × 16
MCB(64, 1) 64 × 7 × 3
MCB(64, 1) 64 × 5 × 5
Global Average Pooling 64 × 3 × 3
Полносвязный слой для x 64 × 1 × 1
Полносвязный слой для y 64 × 1 × 1
Полносвязный слой для d 64 × 1 × 1
SoftMax для x 80
SoftMax для y 80
SoftMax для d 80

Описанное в табл. 2 строение нейронной сети применяется как для детектирования внешней границы радужной оболочки, так и для внутренней. Будем в дальнейшем называть первую модель IrisModel, а вторую – PupilModel.

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

Этап 1. Определяются параметры внешней границы радужной оболочки, что позволяет сократить область поиска окружности зрачка на втором этапе. Входными данными для нейронной сети первого этапа является изображение глаза, результатом – параметры окружности “радужка–склера” $({{x}_{i}},{{y}_{i}},{{d}_{i}})$, полученные как решения трех задач классификации в соответствии с разд. 1.3.

Этап 2. Осуществляется поиск параметров внутренней окружности $({{x}_{p}},{{y}_{p}},{{d}_{p}})$. Исходя из особенностей строения человеческого глаза и статистических исследований [3], можно ввести ограничения, связывающие между собой упомянутые выше параметры:

(1.7)
${{D}_{p}} \in \left[ {\frac{1}{7}{{D}_{i}};\frac{3}{4}{{D}_{i}}} \right].$

Исходя из (1.7), имеет смысл осуществлять поиск зрачка внутри области изображения, заданного как квадратная область, содержащаяся между точками p1 и p2:

${{p}_{{1,2}}} = \left( {{{x}_{i}} \mp \frac{3}{8}{{d}_{i}},{{y}_{i}} \mp \frac{3}{8}{{d}_{i}}} \right).$

Полученная область изображения масштабируется к размеру W × W с учетом (1.6) и подается в сверточную нейронную сеть, которая осуществляет поиск $({{x}_{p}},{{y}_{p}},{{d}_{p}})$ как решение трех задач классификации в соответствии с разд. 1.3.

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

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

Анализ контрастности пограничных областей позволит получить оценку качества аппроксимации. Граница “радужка–склера” редко видима полностью вследствие перекрытия веками и ресницами, в отличие от области “радужка–зрачок”. При наличии данных о расположении век и ресниц было бы возможно произвести анализ контрастности внешней границы, однако это выходит за рамки предлагаемого в работе метода. Поэтому оценивается только аппроксимация внутренней границы, как изображено на рис. 1.

Рис. 1.

Оценка качества детектирования зрачка: а – области извлечения признаков; б – признаковое описание контрастности границы

Построим признаковое описание для контрастности внутренней границы радужки θp = =  $({{x}_{p}}$yp, dp). Выделим на аппроксимирующей окружности 36 точек с шагом в ϕ = 10°:

$V = \left\{ {\left( {{{x}_{p}} + \frac{{{{d}_{p}}}}{2}cos(k\phi ),{{y}_{p}} + \frac{{{{d}_{p}}}}{2}sin(k\phi )),k = \overline {0.35} } \right)} \right\}.$

Для каждого пикселя $(x,y) \in V$ с помощью билинейной интерполяции можно оценить средние значения яркости изображения снаружи и внутри данной окружности для соседних с (x, y) пикселей. Оценкой контрастности в окрестности (x, y) будет разность этих средних значений. Совокупность этих оценок позволяет построить признаковое описание $f = F(V;I,{{\theta }_{p}})$ для аппроксимирующей окружности. Работа данного алгоритма проиллюстрирована на рис. 1.

Пусть $q \in [0;1]$ – величина, принимающая значение 0 для идеальной аппроксимации окружностями и 1 – для ошибки сегментации. Построим алгоритм, вычисляющий:

(1.8)
$q = {{a}_{p}}(f;{{\theta }_{p}}) = {{a}_{p}}(I;{{\theta }_{p}}).$

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

2. Результаты. Для обучения и тестирования моделей глубокого обучения, осуществляющих поиск параметров границ радужки, применялись данные открытых баз изображений. Использованные базы можно разделить на две группы. Первую составляют базы, содержащие изображения высокого разрешения CASIA 2 [14], ES, ICE [15] и MMU [16], а также UBIRIS v.1 [17], имеющая примеры изображений низкого качества. Вторую группу составляли изображения низкого разрешения, характерные для растров, которые получаются с небольших камер, встраиваемых в мобильные устройства: CASIA Mobile [18] и собранная вручную база изображений Raspberry DB. База изображений CASIA Mobile составлена из трех частей: M1, M2 и M3. В данной работе, однако, были использованы только последние две части, поскольку первая содержит изображения недопустимо низкого в соответствии с (1.6) разрешения. База изображений Raspberry DB была получена вручную при помощи одноименного микрокомпьютера, оборудованного совместимой инфракрасной камерой с активной инфракрасной подсветкой. Более подробная информация об упомянутых базах изображений приведена в табл. 3, а примеры изображений из каждой использованной базы – на рис. 2.

Таблица 3.

Использованные базы изображений радужки

Название Код Количество изображений, тыс. Разрешение
CASIA2-Iris-Lamp CAS 5 640 × 480
ICE Database ICE 3 640 × 480
CASIA-Iris-M1-S2 CM2 5 1968 × 1024
CASIA-Iris-M1-S3 CM3 1 1920 × 1920
ES dataset ES 25 640 × 480
MMU GASPFA MMU 2 320 × 286
Raspberry DB RAS 1 640 × 480
Рис. 2.

Примеры изображений используемых для обучения и тестирования: CAS (а); ICE (б); CM2 (в); CM3 (г); ES (д); MMU (е); RAS (ж)

Целью поставленного вычислительного эксперимента была проверка качества работы предлагаемого метода на изображениях разного качества и из разных доменов. Параметры истинных аппроксимирующих границы радужки окружностей $({{X}_{i}},{{Y}_{i}},{{D}_{i}})$ и $({{X}_{p}},{{Y}_{p}},{{D}_{p}})$ для баз были получены с помощью разметки человека-эксперта.

2.1. Подготовка данных. Все эксперименты с обучением нейронных сетей проводились на обучающей выборке, составленной из изображений баз CASIA2, CASIA Mobile S2 и ES. В качестве валидационной выборки были применены базы изображений MMU, CASIA Mobile S3, а также половина изображений из базы ICE. В качестве отложенной тестовой выборки использовалась другая половина изображений базы ICE и база изображений низкого качества UBIRIS v.1.

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

2.2.  Процедура обучения и подбор гиперпараметров. Архитектура предлагаемых нейронных  сетей  такова, что их выходной слой может содержать произвольное количество нейронов, а значит, осуществлять предсказание произвольного количества классов для координат центра и диаметра. В случае, если количество предсказываемых классов будет превосходить размеры изображения, можно утверждать, что модель будет обучена находить параметры границ радужки с субпиксельной точностью. Однако в данной работе подобный эксперимент не был произведен, поскольку постановка задачи допускает некоторую степень неточности решения задачи детектирования при условии, что применяемая сверточная нейронная сеть будет сравнительно небольшой. Для поиска оптимального размера выходных слоев провели вычислительный эксперимент. Осуществлялось сравнение моделей, предсказывающей количество классов, соразмерное разрешению входного изображения “original” и уменьшенное вдвое “reduced”. Постановка этого эксперимента имела смысл ввиду большого количества возможных искажений видимого качества изображений и неизбежных ошибок экспертной разметки. Каждая модель была обучена на протяжении 50 эпох, после чего проводилось сравнение по мере качества (1.4) со значением $\alpha = 0.05$. Большей точности на валидационной выборке достигли модели с размерами выходных слоев “original”. В дальнейших экспериментах были использованы соответствующие их версии. Отличия по качеству решения задачи для IrisModel составили 85.3% против – 60.9%, для PupilModel – 99.7% против – 99.1%. Заметим, что разные версии моделей PupilModel практически не отличаются по точности решения задачи аппроксимации границы зрачка, что можно объяснить тем, что поиск производится уже внутри выделенной области радужки, тогда как IrisModel вынуждена искать положение центра глаза на изображении периокулярной области, которая, как правило, более вариабельна.

После выбора размеров выходных слоев обе модели обучались на протяжении 128 эпох на независимых выборках. Полученные значения мер качества (1.3)–(1.5) приведены в табл. 4.

Таблица 4.

Качество моделей на валидационной и тестовой выборках

Модель Выборка $H(0.05)$ $H(0.1)$ $H(0.2)$ MAE
%
IrisModel Валидация 88.03 99.76 99.9 0.54
Тест 90.1 99.5 99.9 0.43
PupilModel Валидация 99.76 99.4 99.9 0.7
Тест 95.48 99.6 99.9 0.9

2.3. Применение моделей в комбинации. Детектирование границ радужной оболочки на изображении глаза осуществляется в два этапа, как описано в разд. 1.4. Качество работы комбинации двух моделей оценивается при помощи меры качества (1.5). В данном эксперименте применялись следующие базы изображений: CASIA Mobile S3, Raspberri DB, UBIRIS v.1, MMU и ICE как составляющие валидационной и тестовой выборок.

Определение точности комбинации моделей IrisDet и PupilDet было проведено как совместно с применением алгоритма оценки качества аппроксимации границы ${{a}_{p}}(I;{{\theta }_{p}})$ (1.8), так и без него (табл. 5). Для изображений, где найденная окружность “зрачок–радужка” была помечена ${{a}_{p}}(I$; θp) как ошибочная, изображение не учитывалось при расчете меры качества (1.8). Скорректированные таким образом значения данной меры качества приведены в столбцах $Q_{p}^{a}$ и $Q_{i}^{a}$. Доля объектов с неверными метками ошибочной аппроксимации внутренней границы радужки рассмотрена в столбце FRR.

Таблица 5.

Результаты применения комбинации моделей

База изображений ${{Q}_{p}}(0.05)$ ${{Q}_{i}}(0.05)$ $Q_{p}^{a}(0.05)$ $Q_{i}^{a}(0.05)$ $FRR$
%
Raspberri DB 95.5 98.34 97.4 98.34 0.2
CASIA Mobile S3 97.9 98.5 98.1 98.6 0.9
UBIRIS v.1 85.8 95.3 98.7 98.1 9.1
ICE 97.6 95.8 98.6 95.8 0.7
MMU 88.3 98.5 90.2 98.8 0.2

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

1) размер области глаза выбирается случайно из равномерного распределения $U(2{{D}_{i}},4{{D}_{i}})$;

2) координаты центра области (x, y) выбираются случайно из равномерного распредления $U( - {{D}_{i}},{{D}_{i}})$.

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

Приведенные результаты вычислительного эксперимента демонстрируют снижение качества работы предлагаемого метода на базах изображений низкого качества, таких, как UBIRIS. Данная база содержит изображения с низкой контрастностью на границе “зрачок–радужка”, что также подтверждает высокий уровень ложных срабатываний предложенного алгоритма ${{a}_{p}}(I;{{\theta }_{p}})$ в столбце FRR, что, несомненно, усложняет задачу аппроксимации границ радужки. Обучающая выборка предлагаемого метода имеет сравнительно малое количество примеров изображений глаз, видимое качество которых подобно изображениям UBIRIS. Наконец, база изображений UBIRIS отличается не только низким контрастом границы “зрачок–радужка”, но и рапределением размеров зрачка относительно радужки: большая часть изображений содержит в себе зрачки малого размера, сопоставимого по величине с бликом от осветителя. Низкая точность работы детектора зрачка на базе MMU вызвана низким разрешением исходных изображений и аналогично UBIRIS – большим количеством изображений с малым видимым размером зрачка.

2.4. Применение моделей с последующим уточнением. Помимо описанного в предыдущем разделе способа применения комбинации моделей, было проанализировано использование последующего уточнения получаемой аппроксимации границ с помощью метода [2] со значительно суженной областью поиска. По построению предлагаемый метод имеет ошибку детектирования не выше 5% от истинного диаметра радужки. Таким образом, область поиска параметров границы $\hat {\theta } = (\hat {x},\hat {y},\hat {d})$ при уточнении методом [2] можно определить следующим образом в зависимости от первичной аппроксимации $\theta = (x,y,d)$:

$\hat {x} \in [x - 0.05{{D}_{i}};x + 0.05{{D}_{i}}]\,,$
$\hat {y} \in [y - 0.05{{D}_{i}};y + 0.05{{D}_{i}}]\,,$
$\hat {d} \in [d - 0.05{{D}_{i}};d + 0.05{{D}_{i}}]\,.$

Вычислительная стоимость поиска внутри такой области пространства параметров будет сравнительно невысокой. Результаты применения предлагаемого метода с уточнениями даны в табл. 6.

Таблица 6.

Результаты применения комбинации моделей с последующим уточнением

База изображений ${{Q}_{p}}(0.05)$ ${{Q}_{i}}(0.05)$ $Q_{p}^{a}(0.05)$ $Q_{i}^{a}(0.05)$ $FRR$
%
Raspberri DB 96.1 98.3 97.9 98.9 0.1
CASIA Mobile S3 98.3 98.7 98.7 99.0 0.3
UBIRIS v.1 84.5 97.5 92.7 98.9 5.9
ICE 97.6 95.8 98.6 95.8 0
MMU 89.2 98.8 92.3 99.2 0.1

Уточнение границ радужной оболочки при помощи классического метода [2] позволяет повысить качество работы комбинации методов и снизить долю ложных срабатываний алгоритма ${{a}_{p}}(I;{{\theta }_{p}})$ на базе UBIRIS, вызванных низкой контрастностью на границе “зрачок–радужка” и ошибками детектирования зрачка. Однако прирост точности детектирования для границы зрачка нельзя назвать существенным. Аналогично для базы изображений MMU применение метода [2] для уточнения границы зрачка не привело к значительным улучшениям, поскольку данный метод работает неустойчиво на изображениях с небольшими по величине зрачками.

2.5. Сравнение с существующими методами. Предлагаемый метод детектирования границ радужной оболочки на изображении глаза также сравнивался с иными методами, описанными в [24, 19, 20]. Сравнение производилось с применением базы изображений MMU при помощи следующих мер качества:

1) относительная ошибка детектирования центров:

${{\varepsilon }_{c}} = \frac{1}{N}\sum\limits_{k = 1}^N \,\sqrt {{{{({{y}^{k}} - {{Y}^{k}})}}^{2}} + {{{({{x}^{k}} - {{X}^{k}})}}^{2}}} ;$

2) относительная ошибка детектирования радиусов:

${{\varepsilon }_{r}} = \frac{1}{N}\sum\limits_{k = 1}^N \,{\text{|}}{{r}^{k}} - {{R}^{k}}{\text{|}}\,.$

Помимо точности детектирования в сравнение было включено медианное время выполнения (${{t}_{{c + r}}}$) на одном ядре процессора Snapdragon 845. Результаты приведены в табл. 7.

Таблица 7.

Результаты сравнения с существующими методами

Мера качества Метод детектирования
Уильдс Дугман Мазек Ма Ганькин CNN CNN и уточнение
${{\varepsilon }_{c}}$ 3.15 2.61 4.98 3.92 0.97 1.4 1.3
${{\varepsilon }_{r}}$ 6.12 4.39 5.15 5.39 1.13 1.9 1.7
${{t}_{{c + r}}}$ (ms) 379.61 523.14 97.52 363.64 106.60 8 10

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

Список литературы

  1. Вельховер Е.С., Шульпина Н.Б., Алиева З.А., Ромашов Ф.Н. Иридодиагностика. М.: Медицина, 1988. 240 с.

  2. Daugman J. How Iris Recognition Works // Proc. Intern. Conf. on Image Processing. Rochester, N.Y., USA, 2002. P. 33–36.

  3. Ганькин К.А., Гнеушев А.Н., Матвеев И.А. Сегментация изображения радужки глаза, основанная на приближенных методах с последующими уточнениями // Изв. РАН. ТиСУ. 2014. № 2. С. 80–94.

  4. Wildes R.P. Iris Recognition: An Emerging Biometric Technology // Proceedings of IEEE. 1997. V. 85. № 9. P. 1348–1363.

  5. Матвеев И.А. Поиск центра радужки на изображении методом Хафа с двумерным пространством параметров // Изв. РАН. ТиСУ. 2012. № 6. С. 44–51.

  6. Szczepański A., Misztal K., Saeed K. Pupil and Iris Detection Algorithm for Near-infrared Capture Devices // IFIP Intern. Conf. on Computer Information Systems and Industrial Management. Springer, 2015. P. 141–150.

  7. Santini T., Fuhl W., Kasneci E. Pure: Robust Pupil Detection for Real-time Pervasive Eye Tracking // Computer Vision and Image Understanding. 2018. V. 170. P. 40–50.

  8. Alkazzaz A.A.J., Wang K., Aladool G.J. M. Precise Pupil Boundary Detection Using Angular Integral Projection and Active Contour Model // Proc. Fourth Intern. Conf. on Engineering & MIS. Istanbul, Turkey, 2018. P. 62.

  9. Смирнов Д.А., Матвеев И.А. Определение границ век на изображении глаза методом активных контуров // Тр. ИСА РАН. Динамика неоднородных систем. 2006. Т. 25. № 2. С. 200–207.

  10. Matveev I., Simonenko I. Detecting Precise Iris Boundaries by Circular Shortest Path Method // Pattern Recognition and Image Analysis. 2014. V. 24. № 2. P. 304–309.

  11. Gangwar A., Joshi A., Joshi P., Raghavendra R. Deepirisnet2: Learning Deep-iriscodes from Scratch for Segmentation-robust Visible Wavelength and Near Infrared Iris Recognition // arXiv preprint arXiv:1902.05390. 2019. Available at: https://arxiv.org/abs/1902.05390.

  12. Fuhl W., Santini T., Kasneci G., Kasneci E. Pupilnet: Convolutional Neural Networks for Robust Pupil Detection // arXiv preprint arXiv:1601.04902. 2016. Available at: https://arxiv.org/abs/1601.04902.

  13. Howard A., Zhu M., Chen B., Kalenichenko D., Wang W., Weyand T., Andreetto M., Adam H. Mobilenets: Efficient Convolutional Neural Networks for Mobile Vision Applications // arXiv preprint arXiv:1704.04861. 2017. Available at: https://arxiv.org/abs/1704.04861.

  14. Chinese Academy of Sciences Institute of Automation. CASIA-IrisV2: CASIA-Iris-Lamp Image Database. Available at: http://www.cbsr.ia.ac.cn/IrisDatabase.htm.

  15. ICE Database. Available at: http://www.nist.gov/itl/iad/ig/ice.cfm.

  16. Ho C.C., Ng H., Tan W.H., Ng K.W., Tong H.L., Yap T.T.V., Chong P.F., Eswaran C., Abdullah J. MMU GASPFA: A COTS Multimodal Biometric database // Pattern Recognition Letters. 2013. V. 34. № 15. P. 2043–2050.

  17. Proença H., Alexandre L.A. Ubiris: A Noisy Iris Image Database // Intern. Conf. on Image Analysis and Processing. Springer, 2005. P. 970–977.

  18. Chinese Academy of Sciences Institute of Automation. Casia-mobile Database. Available at: http://www.cbsr.ia.ac.cn/IrisDatabase.htm.

  19. Masek L., Kovesi P. MATLAB Source Code for a Biometric Identification System Based on Iris Patterns // Master Thesis. The School of Computer Science and Software Engineering. The University of Western Australia, 2003.

  20. Ma L., Tan T., Wang Y., Zhang D. Local Intensity Variation Analysis for Iris Recognition // Pattern Recognition. 2004. V. 37. № 6. P. 1287–1298.

Дополнительные материалы отсутствуют.