Область техники
[0001] Настоящее изобретение относится к способу биометрической аутентификации пользователя и вычислительному устройству, реализующему упомянутый способ. Более конкретно, настоящее изобретение относится к такому способу биометрической аутентификации пользователя, который содержит извлечение признаков радужной оболочки фактического пользователя и сопоставление упомянутых признаков радужной оболочки фактического пользователя с эталонными признаками радужной оболочки законного пользователя для аутентификации, является ли фактический пользователь законным пользователем.
Уровень техники
[0002] С ростом доступности вычислительных устройств, оборудованных высокопроизводительными камерами и датчиками, и появлением различных приложений, требующих биометрической аутентификации пользователя для соблюдения требований безопасности, в уровне техники были предложены разнообразные способы и устройства биометрической аутентификации пользователя. Одним из способов биометрический аутентификации является использование уникальных особенностей радужной оболочки глаза пользователя.
[0003] В большинстве случаев такие способы и устройства биометрической аутентификации пользователя предполагают получение изображения, сегментацию изображения для получения изображения радужной оболочки глаза, нормализацию изображения радужной оболочки глаза, извлечение признаков радужной оболочки глаза и сопоставление получаемых в результате признаков радужной оболочки глаза с предварительно полученными и сохраненными признаками радужной оболочки глаза законного пользователя для аутентификации, является ли фактический пользователь законным пользователем.
[0004] Вышеописанный подход к биометрической аутентификации пользователя все еще не лишен недостатков, поскольку обладает высокой чувствительностью к менее контролируемому окружению, динамике глаз и иным особенностям пользователя устройства. Под менее контролируемым окружением понимается, например, недостаточная освещенность, избыточная освещенность. Под динамикой глаз и особенностям пользователя понимается, например, значительное сужение и расширения зрачка, перекрывание радужной оболочки веком, бликом от очков, моргание, а также вызывающие смазывание изображения тремор рук и быстрая ходьба. Таким образом, характеристики известного из уровня техники подхода подвержены сильному влиянию окружающего освещения, освещенности радужной оболочки глаза, ношения очков и контактных линз, расширения/сужения зрачка, преграждения радужной оболочки веком, ресницами и т.д., что в результате приводит к ухудшению качества изображения, по которому проводится биометрическая аутентификация пользователя, возникновению ошибок при биометрической аутентификации пользователя, снижению характеристик распознавания, высокой чувствительности к внутриклассовым отклонениям и снижению удобства такого подхода для пользователя.
Описание связанных документов уровня техники
[0005] Из уровня техники известна заявка на патент США, опубликованная 11.01.2018 как US 2018/0012071 A1 и озаглавленная ʺAdaptive Quantization Method For Iris Image Encodingʺ. Данная заявка раскрывает вычисление пиксельной оценки с использованием квантованного изображения и маски радужной оболочки глаза и использование дополнительного адаптивного кодирования для удаления неустойчивой информации. Недостатками такого решения являются высокая чувствительность к внутриклассовым отклонениям и ограниченная производительность в неблагоприятно освещенном окружении.
[0006] Из уровня техники известна другая заявка на патент США, опубликованная 18.01.2018 как US 2018/0018516 A1 и озаглавленная ʺMethod And Apparatus For Iris Recognitionʺ. Данная заявка раскрывает вычисление пиксельной оценки с использованием квантованного изображения и маски радужной оболочки глаза. Недостатками такого решения также являются высокая чувствительность к внутриклассовым отклонениям и ограниченная производительность в неблагоприятно освещенном окружении.
[0007] Из уровня техники известен патент США, опубликованный 30.08.2016 как US 9,430,629 B1 и озаглавленный ʺPerforming biometrics in uncontrolled environmentsʺ. Данный патент раскрывает использование информации об окружении для выполнения сопоставления, а также использование двух типов биометрической информации (голос и лицо). Недостатками такого решения являются: необходимость использования биометрических признаков двух разных модальностей (голоса и лица), что создает дополнительное неудобство использования, увеличивая время аутентификации, а также более низкая точность распознавания по сравнению с использованием особенностей радужной оболочки.
[0008] Из уровня техники также известен патент США, опубликованный 24.11.2015 как US 9,195,890 B2 и озаглавленный ʺIris biometric matching systemʺ. Данный патент раскрывает построение и сопоставление кодов радужной оболочки различного разрешения. Согласно решению из патента `890, маска 610 является объединением двух масок: маски областей зеркальных отражений, век, ресниц и маски областей, в которых локальное фазовое измерение является неустойчивым (неустойчивых областей). Недостатками такого решения являются высокая чувствительность к внутриклассовым отклонениям, приводящая к повышению уровня ошибок распознавания.
[0009] Различные другие реализации известны в данной области техники, но, насколько можно разумно установить из их доступной документации, эти реализации не могут адекватно решить все проблемы, решаемые описанным в данной заявке изобретением.
Сущность изобретения
[0010] В предпочтительном варианте осуществления настоящего изобретения предложен способ биометрической аутентификации пользователя на вычислительном устройстве, содержащий этапы, на которых: принимают (S100) предварительно извлеченную и сохраненную по меньшей мере одну карту признаков радужной оболочки законного пользователя вычислительного устройства; получают (S105) изображение радужной оболочки текущего пользователя, в отношении которого следует провести биометрическую аутентификацию; извлекают (S110) из изображения радужной оболочки текущего пользователя по меньшей мере одну карту признаков радужной оболочки текущего пользователя вычислительного устройства посредством обработки этого изображения радужной оболочки текущего пользователя первым блоком предварительно обученной сверточной нейронной сети, который использовался для предварительного извлечения упомянутой по меньшей мере одной карты признаков радужной оболочки законного пользователя вычислительного устройства при операции первичной регистрации законного пользователя на данном вычислительном устройстве; осуществляют построение (S115) вектора признаков сравнения верхнего уровня посредством выполнения поэлементной операции над элементами упомянутой по меньшей мере одной карты признаков и соответствующими элементами упомянутой по меньшей мере одной карты признаков; осуществляют представление (S120) вектора признаков сравнения верхнего уровня посредством отображения вектора признаков сравнения верхнего уровня в другое признаковое пространство с использованием одного или более наборов дополнительных слоев упомянутой сверточной нейронной сети для получения вектора признаков сравнения верхнего уровня; осуществляют конкатенацию (S125) или иную поэлементную операцию над упомянутыми по меньшей мере одной картой признаков и упомянутой по меньшей мере одной картой признаков для получения, соответственно, результата конкатенации или результата иной поэлементной операции над картами признаков; осуществляют построение (S130) вектора признаков сравнения глубокого уровня посредством обработки результата конкатенации или результата иной поэлементной операции над картами признаков вторым блоком упомянутой сверточной нейронной сети; осуществляют представление (S135) вектора признаков сравнения глубокого уровня посредством отображения вектора признаков сравнения глубокого уровня в другое признаковое пространство с использованием одного или более наборов дополнительных слоев сверточной нейронной сети для получения вектора признаков сравнения глубокого уровня; осуществляют конкатенацию (S140) над упомянутым вектором признаков сравнения верхнего уровня и вектором признаков сравнения глубокого уровня для получения вектора ; осуществляют представление (S145) вектора с использованием одного или более наборов дополнительных слоев сверточной нейронной сети для получения значения степени схожести радужной оболочки текущего пользователя с радужной оболочкой законного пользователя; и принимают решение (S150), является ли текущий пользователь вычислительного устройства законным пользователем вычислительного устройства, на основе сравнения упомянутого значения степени схожести с пороговым значением.
[0011] Целью настоящего изобретения является улучшение характеристик биометрической аутентификации пользователя, проводимой в условиях менее контролируемого окружения на мобильных вычислительных устройствах пользователя, которые обладают ограниченными вычислительными ресурсами. Как указывалось выше, решениям из уровня техники присущ ряд проблем, которые следует решить, в частности: 1) применение решений уровня техники, в которых используется фильтр Габора и вычисляется расстояние Хэмминга, является крайне ограниченным в условиях менее контролируемого окружения; 2) решения уровня техники, в которых применяется Глубокая Нейронная Сеть (DNN), являются вычислительно сложными, что накладывает ограничение на их применение на мобильных вычислительных устройствах пользователя, которые обладают ограниченными вычислительными ресурсами; 3) существующие архитектуры решений уровня техники, которые основаны на DNN, не обеспечивают значительного улучшения характеристик биометрической аутентификации пользователя, проводимой в условиях менее контролируемого окружения, и требуют значительного объема памяти для хранения собственных параметров.
[0012] Описанные в данной заявке способ биометрической аутентификации пользователя на вычислительном устройстве и мобильное вычислительное устройство, реализующее упомянутый способ, способны решить вышеуказанные технические проблемы в уровне техники с достижением технического результата. Благодаря предложенной архитектуре характеристики биометрической аутентификации пользователя улучшаются - возрастает точность аутентификации, приводя в результате к ускорению процедуры аутентификации. Легковесность архитектуры сверточной нейронной сети, используемой в способе, делает этот способ пригодным к применению на мобильных вычислительных устройствах пользователя, обладающих ограниченными ресурсами. В частности, согласно настоящему изобретению улучшение характеристик биометрической аутентификации пользователя, проводимой в условиях менее контролируемого окружения на мобильных вычислительных устройствах пользователя, которые обладают ограниченными вычислительными ресурсами, обеспечивается за счет использования легковесной архитектуры сверточной нейронной сети, в которой применяются признаки верхнего уровня изображения, признаки глубокого уровня изображения и, опционально, дополнительные (относящиеся к окружению) признаки, и в которой также используется вариационный вывод для регуляризации с целью повышения обобщающей способности сети, следствием чего является снижение уровня ошибок распознавания. Наконец, все вышеописанные благоприятные эффекты повышают удобство для пользователя.
Краткое описание чертежей
[0013] Другие благоприятные эффекты настоящего изобретения станут очевидны обычному специалисту в данной области техники после ознакомления с нижеследующим подробным описанием различных вариантов его осуществления, а также с чертежами, на которых:
[Фиг. 1] Фигура 1 иллюстрирует предпочтительный вариант осуществления способа биометрической аутентификации пользователя на вычислительном устройстве.
[Фиг. 2] Фигура 2 иллюстрирует дополнительный вариант осуществления способа биометрической аутентификации пользователя на вычислительном устройстве.
[Фиг. 3] Фигура 3 иллюстрирует предпочтительный вариант осуществления обработки изображения радужной оболочки текущего пользователя первым блоком предварительно обученной сверточной нейронной сети.
[Фиг. 4] Фигура 4 иллюстрирует дополнительный вариант осуществления обработки изображения радужной оболочки текущего пользователя первым блоком предварительно обученной сверточной нейронной сети.
[Фиг. 5] Фигура 5 иллюстрирует дополнительный вариант осуществления способа биометрической аутентификации пользователя на вычислительном устройстве.
[Фиг. 6] Фигура 6 иллюстрирует предпочтительный вариант осуществления вычислительного устройства пользователя.
[Фиг. 7] Фигуры 7(a)-(b) иллюстрируют результаты проведенного эксперимента.
Подробное описание вариантов осуществления изобретения
[0014] Предпочтительные варианты осуществления настоящего изобретения ниже описаны более подробно со ссылкой на чертежи, на которых идентичные элементы на разных фигурах, по возможности, идентифицируются одинаковыми ссылочными позициями. Эти варианты осуществления представлены посредством пояснения настоящего изобретения, которыми, однако, не следует его ограничивать. Специалисты в данной области техники поймут после ознакомления с настоящим подробным описанием и чертежами, что могут быть сделаны различные модификации и варианты.
[0015] На фигуре 1 проиллюстрирован предпочтительный вариант осуществления способа биометрической аутентификации пользователя на вычислительном устройстве. На этапе (S100) принимают предварительно извлеченную и сохраненную по меньшей мере одну карту признаков радужной оболочки законного пользователя вычислительного устройства. Карта признаков радужной оболочки законного пользователя может быть предварительно извлечена в рамках процедуры первичной регистрации (от англ. ʺenrollmentʺ) нового законного пользователя на вычислительном устройстве. Процедура первичной регистрации нового законного пользователя на вычислительном устройстве может включать в себя получение изображения нового законного пользователя устройства, обработку этого изображения обученной сверточной нейронной сетью для извлечения из этого изображения карты признаков радужной оболочки законного пользователя, и сохранение извлеченной карты признаков радужной оболочки законного пользователя в защищенном виде в памяти вычислительного устройства пользователя для последующего использования этой карты признаков радужной оболочки законного пользователя в качестве опорной в рамках процедуры последующей биометрической аутентификации пользователя на вычислительном устройстве. Обычно процедура регистрации нового пользователя проводится на вычислительном устройстве при первичном включении. Обученная сверточная нейронная сеть, с помощью которой извлекают карту признаков радужной оболочки законного пользователя, впоследствии используется на стадии биометрической аутентификации пользователя на вычислительном устройстве при определении, является ли некоторый текущий пользователь именно законным пользователем. Сверточная нейронная сеть, отвечающая за описанную выше обработку, может функционировать на локальном вычислительном устройстве. Это позволяет повысить конфиденциальность личных биометрических данных пользователя. В другом варианте осуществления сверточная нейронная сеть может храниться в защищенном облаке и к ней может осуществляться оперативный доступ с вычислительного устройства пользователя. Этот вариант осуществления позволяет перенести часть вычислительной нагрузки, которая имеет место при извлечении карты признаков из изображения, за пределы вычислительного устройства пользователя.
[0016] После завершения процедуры регистрации нового пользователя вычислительное устройство наделяется возможностью проведения биометрической аутентификации для определения, является ли некоторый текущий пользователь законным пользователем устройства или нет. На этой стадии способ, проиллюстрированный на фигуре 1, содержит получение изображения радужной оболочки некоторого текущего пользователя, в отношении которого следует провести биометрическую аутентификацию. Данный этап может проводится камерой вычислительного устройства. Должно быть понятно, что данное раскрытие может успешно применяться для биометрической аутентификации пользователя не только на основе изображения радужной оболочки глаза пользователя, но также и на основе любых других данных о пользователе, которые могут быть получены в форме изображения, например, но без ограничения упомянутым, по отпечатку пальца, по сетчатке глаза, по геометрии руки, по геометрии лица, по термограмме лица, по форме век, ресниц, текстуры кожи и т.п., так называемое периокулярное распознавание, по венам, по отпечатку ладони и т.д. В этом случае получают и обрабатывают раскрытыми в данной заявке способами не изображение радужной оболочки, а соответствующее изображение другой необходимой части тела пользователя, подвергаемого биометрической аутентификации, как например, изображение лица пользователя, для биометрической аутентификации по геометрии лица.
[0017] Затем из изображения радужной оболочки текущего пользователя извлекают на этапе (S110) по меньшей мере одну карту признаков радужной оболочки текущего пользователя вычислительного устройства посредством обработки этого изображения радужной оболочки текущего пользователя первым блоком предварительно обученной сверточной нейронной сети, который использовался для предварительного извлечения упомянутой по меньшей мере одной карты признаков радужной оболочки законного пользователя вычислительного устройства при операции первичной регистрации законного пользователя на данном вычислительном устройстве. В одном варианте осуществления заявленного способа обработка изображения радужной оболочки текущего пользователя первым блоком предварительно обученной сверточной нейронной сети на этапе (S110) может содержать следующие подэтапы, на которых обрабатывают (S110.1) изображение не более, чем n сверточными слоями первого блока предварительно обученной сверточной нейронной сети c величиной шага свертки (от англ. ʺstrideʺ), равной не менее 1, без активации, с понижением размерности (от англ. ʺpoolingʺ ) или без него, при этом количество n сверточных слоев равно 3, более предпочтительно 2, наиболее предпочтительно 1; обрабатывают (S110.2) результат свертки, получаемый на выходе упомянутых не более, чем n сверточных слоев, не более, чем i преобразованиями, выбираемыми из группы, содержащей: преобразование функцией гиперболического тангенса tanh(x) и/или любой иной функцией активации, преобразование функцией квантования, бинаризацию , при этом количество i преобразований равно 3, более предпочтительно 2, еще более предпочтительно 1. Такая архитектура сверточной нейронной сети гарантирует легковесность сверточной нейронной сети со всеми вытекающими благоприятными эффектами. В предпочтительном варианте осуществления первый блок сверточной нейронной сети содержит единственный слой свертки с величиной шага свертки, равной 1. В этом предпочтительном варианте осуществления первый блок сверточной нейронной сети не выполняет активацию, не понижает размерность, и не выполняет преобразование любой иной функцией активации. В предпочтительном варианте осуществления после единственного слоя свертки выполняют единственное преобразование, т.е. i=1, функцией гиперболического тангенса с последующей бинаризацией результата преобразования согласно . Должно быть понято, что разделение сверточной нейронной сети на первый блок и второй блок (будет описан ниже по тексту заявки) обязательным не является. Другими словами, если архитектура и параметры первого блока и второго блока сверточной нейронной сети совпадают (один из предусмотренных дополнительных вариантов осуществления) вместо использования сети с двумя различными блоками может быть использована сеть без разделения на блоки. Упомянутой иной функцией активации может быть любая из перечисленных: sigmoid(x), arctg(x), softsign(x), relu(x), elu(x), prelu(x), sin(x) и др. В предпочтительном варианте осуществления изобретения за операцией свертки единственным сверточным слоем следует единственная операция преобразования. В других вариантах осуществления, в которых n>1 и i>1, сверточные слои могут чередоваться с операциями преобразования, например, после операции свертки первым сверточным слоем идет операция первого преобразования и т.д. В других вариантах осуществления операции преобразования могут выполняться после операций свертки некоторыми, но не всеми, сверточными слоями. Один пример описанного в данном абзаце варианта осуществления этапа (S110) проиллюстрирован на фигуре 3. Другой вариант осуществления этапа (S110) проиллюстрирован на фигуре 4. В этом варианте осуществления какие-либо преобразования не используются или пропускаются, а результат свертки одного или большего количества сверточных слоев выводится «как есть», т.е. i=0.
[0018] Затем на этапе (S115) способа осуществляют построение вектора признаков сравнения верхнего уровня посредством выполнения поэлементной операции над элементами упомянутой по меньшей мере одной карты признаков и соответствующими элементами упомянутой по меньшей мере одной карты признаков. Поэлементная операция в одном варианте осуществления данного построения выполняется согласно следующему уравнению:
Уравнение 1:
,
где представляет собой показатель для пары соответствующих карт признаков. Упомянутый показатель отражает степень различия между соответствующими парами карт признаков и .
[0019] В предпочтительном варианте осуществления этапа (S115) при построении вектора признаков сравнения верхнего уровня дополнительно учитываются маска радужной оболочки законного пользователя вычислительного устройства и маска радужной оболочки некоторого текущего пользователя, который в настоящий момент проходит процедуру биометрической аутентификации. Каждая из этих масок может быть получена посредством отделения области радужной оболочки на изображении радужной оболочки пользователя от областей, являющихся шумом: ресниц, век, бликов от очков, предметов, перекрывающих радужную оболочку. Сама методика, согласно которой производят это отделение, известна из уровня техники, см., например, более раннюю заявку данного Заявителя на патент РФ под номером 2016129250, и является аналогичной для получения как маски , так и маски Для обеспечения масок в способе биометрической аутентификации данный предпочтительный вариант может предусматривать дополнительные этапы, на которых принимают (S101) предварительно извлеченную и сохраненную по меньшей мере одну нормированную маску радужной оболочки законного пользователя вычислительного устройства, масштабированную до размера упомянутой по меньшей мере одной карты признаков и получают (S106) маску радужной оболочки, соответствующую упомянутому изображению радужной оболочки текущего пользователя. Учет этих масок в поэлементной операции в этом варианте осуществления может быть выполнен следующему уравнению:
Уравнение 2:
,
где , a представляет собой показатель для пары соответствующих карт признаков.
Использование масок в данном предпочтительном варианте осуществления позволяет повысить точность биометрической аутентификации.
[0020] В другом варианте осуществления этапа (S115) используемой поэлементной операцией может быть l1-норма или l2-норма, проводимая над элементами упомянутой по меньшей мере одной карты признаков и соответствующими элементами упомянутой по меньшей мере одной карты признаков.
[0021] Затем, согласно способу, осуществляют на этапе (S120) представление вектора признаков сравнения верхнего уровня посредством отображения вектора признаков сравнения верхнего уровня в другое признаковое пространство с использованием одного или более наборов дополнительных слоев упомянутой сверточной нейронной сети для получения вектора признаков сравнения верхнего уровня. Результатом отображения вектора в другое признаковое пространство является вектор . Детальное описание данного этапа будет приведено ниже после описания этапа (S145).
[0022] После этого осуществляют конкатенацию (S125) или иную поэлементную операцию над упомянутыми по меньшей мере одной картой признаков и упомянутой по меньшей мере одной картой признаков для получения, соответственно, результата конкатенации или результата иной поэлементной операции над картами признаков. Иной поэлементной операцией может быть разность, взятая по модулю или возведенная в степень, сумма или произведение значений для соответствующих пар элементов.
[0023] Затем на этапе (S130) осуществляют построение вектора признаков сравнения глубокого уровня посредством обработки результата конкатенации или результата иной поэлементной операции над картами признаков вторым блоком упомянутой сверточной нейронной сети. Варианты осуществления, т.е. возможные архитектуры и параметры, второго блока сверточной нейронной сети аналогичны описанным выше вариантами осуществления первого блока сверточной нейронной сети и их повторное описание тут не приводится в целях лаконичности. Архитектура (т.е. количество и порядок сверточных слоев и преобразований) и параметры первого и второго блока могут совпадать, либо отличаться в зависимости от допустимого количества параметров сети, которое, в свою очередь, определяется в соответствии с требованиями по скорости обработки данных и заданной точности распознавания.
[0024] Затем на этапе (S135) осуществляют представление вектора признаков сравнения глубокого уровня посредством отображения вектора признаков сравнения глубокого уровня в другое признаковое пространство с использованием одного или более наборов дополнительных слоев сверточной нейронной сети для получения вектора признаков сравнения глубокого уровня. Детальное описание данного этапа будет приведено ниже после описания этапа (S145)
[0025] Затем на этапе (S140) осуществляют конкатенацию над упомянутым вектором признаков сравнения верхнего уровня и вектором признаков сравнения глубокого уровня для получения вектора Вектор является результатом конкатенации векторов . В дополнительном варианте осуществления данного этапа (S140) при осуществлении конкатенации может быть дополнительно использована вспомогательная информация, характеризующая условия, в которых изображение радужной оболочки текущего пользователя было получено. В частности, такой вспомогательной информацией может быть, но без ограничения упомянутым, коэффициент расширения зрачка, разность в освещенности, степень перекрытия радужной оболочки посторонним объектом (различными бликами, рамками очков, веком, ресницами и т.д.), численно выраженное количество информации об области пересечения регионов пары сравниваемых радужных оболочек, не перекрытых посторонними объектами. Таким образом, указанная вспомогательная информация может конкатенироваться на данном этапе вместе с упомянутым вектором признаков сравнения верхнего уровня и вектором признаков сравнения глубокого уровня. Применение такой вспомогательной операции на данном этапе позволяет учитывать важные факторы окружения и повысить точность распознавания. Вариант осуществления способа биометрической аутентификации пользователя с применением такой вспомогательной информации на данном этапе (S140) проиллюстрирован на фигуре 5.
[0026] На этапе (S145) осуществляют представление вектора с использованием одного или более наборов дополнительных слоев сверточной нейронной сети для получения значения степени схожести радужной оболочки текущего пользователя с радужной оболочкой законного пользователя. Упомянутым одним или более набором дополнительных слоев сверточной нейронной сети, которые используются для отображения векторов , , в другое признаковое пространство на этапах представления (S120, S135, S145), являются соответствующие один или более наборы полносвязных слоев одинаковой размерности, которые расположены последовательно друг за другом и задают параметры одного или более распределений результатов представления, причем количество распределений определяется количеством наборов. Количество упомянутого одного или более дополнительных слоев в наборе определяется количеством упомянутых параметров одного или более распределений, а размерность распределений соответственно количеством элементов, которое каждый из упомянутых слоев содержит. Каждое из упомянутых распределений является стандартным нормальным распределением, параметрами которого являются математическое ожидание и дисперсия, или распределением иного вида с иным набором параметров. В качестве таких распределений иных видов с иным набором параметров могут быть рассмотрены и использованы следующие: гамма распределение, логарифмическое нормальное распределение, распределение Пуассона и др. Признаковые пространства, в которые осуществляют отображения векторов на этапах представления (S120, S135), могут представлять собой пространства повышенной размерности, пространства пониженной размерности или пространства размерности, равной размерности отображаемых векторов . Признаковое пространство, в которое осуществляют отображение вектора на этапе представления (S145), представляет собой пространство, размерность которого равна 1 (т.е. оно определяет единственное значение степени схожести). Таким образом, результат отображения в такое пространство является значением степени схожести.
[0027] Упомянутую сверточную нейронную сеть, используемую на этапах осуществления представления (S120, S135, S145), предварительно обучают с использованием вариационного вывода, при этом вариационный вывод при обучении сверточной нейронной сети производят путем семплирования случайным образом значений из упомянутых распределений. Вариационный вывод производится на этапе обучения и представляет собой выбор значений из упомянутых распределений, задаваемых набором полносвязных слоев одинаковой размерности, в которых соответствующие элементы являются параметрами распределений. Количество параметров, задающих распределение определяется количеством полносвязных слоев в наборе, а размерность распределений соответственно количеством элементов, которое каждый из упомянутых слоев содержит. Выбор значений из распределений осуществляется случайным образом в процессе обучения при прямом проходе. Таким образом производится обучение параметров распределений. В режиме тестирования (использования) сети выбор значений из распределений производится детерминированным образом с использованием функции, параметрами которой являются параметры распределения. Примером распределения может служить стандартное нормальное распределение, параметрами которого являются математическое ожидание () и дисперсия (), а примером упомянутой функции может служить функция . Сверточную нейронную сеть обучают с использованием тренировочного набора данных, представляющих из себя набор пар сравнений, каждая из которых, в свою очередь, содержит две пары изображений (радужной оболочки и маски), а также информацию о типе сравнения, среди которых два возможных: одна и та же радужная оболочка, либо две разные. Архитектура сети (количество параметров, типа и количество слоев) подбирается с учетом требований по скорости обработки данных и точности распознавания.
[0028] Под легковесностью архитектуры сети в данной заявке понимается ее не высокая сложность, определяемая количеством параметров (количеством слоев, их параметров и иных осуществляемых операций). Обычно при решении таких задач выбирается сложная (глубокая) сеть с большим количеством параметров. Упрощение архитектуры достигается ее особенностями: извлечение особенностей верхнего и глубокого уровней путем разбиения ее на два основных блока позволяет получать высокие показатели по точности распознавания, не создавая глубокую сеть с большим числом параметров.
[0029] Таким образом, настоящее изобретение решает проблему биометрической аутентификации (распознавания) в сложных условиях (на мобильном устройстве, при различных условиях захвата изображения), с которой традиционные способы не справляются, а известные модели сетей являются достаточно сложными для их применения на мобильных устройствах с ограниченными вычислительными и другими ресурсами.
[0030] Традиционно, для выполнения биометрической аутентификации вычисляют поэлементные разности признаков. В данной заявке от сути этого подхода не отходят, поскольку он является быстрым и работоспособным. Однако в уровне техники все еще есть сложность с тем, что, например, зрачок может быть излишне расширен или сужен, глаза на ярком солнце зачастую прищуриваются (т.е. в таких условиях значительная часть радужной оболочки может перекрываться веком), руки пользователя могут трястись при захвате изображения по разным причинам и т.д. Таким образом, качество получаемых камерой изображений зачастую не является достаточным для проведения точной биометрической аутентификации, поскольку захватываемые изображения могут быть сильно искаженными, зашумленными, не резкими. Следствием ухудшения качества изображения так же являются ошибки алгоритма сегментации. В результате для проведения биометрической аутентификации зачастую требуется производить извлечение уникальных особенностей радужной оболочки из изображений крайне низкого качества. Авторы изобретения рассмотрели возможность использования нейронной сети как инструмента для учета, обработки и компенсации сложных нелинейных искажений при извлечении уникальных признаков из изображений низкого качества с целью получения точного результата биометрической аутентификации. Такая сверточная сеть должна быть способна восстанавливать, или по меньшей мере учитывать различные потенциальные искажения. Для этого авторы настоящего изобретения обучили такую сверточную нейронную сеть, которая способна извлекать признаки радужной оболочки пользователя из захватываемых изображений, качество которых в противном случае было бы недостаточным для проведения точной биометрической аутентификации при таких менее контролируемых условиях окружения. Для решения этих задач, авторы настоящего изобретения предусмотрели второй блок сверточной нейронной сети, который используется в настоящем изобретении и описан в данной заявке во всей своей полноте. Полученный в результате второй блок сверточной нейронной сети является неглубоким, т.е. в нем предполагается не более пяти сверточных слоев. Таким образом, такая архитектура сети гарантирует возможность ее применения на мобильных вычислительных устройствах пользователя.
[0031] Далее, несмотря на то что полученная сверточная нейронная сеть позволила обеспечить хорошее разделение входящих пар изображений на классы «свой» (genuine) и «чужой» (impostor), значения степени схожести для некоторого, хоть и очень малого количества impostor сравнений оказались слишком высоким и близким к среднему значению для класса genuine сравнений, что является крайне плохим свойством системы распознавания. Надежность системы распознавания характеризуется ошибками FAR и FRR. Ошибки FAR и FRR вычисляются по результатам сравнения вычисленной степени схожести с заданным порогом принятия решения, который определяется по результатам тестирования системы максимальными значениями степени схожести для impostor сравнений, т.е. чем больше разница между максимальными значениями степени схожести для impostor сравнений и значениями, присущими классу genuine сравнений, тем выше надежность системы распознавания. Таким образом, для исключения грубых ошибок аутентификации сетью авторы настоящего изобретения предусмотрели выполнение дополнительной операции регуляризации (вариационный вывод), которая позволила учесть все признаки радужной оболочки, которые были извлечены из исходного изображения в виде случайных величин, и представить упомянутые признаки в виде распределений. Обучение таким распределениям позволило уменьшить количество упомянутых грубых ошибок, выражающихся в виде высоких значений степени схожести для impostor сравнений.
[0032] На вышеописанных этапах (S120, S135, S145) представление векторов , , дополнительно осуществляют путем выбора значений математического ожидания или иной меры из соответствующих распределений, описываемых упомянутыми наборами полносвязных слоев, каждый из которых в своем случае является последним по порядку следования в сверточной нейронной сети. Упомянутыми иными мерами, значения которых могут быть выбраны вместо математического ожидания, являются, но без ограничения упомянутыми, значения математического ожидания, смещенное на константу, взвешенное с некоторым коэффициентом и т.д.
[0033] На заключительном этапе (S150) способа принимают решение, является ли текущий пользователь вычислительного устройства законным пользователем вычислительного устройства, на основе сравнения упомянутого значения степени схожести, полученного в результате выполнения этапа (S145), с пороговым значением. Пороговое значение может быть задано заранее. Пороговое значение для сравнения задается по завершению тестирования способа на тестовой выборке, по результатам которого осуществляют построение кривой (ROC, рабочей характеристики приемника), отражающей зависимость между вероятностями ложного несовпадения (FNMR) и ложного совпадения (FMR). Пороговое значение для сравнения принимается равным значению, при котором значения FNMR и FMR остаются в пределах допускаемых требованиями по точности распознавания, задаваемыми заранее.
[0034] На фигуре 6 проиллюстрирована блок-схема вычислительного устройства (20) пользователя, которое в одном варианте осуществления может представлять собой мобильное устройство пользователя. Устройство (20), на котором может быть реализован раскрытый выше способ, может содержать, но без ограничения упомянутым, процессор (20.1), камеру (20.2) и память (20.3), хранящую считываемые и исполняемые процессором инструкции, которые при исполнении процессором побуждают процессор к выполнению любого этапа (этапов) раскрытого в данной заявке способа биометрической аутентификации пользователя. Компоненты в устройстве (20) могут быть соединены друг с другом и с другими опциональными компонентами устройства любым подходящим способом, который будет очевиден обычному специалисту для реализации на таком устройстве заявленного способа. Устройство (20) может содержать другие не показанные на фигуре 6 компоненты и представлять собой, например, смартфон, планшет, очки виртуальной реальности, очки дополненной реальности, ПК, ноутбук, умные часы и т.д. В альтернативном варианте осуществления вычислительного устройства пользователя упомянутое устройство может содержать отдельные аппаратные блоки. В этом варианте осуществления, каждый аппаратный блок может отвечать за выполнение соответствующего этапа или подэтапа способа и именоваться соответствующим образом, например, аппаратный блок устройства, ответственный за построение вектора признаков сравнения верхнего уровня (этап (S115)), может именоваться как блок построения вектора признаков сравнения верхнего уровня, и т.д. Однако, заявленное изобретение не следует ограничивать только такой структурой блоков, поскольку специалисту будут понятны другие возможные структуры блоков в устройстве, при которых, в качестве примера, один аппаратный блок может отвечать за выполнение нескольких этапов или подэтапов раскрытого способа, или выполнение нескольких этапов или подэтапов раскрытого способа может быть разделено между двумя или более блоками. Кроме того, способ, раскрытый в данной заявке, может быть реализован посредством процессора, интегральной схемы специального назначения (ASIC), программируемой пользователем вентильной матрицы (FPGA), или как система на кристалле (SoC). Кроме того, способ, раскрытый в данной заявке, может быть реализован посредством считываемого компьютером носителя, на котором хранятся исполняемые компьютером инструкции, которые, при исполнении процессором компьютера, побуждают компьютер к выполнению раскрытого способа.
[0035] Используемые в данной заявке ссылочные позиции не следует интерпретировать как однозначно определяющие последовательность этапов, поскольку после ознакомления с вышеуказанным раскрытием, специалисту станут понятны другие модифицированные последовательности вышеописанных этапов. Ссылочные позиции использовались в этом описании и используются в нижеследующей формуле лишь в качестве сквозного указателя на соответствующий элемент заявки, который облегчает ее восприятие и гарантирует соблюдение единства терминологии.
[0036] Хотя данное изобретение было описано с определенной степенью детализации, следует понимать, что настоящее раскрытие было сделано только в качестве иллюстрации и что к многочисленным изменениям в деталях конструкций, компоновке частей устройства или этапов и содержания способов можно прибегать, не выходя за рамки объема изобретения, который определяется нижеследующей формулой изобретения.
Промышленная применимость
[0037] Настоящее изобретение может применяться в промышленности в качестве технического решения, обеспечивающего возможность проведения биометрической аутентификации пользователя на вычислительном устройстве. Могут быть созданы различные устройства, средства, блоки, микросхемы, которые заявленный способ биометрической аутентификации пользователя реализуют. Кроме того, упомянутая аутентификация может быть обеспечена как новая функциональная возможность существующих на данный момент приложений/устройств. В качестве примера, легкая и удобная разблокировка устройства по радужной оболочке пользователя может быть осуществлена в ветреную погоду, когда пользователи имеют тенденцию щуриться, при слабом освещении в помещении, когда зрачки пользователя сильно расширены, при ярком уличном освещении, когда зрачки пользователя сильно сужены.
Экспериментальные данные
Параметры тестирования:
FRR@FAR=1e-7 (Коэффициент ложного отказа при коэффициенте ложной идентификации, равном 1e-7)
EER (Коэффициент уровня ошибок биометрической системы доступа, при котором FAR и FRR равны)
Условия тестирования:
В помещении (различное освещение)+Вне помещения (разные ориентации относительно солнца)
Тип сравнения: изображение с изображением (без слияния: правый+левый глаз)
Общее число сравнений (Законный пользователь/Другой пользователь): 94569/10104817
Изображений в наборе (обучение/валидация/эксперимент): 32207/4693/9034
Результат:
Существенное улучшение точности распознавания/аутентификации.
Результаты проведенного эксперимента проиллюстрированы на фигурах 7(a)-(b).
Как видно из фигуры 7(a) применение заявленного способа обеспечивает двукратное улучшение точности распознавания по показателю FRR, в долях в сравнении с традиционными решениями. Для оценки значения FRR использовались пары единичных (не последовательности) изображений нормализованной радужной оболочки.
Как видно из фигуры 7(b) применение заявленного способа обеспечивает трехкратное улучшение точности распознавания по показателю EER, в долях в сравнении с традиционными решениями. Для оценки значения EER использовались пары единичных (не последовательности) изображений нормализованной радужной оболочки.
Список позиционных обозначений
20 - вычислительное устройство пользователя;
20.1 - процессор;
20.2 - камера;
20.3 - память.
название | год | авторы | номер документа |
---|---|---|---|
СПОСОБ РАСПОЗНАВАНИЯ БЛИЗНЕЦОВ И БЛИЖАЙШИХ РОДСТВЕННИКОВ ДЛЯ МОБИЛЬНЫХ УСТРОЙСТВ И МОБИЛЬНОЕ УСТРОЙСТВО ЕГО РЕАЛИЗУЮЩЕЕ | 2019 |
|
RU2735629C1 |
СПОСОБ АВТОМАТИЧЕСКОЙ РЕГУЛИРОВКИ ЭКСПОЗИЦИИ ДЛЯ ИНФРАКРАСНОЙ КАМЕРЫ И ИСПОЛЬЗУЮЩЕЕ ЭТОТ СПОСОБ ВЫЧИСЛИТЕЛЬНОЕ УСТРОЙСТВО ПОЛЬЗОВАТЕЛЯ | 2017 |
|
RU2667790C1 |
СПОСОБ АУТЕНТИФИКАЦИИ ПОЛЬЗОВАТЕЛЯ ПО РАДУЖНОЙ ОБОЛОЧКЕ ГЛАЗ И СООТВЕТСТВУЮЩЕЕ УСТРОЙСТВО | 2017 |
|
RU2670798C9 |
СПОСОБ, ТЕРМИНАЛ И СИСТЕМА ДЛЯ БИОМЕТРИЧЕСКОЙ ИДЕНТИФИКАЦИИ | 2023 |
|
RU2815689C1 |
СПОСОБ, ТЕРМИНАЛ И СИСТЕМА ДЛЯ БИОМЕТРИЧЕСКОЙ ИДЕНТИФИКАЦИИ | 2022 |
|
RU2798179C1 |
СПОСОБ И СИСТЕМА ДИНАМИЧЕСКОЙ АУТЕНТИФИКАЦИИ И ОЦЕНКИ РИСКА ПОЛЬЗОВАТЕЛЯ | 2019 |
|
RU2723679C1 |
СПОСОБ, СИСТЕМА И УСТРОЙСТВО ДЛЯ БИОМЕТРИЧЕСКОГО РАСПОЗНАВАНИЯ РАДУЖНОЙ ОБОЛОЧКИ ГЛАЗА | 2016 |
|
RU2630742C1 |
СПОСОБ АДАПТИВНОГО КВАНТОВАНИЯ ДЛЯ КОДИРОВАНИЯ ИЗОБРАЖЕНИЯ РАДУЖНОЙ ОБОЛОЧКИ | 2016 |
|
RU2628201C1 |
УСТРАНЕНИЕ РАЗМЫТИЯ ИЗОБРАЖЕНИЯ | 2020 |
|
RU2742346C1 |
УСТРОЙСТВО БЕЗОПАСНОСТИ, СПОСОБ И СИСТЕМА ДЛЯ НЕПРЕРЫВНОЙ АУТЕНТИФИКАЦИИ | 2021 |
|
RU2786363C1 |
Изобретение относится к области вычислительной техники, предназначенной для аутентификации пользователей. Технический результат заключается в повышении точности биометрической аутентификации пользователя за счет снижения вероятности возникновения ошибок при биометрической аутентификации пользователя. Технический результат достигается за счет приема карты признаков радужной оболочки законного пользователя вычислительного устройства, извлечения из изображения карты признаков радужной оболочки текущего пользователя вычислительного устройства посредством обработки этого изображения радужной оболочки текущего пользователя сверточной нейронной сетью, осуществления построения вектора признаков сравнения верхнего уровня посредством выполнения поэлементной операции над элементами упомянутой карты признаков и соответствующими элементами упомянутой карты признаков и осуществления представления вектора признаков сравнения верхнего уровня в другое признаковое пространство. 2 н. и 10 з.п. ф-лы, 8 ил.
1. Способ биометрической аутентификации пользователя на вычислительном устройстве, содержащий этапы, на которых:
принимают (S100) предварительно извлеченную и сохраненную по меньшей мере одну карту признаков радужной оболочки законного пользователя вычислительного устройства;
получают (S105) изображение радужной оболочки текущего пользователя, в отношении которого следует провести биометрическую аутентификацию;
извлекают (S110) из изображения радужной оболочки текущего пользователя по меньшей мере одну карту признаков радужной оболочки текущего пользователя вычислительного устройства посредством обработки этого изображения радужной оболочки текущего пользователя первым блоком предварительно обученной сверточной нейронной сети, который использовался для предварительного извлечения упомянутой по меньшей мере одной карты признаков радужной оболочки законного пользователя вычислительного устройства при операции первичной регистрации законного пользователя на данном вычислительном устройстве;
осуществляют построение (S115) вектора признаков сравнения верхнего уровня посредством выполнения поэлементной операции над элементами упомянутой по меньшей мере одной карты признаков и соответствующими элементами упомянутой по меньшей мере одной карты признаков;
осуществляют представление (S120) вектора признаков сравнения верхнего уровня посредством отображения вектора признаков сравнения верхнего уровня в другое признаковое пространство с использованием одного или более наборов дополнительных слоев упомянутой сверточной нейронной сети для получения вектора признаков сравнения верхнего уровня;
осуществляют конкатенацию (S125) или иную поэлементную операцию над упомянутой по меньшей мере одной картой признаков и упомянутой по меньшей мере одной картой признаков для получения, соответственно, результата конкатенации или результата иной поэлементной операции над картами признаков;
осуществляют построение (S130) вектора признаков сравнения глубокого уровня посредством обработки результата конкатенации или результата иной поэлементной операции над картами признаков вторым блоком упомянутой сверточной нейронной сети;
осуществляют представление (S135) вектора признаков сравнения глубокого уровня посредством отображения вектора признаков сравнения глубокого уровня в другое признаковое пространство с использованием одного или более наборов дополнительных слоев сверточной нейронной сети для получения вектора признаков сравнения глубокого уровня;
осуществляют конкатенацию (S140) над упомянутым вектором признаков сравнения верхнего уровня и вектором признаков сравнения глубокого уровня для получения вектора ;
осуществляют представление (S145) вектора с использованием одного или более наборов дополнительных слоев сверточной нейронной сети для получения значения степени схожести радужной оболочки текущего пользователя с радужной оболочкой законного пользователя; и
принимают решение (S150), является ли текущий пользователь вычислительного устройства законным пользователем вычислительного устройства, на основе сравнения упомянутого значения степени схожести с пороговым значением.
2. Способ по п. 1, в котором поэлементная операция, выполняемая на этапе построения (S115) вектора признаков сравнения верхнего уровня, проводится согласно следующему уравнению: , где представляет собой показатель для пары соответствующих карт признаков.
3. Способ по п. 1, дополнительно содержащий следующие этапы, на которых:
принимают (S101) предварительно извлеченную и сохраненную по меньшей мере одну нормированную маску радужной оболочки законного пользователя вычислительного устройства, масштабированную до размера упомянутой по меньшей мере одной карты признаков; и
получают (S106) маску радужной оболочки, соответствующую упомянутому изображению радужной оболочки текущего пользователя;
при этом поэлементная операция, выполняемая на этапе построения (S115) вектора признаков сравнения верхнего уровня, проводится согласно следующему уравнению: , где , a представляет собой показатель для пары соответствующих карт признаков.
4. Способ по п. 1, в котором поэлементной операцией, выполняемой на этапе построения (S115) вектора признаков сравнения верхнего уровня, является l1-норма или l2-норма, проводимая над элементами упомянутой по меньшей мере одной карты признаков и соответствующими элементами упомянутой по меньшей мере одной карты признаков.
5. Способ по п. 1, в котором изображение радужной оболочки текущего пользователя получают (S105) с помощью камеры вычислительного устройства.
6. Способ по п. 3, в котором маску радужной оболочки получают (S106) посредством отделения области радужной оболочки на изображении радужной оболочки текущего пользователя от областей, являющихся шумом: ресниц, век, бликов от очков, предметов, перекрывающих радужную оболочку.
7. Способ по п. 1, в котором обработка упомянутого изображения радужной оболочки текущего пользователя первым блоком предварительно обученной сверточной нейронной сети на этапе извлечения (S110) содержит:
обработку (S110.1) изображения не более чем n сверточными слоями первого блока предварительно обученной сверточной нейронной сети c величиной шага свертки, равной не менее 1, без активации, с понижением размерности или без него, при этом количество n сверточных слоев равно 3, более предпочтительно 2, наиболее предпочтительно 1; и
обработку (S110.2) результата свертки, получаемого на выходе упомянутых не более чем n сверточных слоев, не более чем i преобразованиями, выбираемыми из группы, содержащей: преобразование функцией гиперболического тангенса tanh(x) и/или любой иной функцией активации; преобразование функцией квантования; бинаризацию , при этом количество i преобразований равно 3, более предпочтительно 2, еще более предпочтительно 1; или
пропуск обработки (S110.2) результата свертки и вывод (S110.3) результата свертки как есть, т.е. i равно 0.
8. Способ по п. 1, в котором
упомянутым одним или более набором дополнительных слоев сверточной нейронной сети, которые используются для отображения векторов , , в признаковое пространство на этапах представления (S120, S135, S145), являются соответствующие один или более наборы полносвязных слоев одинаковой размерности, которые расположены последовательно друг за другом и задают параметры одного или более распределений, причем количество распределений определяется количеством упомянутых наборов,
причем количество упомянутого одного или более дополнительных слоев в наборе определяется количеством упомянутых параметров одного или более распределений, а размерность распределений соответственно количеством элементов, которое каждый из упомянутых слоев содержит,
при этом каждое из упомянутых распределений является стандартным нормальным распределением, параметрами которого являются математическое ожидание и дисперсия, или распределением иного вида с иным набором параметров;
признаковые пространства, в которые осуществляют отображения векторов на этапах представления (S120, S135), представляют собой пространства повышенной размерности, пространства пониженной размерности или пространства размерности, равной размерности отображаемых векторов ,
признаковое пространство, в которое осуществляют отображение вектора на этапе представления (S145), представляет собой пространство, размерность которого равна 1.
9. Способ по п. 8, в котором
упомянутую сверточную нейронную сеть, используемую на этапах осуществления представления (S120, S135, S145), предварительно обучают с использованием вариационного вывода, при этом вариационный вывод при обучении сверточной нейронной сети производят путем семплирования случайным образом значений из упомянутых распределений;
представление (S120, S135, S145) векторов , , дополнительно осуществляют путем выбора значений математического ожидания или иной меры из соответствующих распределений, описываемых упомянутыми наборами полносвязных слоев, каждый из которых в своем случае является последним по порядку следования в сверточной нейронной сети.
10. Способ по п. 9, в котором при осуществлении конкатенации на этапе (S140) дополнительно используют вспомогательную информацию, характеризующую условия, в которых изображение радужной оболочки текущего пользователя было получено.
11. Способ по п. 10, в котором вспомогательная информация включает в себя коэффициент расширения зрачка, разность в освещенности, степень перекрытия радужной оболочки посторонним объектом.
12. Вычислительное устройство (20) пользователя, содержащее:
камеру (20.2), выполненную с возможностью получения изображения текущего пользователя;
память (20.3), хранящую обученную сверточную нейронную сеть и считываемые процессором инструкции, обеспечивающие возможность реализации способа биометрической аутентификации пользователя на вычислительном устройстве по любому из пп. 1-11; и
процессор (20.1), выполненный с возможностью осуществления способа биометрической аутентификации пользователя на основе считываемых процессором инструкций, хранящихся в упомянутой памяти.
Система и способ аутентификации пользователя при помощи электронной цифровой подписи пользователя | 2015 |
|
RU2610696C2 |
ВСЕОБЪЕМЛЮЩАЯ, ОРИЕНТИРОВАННАЯ НА ПОЛЬЗОВАТЕЛЯ СЕТЕВАЯ БЕЗОПАСНОСТЬ, ОБЕСПЕЧИВАЕМАЯ ДИНАМИЧЕСКОЙ КОММУТАЦИЕЙ ДАТАГРАММ И СХЕМОЙ АУТЕНТИФИКАЦИИ И ШИФРОВАНИЯ ПО ТРЕБОВАНИЮ ЧЕРЕЗ ПЕРЕНОСНЫЕ ИНТЕЛЛЕКТУАЛЬНЫЕ НОСИТЕЛИ ИНФОРМАЦИИ | 2004 |
|
RU2308080C2 |
Способ получения цианистых соединений | 1924 |
|
SU2018A1 |
Способ получения цианистых соединений | 1924 |
|
SU2018A1 |
Кузнечный горн | 1921 |
|
SU215A1 |
Авторы
Даты
2019-08-15—Публикация
2018-10-26—Подача