УДК 681.3.01 +681.3.05+681.3.066
МАТЕМАТИЧЕСКАЯ МОДЕЛЬ ИЗОБРАЖЕНИЯ ОТПЕЧАТКА ПАЛЬЦА НА ОСНОВЕ ТОПОЛОГИЧЕСКИХ ВЕКТОРОВ ДЛЯ ЛИНИЙ
В.Ю. Гудков
MATHEMATICAL MODEL OF FINGERPRINT BASED ON TOPOLOGY VECTORS FOR LINES
V.U. Gudkov
В работе предлагается математическая модель изображения отпечатка пальца на основе топологических векторов для линий, которая сохраняется в шаблоне изображения. Шаблоны содержат наборы признаков, по которым выполняется идентификация изображений.
Ключевые слова: отпечаток пальца, модель, контур, частные признаки, топология, вектор, шаблон.
This paper presents a mathematical model of fingerprint based on the topological vectors for lines. The topological vectors and the list of minutiae are stored in the template. Templates are used to identify the fingerprint.
Keywords: fingerprint, model, skeleton, minutiae, topology, vector, template.
Введение
Идентификация дактилоскопических изображений (ДИ) выполняется на основе шаблонов, содержащих признаки узора. Их базис составляет описание частных признаков в виде начал и окончаний линий, слияний и разветвлений линий [И]. Они могут быть детектированы по серому изображению, однако простых методов для этого недостаточно [3]. Поэтому при построении шаблона обычно опираются на скелет линий [2] (рис. 1). В классическом варианте в шаблоне дополнительно сохраняют данные гребневого счета [11, 12].
Рис. 1. Скелет и частные признаки
Математическая модель изображения должна содержать необходимое и достаточное количество признаков [1, 3]. В дактилоскопии информативными считают частные признаки и гребневый счет между ними [11, 12]. Однако они не исчерпывают множество математических моделей, используемых для автоматического доказательства индивидуальности узора [5, 7, 9, 12-14]. Каждая из таких моделей нацелена на повышение точности идентификации, однако неизвестно ни одной лучшей, свободной от недостатков модели [12]. Например, гребневый счет, который в криминалистике предписывается измерять по прямой линии [11], не выдерживает критики в области значительного искривления линий узора и в области петель, дельт и завитков [5, 13, 14].
В работе предлагается шаблон изображения, синтезируемый как отображение в виде
Г
где рЪт) =[йт\х,У)} - скелет изображения
(см. рис. 1); Ьт - список частных признаков; Ц -список топологических векторов для линий.
1. Шаблон изображения
Шаблоны ДИ как набор или множество признаков объектов существенно различаются у разных производителей программного обеспечения. Например, форматы некоторых шаблонов носят ограничения на количество частных признаков:
Гудков Владимир Юльевич - доцент Челябинского Gudkov Vladimir Uylievich - associate professor of
государственного университета; diana@sonda.ru Chelyabinsk state university; diana@sonda.ru
окончаний и разветвлений [11, 12]. В криминалистике такие ограничения нежелательны, поэтому их рассматривать не будем. Положим, что шаблон содержит все множество распознаваемых частных признаков ДИ.
Введем некоторые определения.
Определение 1. Скелетом линии называется простая цепь {и,у) с вершинами и и V в 8-смежности, проходящая вблизи геометрического центра линии, причем для каждой вершины /71е(м,у) существует ровно две смежные с ней вершины р2 и ръ, при этом вершины р2 и р3 несмежные.
Определение 2. Окончанием называется такая вершина р1 скелета, что для вершины рх существует ровно одна смежная с ней вершина р2 .
Определение 3. Разветвлением называется такая вершина рх скелета, что для вершины рх существуют ровно три смежные с ней вершины р2, ръ и р4, при этом любые две вершины из множества {р2,р^,р4} попарно несмежные.
Содержание топологических векторов полностью определяется окончаниями и разветвлениями, которые считываются с вершин скелета и разрезают скелет на отрезки. Совокупность локально расположенных таких отрезков характеризует уникальность фрагмента узора, которая отражается в топологическом векторе.
1.1. Список частных признаков
Пусть М, - индексированный номером / частный признак. Тогда список частных признаков Ьт находится в виде
1т = {м, (1)
где \Ьт | = «] - мощность списка; (х1 ,у,), а,, I), 5,, V,, 0,, />, и й, - координаты, направление, тип, метка сомнительности, величина и направление кривизны, вероятность и плотность линий в окрестности частного признака. Частные признаки детектируются в информативной области изображения [2, 5] (на рис. 1 информативная область ДИ затемнена, а скелет зачернен).
Координаты (х,, у1) частного признака М, определяются координатами вершины скелета [1]. Направление а, как угол определяется простой цепью вершин скелета для окончания и тремя простыми цепями для разветвления [2]. Тип tj е{0,1) устанавливается валентностью вершины скелета как вершины графа [4], где 0 - разветвление и 1 - окончание. Координаты (х, ,у, ), направление
а, и тип /, являются базовыми параметрами М,, используемыми при идентификации ДИ [6, 8,10,12].
Метка сомнительности 5, е {0,1} определяется положением частного признака, близким к не-
информативным областям (фону), причем 1 означает сомнительность. На границе неинформативных областей частные признаки не детектируются. Величина V; и направление кривизны определяются по разностям направлений линий в окрестности £ частного признака М, [5, 7, 9]. Вероятность р, рассчитывается как отношение средней величины оценок качества изображения в окрестности е к наилучшей оценке качества в информативной области ДИ [5]. Плотность линий /г, рассчитывается как среднее количество линий, умещающихся в окрестности е на прямой, проведенной перпендикулярно линиям [12]. Размер окрестности е определяется алгоритмом обработки ДИ.
1.2. Список топологических векторов
для линий
Список топологических векторов для линий Ц находится на основе списка частных признаков Ьт , слоя скелета /гдт^ и других вспомогательных матриц, элементы которых отображают локальные свойства линий ДИ. Эта матрицы формируются в пирамиде 5Н, представляющей информационные слои данных, распределенные по иерархиям пирамиды.
Список топологических векторов для линий синтезируется на основе всех вершин скелета, исключая вершины частных признаков, и записывается в виде
к ={ К ={{e},n],lJ)]\iв\..n2,j&\..т^ , (2) где V, - топологический вектор для группы вершин скелета; |Ц \ = п2 - мощность списка и п2>пх\ г - индекс как номер топологического вектора; / — номер связи в топологическом векторе; е} - событие, а 1] - длина связи, сформированная частным признаком с номером «у; т1 - количество связей с учетом центральной линии в виде
т, = 4т + 2. (3)
Опишем процедуру построения топологических векторов для линий. В информативной области ДИ [12] выделяют линии и формируют стилизованное изображение в виде скелета [1]. По скелету детектируют два типа частных признаков: окончания и разветвления [2, 13] (см. рис. 1). Направление частного признака (угол) указывает в область увеличения числа линий [12]. Оно параллельно касательной к папиллярной линии в малой окрестности частного признака М,. Каждый частный признак нумеруют и описывают координатами, направлением, типом, меткой сомнительности, величиной и направлением кривизны, вероятностью и плотностью линий в окрестности £ частного признака (1). Затем от каждого частного признака фиксируют две проекции: вправо и влево
перпендикулярно направлению частного признака на смежные скелетные линии. На рис. 2 проекции показаны пунктиром, а две соответствующие вершины скелета на линиях 1 и 2 закрашиваются «цветом проекции».
Выберем вершину скелета р, (но не частный признак) и проведем через ее координаты (х,,^) вправо и влево сечение на глубину нескольких линий т перпендикулярно касательным к пересекаемым линиям и пронумеруем по спирали, разворачивающейся по часовой стрелке, рассеченные линии, которые назовем связями. Сечение проходит, отслеживая направление кривизны линий [5, 7, 9]. Глубина сечения т обычно варьируется от одной до восьми линий вправо и также влево. Одна линия в сечении образует две связи. Количество связей в топологическом векторе рассчитывается по (3).
Топологический вектор определяют по сечению методом слежения за ходом каждой связи от сечения до встречи с другим частным признаком, расположенным на связи, или с проекцией от него на связи. При этом на связях детектируются следующие возможные события, показанные на рис. 3 и представленные в двоичном коде:
1101 - на связи проекция от окончания, расположенного справа по ходу связи, направление окончания ориентировано навстречу ходу связи;
1001 - на связи проекция от окончания, расположенного справа по ходу связи, направление окончания ориентировано по ходу связи;
1110 - на связи проекция от окончания, расположенного слева по ходу связи, направление окончания ориентировано навстречу ходу связи;
1010 - на связи проекция от окончания, расположенного слева по ходу связи, направление окончания ориентировано по ходу связи;
0101 — на связи проекция от разветвления, расположенного справа по ходу связи, направление разветвления ориентировано навстречу ходу связи;
0001 - на связи проекция от разветвления, расположенного справа по ходу связи, направление разветвления ориентировано по ходу связи;
0110 - на связи проекция от разветвления, расположенного слева по ходу связи, направление разветвления ориентировано навстречу ходу связи;
0010 - на связи проекция от разветвления, расположенного слева по ходу связи, направление разветвления ориентировано по ходу связи;
0011 - разветвление на связи, направление которого ориентировано по ходу связи;
0111 - разветвление на связи, образованной линией, касательная к которой образует минимальный угол при повороте направления разветвления против часовой стрелки;
1011 - разветвление на связи, образованной линией, касательная к которой образует минимальный угол при повороте направления разветвления по часовой стрелке;
1111 - окончание на связи, направление которого ориентировано навстречу ходу связи;
1100 - связь по линии замыкается, частный признак или проекция от него отсутствует;
0000 - на связи нет ни частного признака, ни проекции от него (обрыв скелета).
С событием как двоичным числом (их всего 14), детектированным на связи, ассоциируют номер
1
V •
2 ■
А
-Ф И
Рис. 2. Направления и проекции для окончания и разветвления
п
1101
<
к
1001
і
Г!
1110
і
>
і
1010
<
0101
0001
№
0110
& и
>
к
0010
0011
А А
0111 1011 1111 Рис. 3. События, детектируемые на связи
1100
0000
Таблица 1 Топологический вектор для А
Номер Событие Индекс Длина
0 1110 22 /о
1 1111 19 h
2 1110 19 h
3 1111 22 ІЗ
4 0001 21 h
5 1101 19 h
6 1010 24 h
7 0010 25 h
8 0011 21 h
9 1111 23 h
10 1010 26 ho
11 ООН 25 hi
12 0010 21 hi
13 1010 20 hi
14 1111 27 114
15 0001 25 hs
16 0000 - —
17 1001 20 hi
Таблица 2 Топологический вектор для В
Номер Событие Индекс Длина
0 1110 22 k
1 1011 19 h
2 0111 19 h
3 1111 22 h
4 0001 21 U
5 0101 19 h
6 0110 19 k
7 0010 25 h
8 0011 21 k
9 1111 23 In
10 1010 26 ho
11 0011 25 hi
12 0010 21 1,2
13 1010 20 hi
14 1111 27 І14
15 0001 25 І15
16 0000 -
17 1001 20 І17
частного признака, инициирующего это событие. Событие привязано к номеру связи. Для событий 0000 и 1100 номера частных признаков отсутствуют. Нумерованный набор связей с оформленными событиями и номерами частных признаков есть базовый топологический вектор (экономный). Событие и номер частного признака образуют упорядоченную пару (еу-,л7). Событие может быть
дополнено длиной связи от сечения до позиции, в которой детектируется это событие. Так формируется расширенный топологический вектор. Событие, номер частного признака и длина связи образуют упорядоченную тройку (е7,я,,/7) . Для событий 0000 и 1100 длины связей могут быть и описывать информативные области, свободные от частных признаков! Это существенно [7, 8]. При этом длины связей, обрывающихся на краю отпечатка, устойчивы в том смысле, что не укорачиваются при полной прокатке пальца [7].
Местоположение бита в событии определяет тип частного признака, его направление по отношению к направлению хода связи, его местоположение но отношению к связи и др. (см. рис. 3). События позволяют оперативно сопоставить базовые топологические векторы и ускорить процедуру идентификации узора [10].
Топологические векторы строят для каждой вершины скелета (но не частного признака). Сечение разрезает линии на связи, пронумерованные по спирали, разворачивающейся по часовой стрелке. На рис. 4 в сечении для вершины А скелетной линии, завершающейся окончанием 19, пронумерованы связи 0-17, а соответствующий топологический вектор представлен в табл. 1. На
рис. 5 в сечении для вершины В скелетной линии, замыкающейся в разветвление 19, пронумерованы связи 0-17, а соответствующий топологический вектор представлен в табл. 2. Сечения показаны пунктиром, а рисунки представляют обычную мутацию [9] окончания 19 в разветвление 19 (из-за грязной кожи). При этом вершины А и В скелета по сути одни и те же.
Начало нумерации связей в сечении для вершин А и В (связи № 0) несущественно, так как при развороте ДИ формируется зеркальное отображение номеров связей в сечении, которое легко распознается и учитывается при идентификации ДИ. Это аналог игры «Puzzle», где сборка выполняется стыковкой соответствующих разъемов. При глубине сечения т = 4 для линии формируется восемнадцать связей т, =18 по (3).
Количество топологических векторов счетное. На рис. 4 внизу двунаправленной стрелкой показана зона, умещающаяся между частными признаками 19 и 25, в пределах которой для точки А при смещении ее по скелету синтезируется один и тот же базовый топологический вектор. Аналогичная зона между частными признаками 19 и 25 для точки В указана внизу на рис. 5. Топологические векторы с равными базовыми топологическими векторами объединяются [9]. Их количество при этом на порядок уменьшается и достигает величины 100-1000 для контактного отпечатка пальца с количеством частных признаков 20—100. Синтезируются уникальные топологические характеристики, соответствующие автоматически определяемым отрезкам линий, а не частным признакам.
На этом построение списка топологических векторов для линий завершается.
22
^ 16 17
12 А 13 у20
А -ЧІ21 8 А 9 і
V 4 5 Ф
0 І-4.9
Ф А-^ ЩІУ 2 у
Щ ф 7 6 24$
А Чч125 11 “1-
_У? У 15 14 27#
Рис. 4. Сечение для линии с окончанием
А
V
А
22 ф-
В
16; 17
12
21 8
25 11
15
13
А
^20"
А
-*23
А 24*-
V____V
10
26
V
14
27
<---------4-------->
I
Рис. 5. Сечение для линии с разветвлением
Заключение
Предложена топологическая модель ДИ для линий, которая сохраняется в шаблоне [12]. Топологические векторы образуют связанный граф с высокой степенью избыточности. Это позволяет соединить подграфы [4] фрагментарных следов отпечатков пальцев. Список Ц по (2) может быть представлен в экономном формате (без длин связей).
В отличие от гребневого счета [9, 14] мутация окончания в разветвление в сечении для вершин А и В частично изменяет события и номера особенностей на связях, но не изменяет нумерацию связей и очередность перечисления частных признаков (см. табл. 1, 2). Это повышает устойчивость математической модели [9].
Устойчивость математической модели дополнительно повышается при объединении базовых топологических векторов выбором такого соответствующего расширенного топологического вектора, в котором минимальная длина связи максимальна [9].
Повышенная устойчивость математической модели улучшает точность идентификации ДИ, которая может быть выполнена с высокой производительностью [6, 8, 10, 13,14].
Литература
1. Гонсалес, Р. Цифровая обработка изображений / Р. Гонсалес, Р. Вудс; пер. с англ.; под ред. П.А. Чочиа. — М.: Техносфера, 2006. — 1072 с.
2. Гудков, В.Ю. Новая технология формирования скелетов дактилоскопических изображений / В.Ю. Гудков, А.А. Коляда, А.В. Чернявский; под ред. акад. БАН А. Ф. Чернявского и д.т.н. В.В. Ре-винского // Методы, алгоритмы и программное обеспечение гибких информационных технологий
для автоматизированных идентификационных систем: сб. науч. ст. - Минск: БГУ, 1999. — С. 71-82.
3. Ковалевский, В.А. Методы оптимальных решений в распознавании изображений / В.А. Ковалевский. - М.: Наука, 1976. — 328 с.
4. Новиков, Ф.А. Дискретная математика для программистов: учеб. / Ф.А. Новиков. - СПб.: Питер, 2001. - 304 с.
5. Пат. 2185660 Российская Федерация, МПК в 06 К 9/52. Способ кодирования отпечатка папиллярного узора / В.Ю. Гудков, А. С. Боков. -№2000118065/09; заявл. 07.07.2000; опубл. 20.07.2002; Бюл. № 20. - 13 с.
6. Пат. 2185661 Российская Федерация, МПК О 06 К 9/62. Способ сравнения папиллярных узоров пальцев/В.Ю. Гудков, А.С. Боков. —№2000121735/09; заявл. 14.08.2000; опубл. 20.07.2002; Бюл. № 20. -Юс.
7. Пат. 2298828 Российская Федерация, МПК О 06 К 9/52. Способ кодирования отпечатка папиллярного узора / В.Ю. Гудков, А. С. Боков. -№2005132146/09; заявл. 17.10.2005; опубл. 10.05.2007; Бюл. № 13. - 17 с.
8. Пат. 2305317 Российская Федерация, МПК О 06 К 9/62. Способ сравнения папиллярных узоров / В.Ю. Гудков, А. С. Боков. - №2005132145/09; заявл. 17.10.2005; опубл. 27.04.2007; Бюл. №24. -13 с.
9. Пат. 2321057 Российская Федерация, МПК О 06 К 9/52, А 61 В 5/117. Способ кодированш отпечатка папиллярного узора / В.Ю. Гудков. -№2006142831/09; заявл. 04.12.2006; опубл. 27.03.2008; Бюл. №9.-13 с.
10. Пат. 2331108 Российская Федерация, МПК О 06 К 9/62. Способ сравнения отпечатков папиллярных узоров / Д.И. Аркабаев, В.Ю. Гудков. — №2006140939/09; заявл. 20.11.2006; опубл. 10.08.2008; Бюл. № 22. - 17 с.
11. Komarinski P. Automated fingerprint identification systems / P. Komarinski. - New York: Academic Press, 2005. - 295p.
12. Maltoni, D. Handbook of fingerprint recognition / D. Maltoni, D. Maio, A.K. Jain. - New York: Springer-Verlag, 2003. - 348p.
13. Pat. 5631971 USA, Int.Cl. G 06K 9/00. Vector based topological fingerprint matching/
M.K. Sparrow (Winchester). - Field: Jul. 15, 1994; Date of patent: May. 20,1997; U.S.Cl. 382/125. -17p.
14. Sparrow, M.K. A topological approach to the matching of single fingerprints: development of algorithms for use on latent finger marks / M.K. Sparrow, P.J. Sparrow // US dep. comer, nat. bur. stand, spec. pub. -1985. - № 500—126. — 61 p.
Поступила в редащию 27 апреля 2009 г.