Vous êtes sur la page 1sur 43

Diego Barragn Pablo Vallejo (info@matpic.

com)

TABLA DE CONTENIDO

Capitulo 1. ELECCIN DEL FORMATO DE IMGENES .................................. 1
1.1. Imagen digital. ................................................................................. 1
1.2. Imgenes Vectoriales ...................................................................... 1
1.3. Imgenes de Mapa de Bits. ............................................................. 2
1.4. Formatos de imgenes digitales. ..................................................... 6
Formato de imagen BMP ................................................................. 6
Formato de archivo GIF ................................................................... 6
Formato de archivo TIFF.................................................................. 7
1.5. Eleccin del Formato. ...................................................................... 8
Capitulo 2. ANLISIS Y REPRESENTACIN DE HUELLAS DIGITALES ....... 9
2.1. Introduccin ..................................................................................... 9
2.2. Caractersticas Fundamentales........................................................ 9
2.3. Regiones Singulares ...................................................................... 10
2.4. Minucias. ....................................................................................... 11
Capitulo 3. REALCE DE LA IMAGEN ............................................................. 16
3.1. Introduccin ................................................................................... 16
3.2. Binarizacin. .................................................................................. 20
3.3. rea de Inters. ............................................................................. 22
3.4. Adelgazamiento. ............................................................................ 25
Capitulo 4. IDENTIFICACIN DE MINUCIAS ................................................. 26
4.1. Introduccin ................................................................................... 26
4.2. Mapa de Crestas. .......................................................................... 26
4.3. Identificacin de Minucias .............................................................. 27
Capitulo 5. ALGORITMO DE EMPATE. .......................................................... 32
5.1. Etapa de Alineacin. ...................................................................... 32
5.2. Etapa de Empate. .......................................................................... 33
Capitulo 6. MANEJO DE BASE DE DATOS. .................................................. 34
Capitulo 7. Resultados. .................................................................................. 35
7.1. Rendimiento y Eficiencia. ............................................................... 38
7.1.1.Rendimiento .......................................................................... 38
7.1.2.Eficiencia .............................................................................. 39
Capitulo 8. Conclusiones y Recomendaciones. ........................................... 40



Diego Barragn Pablo Vallejo (info@matpic.com)

Ilustraciones y Tablas

FIGURA 1-1. REPRESENTACIN DE UNA IMAGEN MEDIANTE PXELES. ...................... 2
FIGURA 1-2. IMAGEN MONOCROMTICA, 1 BIT POR PXEL. ............................................ 3
FIGURA 1-3. IMAGEN EN ESCALA DE GRISES, 8 BITS POR PXEL .................................. 4
FIGURA 1-4. IMAGEN RGB, 24 BITS POR PXEL. ................................................................. 4
FIGURA 1-5. IMAGEN EN 256 COLORES .............................................................................. 5
FIGURA 2-1. CRESTAS Y VALLES. ...................................................................................... 10
FIGURA 2-2. TIPOS BSICOS DE REGIONES SINGULARES ........................................... 11
FIGURA 2-3. CLASIFICACIONES BSICAS DE LOS PATRONES DIGITALES. ................ 11
FIGURA 2-4. TIPOS PRINCIPALES DE MINUCIAS. ............................................................ 12
FIGURA 2-5. COMPONENTES DEL SISTEMA DE MINUCIAS COORDENADAS (F.B.I.). . 13
FIGURA 2-6. DIAGRAMA DE FLUJO ALGORITMO RECONOCIMIENTO ........................... 14
FIGURA 2-7. DIAGRAMA DE FLUJO ALGORITMO DE EMPATE. ...................................... 15
FIGURA 3-1. IMAGEN REALZADA CON ANLISIS DE FOURIER TRADICIONAL. ........... 17
FIGURA 3-2. (A) IMAGEN REAL, (B) MODELADO APROXIMADO. .................................... 19
FIGURA 3-3. IMAGEN MEJORADA....................................................................................... 19
FIGURA 3-4. IMAGEN BINARIZADA. .................................................................................... 21
FIGURA 3-5. CAMPO DE ORIENTACIONES ANTES Y DESPUS DE APLICAR EL NIVEL
DE CONFIABILIDAD. .................................................................................................... 23
FIGURA 3-6. REA DE INTERS LUEGO DE APLICAR BWMORPH. ............................. 24
FIGURA 3-7. IMAGEN ADELGAZADA. ................................................................................. 25
FIGURA 4-1. MAPA DE CRESTAS. ....................................................................................... 26
FIGURA 4-2. CRESTA CONTINUA. ...................................................................................... 28
FIGURA 4-3. TERMINACIN. ................................................................................................ 28
FIGURA 4-4. BIFURCACIN. ................................................................................................ 29
FIGURA 4-5. ANCHO ENTRE CRESTAS. ............................................................................ 30
FIGURA 4-6. MINUCIAS MARCADAS. .................................................................................. 31
FIGURA 7-1. OPCIONES DE ALMACENAMIENTO TIFF ..................................................... 35
FIGURA 7-2. INTERFAZ GRFICA DEL PROGRAMA ......................................................... 36
FIGURA 7-3. ARCHIVO DAT GENERADO. .......................................................................... 36
FIGURA 7-4. RESULTADOS DE BSQUEDA DE HUELLA DESCONOCIDA. .................... 37
FIGURA 7-5. CARACTERSTICAS TCNICAS DEL COMPUTADOR ................................. 38
FIGURA 7-6. RESULTADO FUNCIONES TIC TOC PARA ALMACENAMIENTO ............. 38
FIGURA 7-7. RESULTADO FUNCIONES TIC TOC PARA EMPATE. ............................... 39
Diego Barragn Pablo Vallejo (info@matpic.com)


Capitulo 1. ELECCIN DEL FORMATO DE IMGENES

1.1. Imagen digital.

Una imagen digital es una representacin binaria de una escena real (un
grfico o dibujo) la misma que puede ser representada o modificada en un
computador u otros dispositivos electrnicos, como telfonos celulares por ejemplo.

Las imgenes digitales en dos dimensiones se dividen en dos tipos: Imgenes
vectoriales y de mapa de bits.

1.2. Imgenes Vectoriales

Las imgenes vectoriales estn compuestas por lneas y curvas definidas de
forma matemtica y denominadas vectores. Esto significa que puede mover,
redimensionar o cambiar el color de una lnea sin que el grfico pierda calidad.

Los grficos vectoriales no dependen de la resolucin, es decir, se pueden escalar
a cualquier tamao e imprimir en cualquier resolucin sin prdida de detalle ni
claridad.

Las imgenes vectoriales tienen el inconveniente de tener dificultades en tratar
algunas cosas de forma natural (sombras, luces, etc.) y cuando son muy grandes o
muy complejas pueden volverse extremadamente difciles de manejar para la
capacidad de un computador.

Son, por tanto, la mejor opcin para crear grficos que requieren lneas ntidas que
puedan escalarse a distintos tamaos como, por ejemplo, los logotipos.


Diego Barragn Pablo Vallejo (info@matpic.com)

1.3. Imgenes de Mapa de Bits.

Las imgenes de mapa de bits (denominadas tcnicamente imgenes
rasterizadas) estn compuestas por una cuadrcula de puntos denominados pxeles.

Al trabajar con imgenes de mapa de bits, se editan los pxeles, en lugar de los
objetos o las formas. Las imgenes de mapa de bits son el medio electrnico ms
usado para las imgenes de tono continuo, como fotografas o pinturas digitales,
puesto que pueden representar degradados sutiles de sombras y color.

Las imgenes se pueden representar mediante retculas de celdas a las que vamos
asignando valores. Este modo es la base de todas las imgenes impresas y de
buena parte de las digitales. (Figura 1-1).



Figura 1-1. Representacin de una imagen mediante pxeles.


Cada una de las celdas de dicha retcula se llama "pxel", que es una composicin
de las palabras inglesas picture element. Un pxel es un concepto inmaterial que
no tiene una medida concreta. No se puede afirmar si un pxel mide 1 cm. o 1 km.
En principio, es solamente una medida de divisin en celdas.

Una forma muy importante de clasificar las imgenes de mapa de bits es segn la
cantidad y tipo de informacin que se asigne a cada pxel.
Diego Barragn Pablo Vallejo (info@matpic.com)

Imgenes de 1 bit por pxel

En este tipo de imgenes cada celdilla (pxel) slo puede tener uno de dos valores:
Uno o cero. Como basta 1 bit para definir esa alternativa, se les llama "imgenes de
1 bit" (tambin se les llama "imgenes de mapa de bits, de alto contraste,
monocromticas o imgenes de lnea"). Figura 1-2.


Figura 1-2. Imagen Monocromtica, 1 bit por pxel.


Imgenes de escala de grises (8 bits por pxel)

En este tipo de imgenes, cada pxel puede tener 256 valores diferentes (las 256
posibilidades combinatorias de un byte u octeto). En ellas se distinguen hasta 256
tonos diferentes de gris, por lo general no todos a la vez. (Figura 1-3).

Diego Barragn Pablo Vallejo (info@matpic.com)


Figura 1-3. Imagen en escala de grises, 8 bits por pxel

Imgenes RGB (24 bits por pxel)

Si se toma un pxel y se le asigna tres bytes, se dispondr de 24 bits en tres grupos
de ocho, el cual puede ser colorado siguiendo el sistema de color de los monitores
de televisin, que se basan en tres "canales" de luz de color (Rojo, Azul y Verde).
De este modo se puede distinguir aproximadamente 16 millones de tonos de color
(256 Rojo 256 Azul 256 Verde). En realidad, lo que se hace es superponer tres
canales de luz, uno rojo, otro verde y otro azul, cada uno con 256 posibilidades de
tono.

Figura 1-4. Imagen RGB, 24 bits por pxel.

Diego Barragn Pablo Vallejo (info@matpic.com)


Imgenes en color de 8 bits o menos

Es lo que se llama color indexado. Lo que se hace es crear una tabla o ndice de 16
o 256 colores generalmente y a cada una de los posibles valores de un pxel se le
asigna uno de ellos.

Figura 1-5. Imagen en 256 colores











Diego Barragn Pablo Vallejo (info@matpic.com)

1.4. Formatos de imgenes digitales.

Formato de imagen BMP

Esta clase de formato lo utiliza el sistema operativo Windows para guardar sus
imgenes. Este sistema de archivo puede guardar imgenes de 24 bits (millones de
colores), 8 bits (256 colores) y menos.

Esta clase de archivos poseen una muy alta calidad y nitidez en las imgenes, pero
su tamao en disco es bastante considerable, ya que por lo general, no se
encuentran comprimidos.

Formato de archivo GIF

GIF (Compuserve GIF o Graphics Interchange Format)
1
es un formato grfico
utilizado ampliamente en la Internet, tanto para imgenes como para animaciones.

GIF lleg a ser muy popular porque poda usar el algoritmo de compresin LZW
(Lempel Ziv Welch) para realizar la compresin de la imagen, que es ms eficiente
que el algoritmo Run-Lenght Encoding (RLE). Por lo tanto, imgenes de gran
tamao podan ser descargadas en un razonable periodo de tiempo, incluso con
modems muy lentos.

GIF es un formato sin prdida de calidad para imgenes con hasta 256 colores,
limitados por una paleta restringida a este nmero de colores. Por ese motivo, con
imgenes con ms de 256 colores (profundidad de color superior a 8 bits), la
imagen debe adaptarse reduciendo sus colores, produciendo la consecuente
prdida de calidad.


1
El formato fue creado por CompuServe en 1987 para dotar de un formato de imagen en color para sus reas de
descarga de archivos.
Diego Barragn Pablo Vallejo (info@matpic.com)


Formato de archivo TIFF

TIFF (Tagged Image File Format) es un formato de fichero para imgenes.

La denominacin en ingls "Tagged Image File Format" (formato de archivo de
imgenes con etiquetas) se debe a que los ficheros TIFF contienen, adems de los
datos de la imagen propiamente dicha, "etiquetas" en las que se archiva
informacin sobre las caractersticas de la imagen, que sirve para su tratamiento
posterior.

Estas etiquetas describen el formato de las imgenes almacenadas, que pueden
ser de distinta naturaleza:

Binarias (blanco y negro), adecuadas para textos, por ejemplo.
Niveles de gris, adecuadas para imgenes de tonos continuos como fotos
en blanco y negro.
Paleta de colores, adecuadas para almacenar diseos grficos con un
nmero limitado de colores.
Color real, adecuadas para almacenar imgenes de tono continuo, como
fotos en color.

Las etiquetas tambin describen el tipo de compresin aplicado a cada imagen, que
puede ser:

Sin compresin.
PackBits.
Huffman modificado.
LZW, el mismo que usa el formato GIF.
JPEG.
Diego Barragn Pablo Vallejo (info@matpic.com)


1.5. Eleccin del Formato.

La lectura de la imagen al entorno de Matlab, se realiz mediante la funcin
imread, lo cual permite trabajar con casi cualquier formato de imagen existente.


Luego de realizadas las pruebas, y basando la seleccin en dos criterios
primordiales, que son calidad de la imagen y tamao de la misma, se concluye que
los formatos ptimos para el proyecto son los BMP y TIFF.


Sin embargo, se seleccion el formato TIFF, que presenta la ventaja de ser
compresible, con lo cual se emplea menos memoria en la base de datos, sin
presentar una prdida en la calidad de la imagen.




Diego Barragn Pablo Vallejo (info@matpic.com)

Capitulo 2. ANLISIS Y REPRESENTACIN DE HUELLAS DIGITALES


2.1. Introduccin

Una huella digital es una representacin de la forma de la piel de las yemas
de los dedos, que se produce cuando se presionan los dedos sobre una superficie
lisa. Se trata de un patrn, nico y diferente, de un dedo humano.

Las huellas digitales se encuentran completamente formadas alrededor de los siete
meses de gestacin y este patrn permanecer invariable durante toda la vida del
individuo, salvo el caso de accidentes como heridas o cortes graves.

Si bien se puede afirmar que no pueden existir dos huellas digitales iguales, no se
puede decir que stas sean patrones completamente aleatorios, ya que poseen
caractersticas o formas comunes, las que se detallarn ms adelante. [1]


2.2. Caractersticas Fundamentales


Una de las caractersticas principales de las huellas digitales, es su
individualidad, ya que se considera, con fuertes evidencias, que las huellas digitales
son diferentes de persona a persona, e incluso un mismo individuo posee huellas
diferentes en cada uno de los dedos de sus manos.

Esta caracterstica permite el uso de las huellas digitales como uno de los mtodos
de reconocimiento ms usados en muy diversas aplicaciones.


Diego Barragn Pablo

La caracterstica ms evid
intercalados entre s, que aparecen en las imgenes como partes oscuras y claras
respectivamente. (Figura 2

Las crestas y los valles generalmente tienen un espesor que vara entre los 100 y
300m. [1]


2.3. Regiones Singulares


Al hacer un anlisis general, los pa
ms regiones donde las lneas de la misma toman formas distintivas.

A stas partes se las conoce como regiones singulares, las cua
clasificadas en cuatro tipos:

Pablo Vallejo (info@matpic.com)
acterstica ms evidente de una huella es un patrn de crestas y valles
intercalados entre s, que aparecen en las imgenes como partes oscuras y claras
(Figura 2-1)
Las crestas y los valles generalmente tienen un espesor que vara entre los 100 y
Figura 2-1. Crestas y Valles.


Regiones Singulares
Al hacer un anlisis general, los patrones de las huellas digitales muestran una o
ms regiones donde las lneas de la misma toman formas distintivas.
se las conoce como regiones singulares, las cua
tipos: lazos, deltas, remolinos y arcos (Figura 2
huella es un patrn de crestas y valles
intercalados entre s, que aparecen en las imgenes como partes oscuras y claras
Las crestas y los valles generalmente tienen un espesor que vara entre los 100 y

muestran una o
ms regiones donde las lneas de la misma toman formas distintivas.
se las conoce como regiones singulares, las cuales pueden ser
y arcos (Figura 2-2).
Diego Barragn Pablo Vallejo (info@matpic.com)


Figura 2-2. Tipos Bsicos de Regiones Singulares

Las regiones singulares son comnmente usadas para la clasificacin de las
huellas digitales, esto es asignar una huella a una clase especfica de un grupo de
clases, basndose en sus regiones singulares, con el fin de simplificar la bsqueda
de las mismas. [1] (Figura 2-3)


Figura 2-3. Clasificaciones Bsicas de los patrones digitales.



2.4. Minucias.

En un nivel ms detallado, se denotan otras caractersticas importantes dentro de
los patrones digitales, conocidas como minucias. Las minucias se refieren a las
diferentes formas en que las crestas pueden ser discontinuas. Por ejemplo, una
cresta puede sbitamente finalizar (terminacin), o puede esta dividirse en dos
crestas independientes (bifurcacin).

Diego Barragn Pablo Vallejo (info@matpic.com)


Aunque se pueden considerar diversos tipos de minucias, los principales se
muestran en la Figura 2-4.


Figura 2-4. Tipos principales de Minucias.

El Instituto Nacional Americano de Estndares ANSI, propuso en 1986 un sistema
basado en cuatro clases de minucias: terminaciones, bifurcaciones, trifurcaciones o
cruces, e indeterminados.

Por su parte el Bur Federal de Investigaciones FBI introdujo el modelo de minucias
coordenadas, que considera solo terminaciones y bifurcaciones, las que se denotan
por su clase, las coordenadas en los ejes x y y y el ngulo entre la tangente de
la lnea de la cresta con el eje horizontal, como se aprecia en la Figura 2-5. [1]

Diego Barragn Pablo Vallejo (info@matpic.com)


Figura 2-5. Componentes del Sistema de Minucias Coordenadas (F.B.I.).

En la prctica existe una ambigedad entre terminaciones y bifurcaciones, que se
debe a la presin aplicada en el dedo cuando se deja la huella, las terminaciones
pueden aparecer como bifurcaciones y viceversa.

Si se adquiere una imagen en alta resolucin, por ejemplo 1000 ppp, es posible
identificar claramente los poros de la piel, que pueden variar en tamao de 60 a
250m. Aunque la informacin de los poros es altamente distintiva, muy pocas
tcnicas de identificacin usan esta caracterstica, dado que su aplicacin confiable
requiere una muy alta resolucin e imgenes de muy buena calidad, lo que es difcil
de conseguir en el campo prctico.

Para determinar las caractersticas de una huella, el algoritmo propuesto se
muestra en la siguiente figura:

Diego Barragn Pablo Vallejo (info@matpic.com)


Figura 2-6. Diagrama de Flujo Algoritmo Reconocimiento


Una vez almacenada la huella en la base de datos, se contina con el proceso de
empate:

Diego Barragn Pablo Vallejo (info@matpic.com)


Figura 2-7. Diagrama de Flujo Algoritmo de Empate.


Diego Barragn Pablo Vallejo (info@matpic.com)

Capitulo 3. REALCE DE LA IMAGEN

3.1. Introduccin

Existen muchas tcnicas de reconocimiento biomtrico, que comparan directamente
dos imgenes mediante una correlacin, pero las imgenes en escala de grises que
se emplean generalmente en estas actividades no son adecuadas para estos
mtodos, debido a que la operacin de la correlacin es precisa solo si las
imgenes tienen la misma orientacin y posicin en el plano.

Con este antecedente, para un sistema de identificacin por huellas digitales, se
hace necesaria una etapa de extraccin de caractersticas que facilite el
reconocimiento y clasificacin.

As que el garantizar una imagen de calidad aceptable es uno de los puntos bsicos
que permiten mejorar la precisin de los sistemas de reconocimiento y
autenticacin dactilar, por lo que se debe prestar suma importancia a la etapa de
mejora de las imgenes digitales.

Una imagen de una huella digital puede considerarse como un sistema de texturas
cuya orientacin y frecuencia varan lentamente a lo largo de la imagen, es decir
poseen propiedades no estacionarias. Por lo tanto el anlisis tradicional de Fourier
no es el adecuado para analizar la imagen completa.

Dado que la calidad de la imagen a procesar no es siempre la ms adecuada, al
emplear una Transformada de Fourier tradicional, se obtienen resultados
adecuados solo en ciertas partes de la imagen, lo que implica una gran prdida de
informacin en el resto de la misma.

La mayora de algoritmos de realce, emplean ventanas para su aplicacin, por lo
general ventanas de 32 pxeles, lo que combinado con un anlisis de Fourier de
tipo estacionario, produce diferencias muy marcadas entre las ventanas de la
Diego Barragn Pablo Vallejo (info@matpic.com)

imagen, como se ve en la Figura 3-1, lo que adems puede introducir informacin
falsa en la imagen.


Figura 3-1. Imagen realzada con anlisis de Fourier tradicional.

Como vemos en la figura, existen sectores donde la calidad de la imagen es ptima,
pero ante una ligera variacin de la orientacin de las crestas, produce una muy
pobre calidad de la imagen.

Para el presente proyecto se emplear el algoritmo de realce en base al anlisis
STFT, propuesto por el Centro Unificado para Biomtrica y Sensores de la
Universidad de Buffalo, Estados Unidos. [6]

La Transformada de Fourier de Tiempo Corto o STFT, es una transformada que se
emplea para encontrar la frecuencia sinusoidal y la orientacin de secciones locales
de una seal, mientras esta vara con el tiempo. La STFT, para una dimensin est
dada por la ecuacin (1):

(1)

Diego Barragn Pablo Vallejo (info@matpic.com)

En el anlisis STFT, se divide la imagen en ventanas que se solapan unas a otras,
con lo que se puede considerar que la imagen es estacionaria en esta pequea
regin, cada bloque es transformado al dominio de Fourier y se almacena como
resultado la frecuencia y orientacin del bloque.

Al permitir que las ventanas se solapen unas a otras, se evita tambin obtener
lmites muy marcados entre las diferentes ventanas de la imagen, lo que se conoce
como efecto bloque.

Este mtodo puede ser extendido a dos dimensiones, con lo que la STFT, puede
definirse como:

X(
1
,
2
,
1
,
2
) = _ I(, )
-
( -
1
, -
2
)
-](o
1
x+o
2
)

-
(2)

Donde I(x, y) es la imagen de entrada y W es una ventana espectral previamente
seleccionada.

A partir de este anlisis, se obtienen estimaciones estadsticas de frecuencia de
crestas y orientacin de las mismas, las cuales son empleadas para el filtrado de la
imagen.


Con esta informacin cada bloque puede ser aproximadamente moldeado como
una onda superficial de acuerdo con la ecuacin (3) y como puede verse en la
figura 3.2.

I(, ) = {cos (n(cos(0) +sn(0)))] (3)

Diego Barragn Pablo Vallejo (info@matpic.com)


Figura 3-2. (a) Imagen real, (b) Modelado aproximado.


Una vez obtenidos los datos de frecuencia y orientacin, se filtra cada bloque en el
dominio de Fourier, se obtiene su Transformada Inversa y entonces se puede
reconstruir la imagen original a partir de los bloques realzados. (Figura 3.3)



Figura 3-3. Imagen Mejorada.

Diego Barragn Pablo Vallejo (info@matpic.com)

3.2. Binarizacin.

La imagen mejorada, resultante del proceso de realce, se encuentra en escala de
grises, es decir una imagen que contiene 8 bits por cada pxel, y con 256
posibilidades diferentes de tonos de gris.

El prximo paso consiste en transformar esta imagen a un formato binario, unos o
ceros, lo que va a permitir diferenciar claramente y procesar las crestas y los valles
en la imagen.

Para esta tarea, la mejor opcin es la utilizacin de la funcin im2bw, que se
encuentra incluida en el toolbox de procesamiento de imgenes de Matlab. Esta
funcin convierte imgenes en color o escala de grises en imgenes binarias,
basndose en un determinado umbral, el cual se calcula con la funcin graytresh,
que devuelve el valor del umbral ms adecuado para una imagen determinada y
que puede ser usado como parmetro de entrada en la funcin im2bw.

Dado que la imagen de una huella digital no es esttica, es decir los valores de gris
varan considerablemente a travs de la misma, la forma ms eficiente de realizar la
transformacin es dividiendo la imagen en bloques, y para cada uno de estos,
calcular el umbral de conversin.

Existen algunas alternativas para realizar este procesamiento, una de las ms
comunes es realizar un ciclo repetitivo o condicional, for, while o if, aunque
Matlab provee en su toolbox de procesamiento de imgenes, una herramienta ms
adecuada para este trabajo. Se trata de la funcin blkproc, que se encarga de
aplicar a cada bloque de la imagen de entrada, uno o varios procesos programados.
Para nuestro caso se aplicarn las funciones graytresh e im2bw a cada bloque
de 32 por 32 pixeles.

El resultado final del proceso de Binarizacin se puede apreciar en la figura 3.4.

Diego Barragn Pablo Vallejo (info@matpic.com)


Figura 3-4. Imagen binarizada.







Diego Barragn Pablo Vallejo (info@matpic.com)

3.3. rea de Inters.

En el procesamiento de la huella es importante determinar el rea de inters, o lo
que es lo mismo, la regin donde est la informacin para de este modo los
posteriores procesamientos se realicen solo dentro de esta rea y economizar
procesos.

Para determinar el rea de inters, se realiza el siguiente procedimiento presentado
en [3] y [5]:

1. Dividir la huella en bloques de w x w. Se us un bloque de 16. La funcin de
Matlab para este punto es nuevamente blkproc, que se encarga de
aplicar a cada bloque de la imagen de entrada, uno o varios procesos
programados
2. Calcular el gradiente ( ) ,
x
i j y ( ) ,
y
i j de cada bloque. Para este trabajo
se us el operador de Sobel, dado por la funcin fspecial('sobel'). Sin
embargo, otra alternativa pude ser usar la funcin gradient.
3. Estimar la orientacin de cada bloque centrada en el pxel (i,j) usando las
siguientes ecuaciones:
( ) ( ) ( )
( ) ( ) ( ) ( )
( )
( )
( )
2 2
2 2
2 2
2 2
2 2
1
, 2 , , (4)
, , , (5)
,
1
, tan (6)
2 ,
w w
i j
x x y
w w
u i u j
w w
i j
y x y
w w
u i u j
y
x
V i j u v u v
V i j u v u v
V i j
i j
V i j

+ +
= =
+ +
= =

=
=

=






Donde (i,j) es la estimacin del mnimo cuadrado de la orientacin de la
cresta en cada bloque centrado en el pxel (i,j). Matemticamente, esto
representa la direccin que es ortogonal con la direccin dominante del
espectro de Fourier de la ventana de w x w.
Diego Barragn Pablo Vallejo (info@matpic.com)

Para el clculo del gradiente se us la funcin filter2, la cual es un filtro
FIR de dos dimensiones, que realiza el clculo del gradiente usando la
correlacin.
4. Luego de estimar el campo de orientacin de la huella, se determina la
regin de inters en base a un nivel de confiabilidad de la orientacin. La
definicin de este nivel de confiabilidad se define como:
( )
( ) ( )
( )
( )
2 2
, ,
1
,
,
x y
e
V i j V i j
i j
wxw V i j

+
=
(7)

( ) ( ) ( )
2 2
2 2
2 2
, ,
w w
i j
e x y
w w
u i u j
V u v u v
+ +
= =
= +

(8)

Para cada bloque, si el nivel de confiabilidad est por debajo de un umbral (en este
caso 0.05), se deduce que todos los pxeles de ese bloque pertenecen al fondo y no
a la huella. La figura 3.5 muestra el campo de orientaciones antes y despus de
determinar el nivel de confiabilidad.

Figura 3-5. Campo de orientaciones antes y despus de aplicar el nivel de confiabilidad.
5. Se crea una matriz de ceros (usando la funcin zeros) cuya dimensin son
los mltiplos de 16 de la imagen. Por ejemplo, una imagen cuyas
dimensiones son 156 pxeles de ancho por 230 pxeles de alto, producir
Diego Barragn Pablo Vallejo (info@matpic.com)

una matriz de 15 filas (ceil (alto/16)) por 10 columnas (ceil (ancho/16)). Cada
elemento de esta matriz es un identificador de bloque de la imagen de la
huella. Si la orientacin pas el umbral del nivel de confiabilidad, ese
identificador se establece en 1, con lo cual se delimita el rea de inters.
6. El rea de inters dada por el campo de orientacin deber ser procesada
usando una operacin morfolgica con el fin de eliminar cavidades en la
misma. La funcin de Matlab bwmorph con el parmetro open puede
expandir la imagen y quitar picos introducidos por el ruido de fondo. Con el
parmetro close encoge la imagen y eliminar cavidades pequeas.(Figura
3-6)


Figura 3-6. rea de inters luego de aplicar bwmorph.


Diego Barragn Pablo Vallejo (info@matpic.com)


3.4. Adelgazamiento.

Adelgazamiento es el proceso por el cual, las crestas en la imagen, que se
representan mediante unos binarios, son reducidas en espesor, para de esta
manera obtener una imagen en la que todas las crestas tengan solamente 1 pixel
de ancho, lo que va a facilitar el posterior proceso de extraccin de puntos
caractersticas.

Se emplearn operaciones morfolgicas sobre las imgenes, en este caso se
utilizar la funcin bwmorph, la cual comprende algunos tipos de operaciones
morfolgicas de las cuales usaremos adelgazamiento thin, clean y spur.

La operacin thin va a realizar el adelgazamiento repetidas veces, hasta que la
imagen deje de cambiar, esto ocurrir cuando las crestas tengan solamente un pixel
de ancho como se muestra en la Figura 3.7.

Las operaciones clean y spur van a remover los pixeles aislados que
generalmente son producto del ruido de la imagen.

Figura 3-7. Imagen Adelgazada.
Diego Barragn Pablo Vallejo (info@matpic.com)

Capitulo 4. IDENTIFICACIN DE MINUCIAS

4.1. Introduccin

Una vez obtenida la imagen esqueleto de la huella digital, todas las crestas
tienen un espesor de un pixel, lo que permite realizar una bsqueda de las minucias,
bifurcaciones y terminaciones.

Para esta tarea se emplearn tambin algunas operaciones morfolgicas, includas
en el toolbox de procesamiento de imgenes de Matlab.

4.2. Mapa de Crestas.

El primer paso es identificar todas las crestas presentes en la imagen, para ello se
utiliz la funcin bwlabel, que identifica y etiqueta todos los elementos
conectados en una imagen binaria. El resultado de esta funcin se puede observar
en la Figura 4.1, donde cada cresta es etiquetada con un nmero diferente, es decir
cada uno de los elementos conectados es representado con un color distinto.


Figura 4-1. Mapa de Crestas.
Diego Barragn Pablo Vallejo (info@matpic.com)

La funcin bwlabel, devuelve adems el nmero total de elementos conectados,
es decir el nmero total de crestas.

4.3. Identificacin de Minucias

Para la identificacin de minucias, se emplear el algoritmo propuesto en varias
referencias conocido como Crossing Number. Este algoritmo consiste en tomar
ventanas de la imagen de 3 por 3 pixeles, y sobre stas aplicar la siguiente
ecuacin [5]:

cn(p) =
1
2
_ |p
mod 8
-p
-1
|
8
=1
(9)

Donde p es el valor de cada pixel adyacente al pixel central de la ventana.
Dependiendo del resultado de esta ecuacin, el pixel central de la ventana puede
ser identificado como terminacin, bifurcacin o cresta continua. [1]

Valor de CN Minucia
1 Terminacin
2 Cresta Continua
3 Bifurcacin


Para ilustrar este algoritmo se tiene algunos ejemplos en las figuras 4.2, 4.3. y 4.4.

Diego Barragn Pablo Vallejo (info@matpic.com)


Figura 4-2. Cresta Continua.

Esta matriz de tres por tres, usando la funcin sum que suma los elementos de
cada columna, con lo cual se calcula el crossing number. En la Figura 4.3.1 se tiene
una cresta continua, al aplicar la frmula del crossing number, se obtiene el valor de
dos.



Figura 4-3. Terminacin.


Diego Barragn Pablo Vallejo (info@matpic.com)

En la Figura 4.3.2 se tiene una terminacin, al aplicar la frmula del crossing
number, se obtiene el valor de uno.


Figura 4-4. Bifurcacin.

Finalmente en la Figura 4.3.3 se tiene una bifurcacin, al aplicar la frmula del
crossing number, se obtiene el valor de tres.

Debido a la presencia de ruido en la huella se marcan minutas en estos sectores, y
es necesario un paso posterior para remover estas minutas espurias. Simplemente
hay que calcular la distancia euclidiana entre cada supuesta minuta y todas las
dems. Si esta distancia es menor a la distancia entre crestas, ambas minutas son
removidas. La ecuacin de la distancia euclidiana se muestra a continuacin:

( ) ( )
2 2
1 2 1 2
d x x y y = +
(10)


Para determinar la distancia entre crestas, se realiza un muestreo en toda la huella.
Este muestreo toma filas de la matriz, suma todos los pxeles de la fila cuyo valor
sea 1 y luego se divide la longitud de la fila para el resultado de la suma. Se
promedia el valor con los resultados de las otras filas.
Diego Barragn Pablo Vallejo (info@matpic.com)


La Figura 4-5 muestra la longitud de la distancia entre crestas. El clculo arroj el
valor de 9, que es cercano a la aproximacin hecha en la huella (7.85 pxeles) con
la funcin imdistline, que mide distancias en pxeles en una imagen [2].



Figura 4-5. Ancho Entre Crestas.


Al identificar un pixel como terminacin o bifurcacin, resulta relativamente simple
almacenar las coordenadas de estos puntos as como las respectivas orientaciones
y marcarlos en la imagen original, Figura 4.6.

Para obtener la orientacin de cada minucia, de coordenadas (mx, my), se toma un
segmento de la cresta, con una longitud igual al ancho inter crestas, con el origen
en la minucia. Luego se suman las coordenadas de todos los puntos del segmento,
tanto en x como en y, estas sumatorias son divididas por el valor del ancho inter
crestas (sx, sy), y el ngulo de orientacin es igual a:

0 = tan
-
(s-t)
(sx-tx)
(11)
Diego Barragn Pablo Vallejo (info@matpic.com)


Figura 4-6. Minucias Marcadas.



Diego Barragn Pablo Vallejo (info@matpic.com)

Capitulo 5. ALGORITMO DE EMPATE.


El algoritmo de empate es el encargado de calcular la semejanza entre dos
huellas. El algoritmo de empate por minucias es el ms conocido y ampliamente
usado para reconocimiento de huellas digitales [3].

Para este apartado, se eligi el algoritmo que se basa en alineacin de la huella de
entrada con la plantilla de la base de datos. Este algoritmo divide esta etapa en dos
pasos: (i) Etapa de alineacin y (ii) etapa de empate.

5.1. Etapa de Alineacin.

Con respecto a la etapa de alineacin, el primer paso es tomar puntos de la
cresta asociada a la minucia (durante la extraccin de la minucia, la cresta donde
reside la minucia tambin es almacenada y el origen de la misma coincide con la
coordenada de la minucia). Los puntos se toman a una distancia igual al ancho
entre crestas (distancia en pxeles entre una cresta y otra).

Empatando las crestas, se obtiene un umbral que de superar el valor de 0.8, da una
primera estimacin de semejanza. Definiendo R
d
y R
D
es el conjunto de crestas
asociadas con las minucias de entrada y de la plantilla, respectivamente. La
ecuacin de empate se describe como sigue [3]:

0
2 2
0
L
i i
i
L
i i
i
d D
S
d D
=
=
=

(12)


L denota el ancho entre crestas y d R
d
y D R
D
. Cuando S (0S1) es mayor a
0.8, se contina con el empate minucia a minucia, caso contrario, se pasa a la
siguiente huella.
Diego Barragn Pablo Vallejo (info@matpic.com)


Si S es mayor a 0.8, se realiza la rotacin de las minucias con respecto a una
minucia de referencia (x,y,)
d
:

cos sin 0
sin cos 0 *
0 0 1
A d
i i
A d
i i
A d
i i
x x x
y y y







=






(13)


5.2. Etapa de Empate.

La etapa de empate, ante todo, debe poseer cierto grado de flexibilidad dado que
es prcticamente imposible tener datos que empaten de manera perfecta.

Para esto, se emplean ventanas de veinte por veinte pixeles, rango dentro del cual
puede variar la ubicacin de la minucia. Del mismo modo, se acepta un grado de
tolerancia de un tercio de pi para el valor de la orientacin.

Para las minucias que se encuentren dentro de estos valores de tolerancia, son
empatadas como minucias coincidentes, caso contrario se contina con la siguiente
minucia.

El porcentaje de empate es igual al nmero total de minucias coincidentes, para el
nmero total de minucias en la plantilla de comparacin.


% po =
NML
N1M
- (14)

NME: Nmero de minucias empatadas
NTM: Nmero de minucias totales
Diego Barragn Pablo Vallejo (info@matpic.com)

Capitulo 6. MANEJO DE BASE DE DATOS.

Para almacenar los tanto los datos del ciudadano, la imagen de la huella y
los resultados del procesamiento, se destinan tres carpetas. La primera contiene un
archivo txt con los datos del ciudadano (nombre, direccin, cdula de ciudadana,
etc.), el segundo contiene un archivo ASCII con las coordenadas de cada minuta en
la huella y el mapa de crestas y una tercera almacena la huella.

Para almacenar los datos de la huella, se usa la funcin save, y para leerlos se
usa la funcin load [2]. Debido a que la lectura de las huellas (archivo .dat) se
realiza en otra carpeta, se aade las funciones de este programa al path de
Matlab para evitar problemas de direccin.

Con la ayuda de la funcin dir, se realiza el empate de la huella de entrada con
todas las plantillas almacenada.

Diego Barragn Pablo Vallejo (info@matpic.com)

Capitulo 7. Resultados.

Para las pruebas experimentales, se obtuvieron impresiones de huellas digitales
reales, las cuales fueron digitalizadas por medio de un escner, con una resolucin
de trescientos puntos por pulgada. Las imgenes fueron almacenadas en formato
TIFF, empleando compresin LWZ en la imagen y compresin RLE para las capas.
(Figura 7-1).


Figura 7-1. Opciones de almacenamiento TIFF

Dentro del GUI del programa, se tienen dos opciones, la primera es Ingresar
Nueva Huella, esta opcin procesa la imagen y almacena las coordenadas de la
minucias y su respectiva orientacin dentro de un archivo de texto con extensin
*.dat. Los resultados del ingreso de una nueva huella se muestran en las Figuras 7-
2 y 7-3.

Diego Barragn Pablo Vallejo (info@matpic.com)


Figura 7-2. Interfaz Grfica del Programa


Figura 7-3. Archivo DAT generado.

Diego Barragn Pablo Vallejo (info@matpic.com)


En la Figura 7-3 se aprecia el contenido del archivo DAT generado por el programa,
donde las columnas corresponden a las coordenadas X, Y con la orientacin de
cada una de las minucias.

La segunda opcin del GUI permite ingresar una huella desconocida y compararla
con cada una de las huellas ingresadas previamente, y presenta como resultado la
etiqueta de la huella que ms se asemeja a la ingresada. (Figura 7-4).



Figura 7-4. Resultados de Bsqueda de Huella Desconocida.

Diego Barragn Pablo Vallejo (info@matpic.com)


7.1. Rendimiento y Eficiencia.

7.1.1. Rendimiento

El rendimiento del sistema est en relacin directa con las caractersticas del
computador donde se ejecuta el programa. Para estas pruebas, se us un PC
porttil cuyas caractersticas se detallan a continuacin (Figura 7-5):


Figura 7-5. Caractersticas Tcnicas del Computador


Para medir el tiempo de cmputo de un programa se usa las funciones tic y toc
las cuales miden el rendimiento usando el cronmetro de un timer [2]. Tic toma el
valor actual de tiempo y toc retorna entre el tiempo transcurrido. Mathworks
recomienda hacer de tres a cuatro mediciones para obtener un valor estable y real.
Los resultados de se muestran a continuacin:


Figura 7-6. Resultado funciones tic toc para almacenamiento


Diego Barragn Pablo Vallejo (info@matpic.com)

Para calcular el rendimiento del empate entre las minucias, se usan las mismas
funciones tic y toc. Sin embargo, el resultado de tiempo se divide para el
nmero total de huellas en la base de datos.

Figura 7-7. Resultado funciones tic toc para empate.


De esta manera, el tiempo en comparar las minucias de una huella con otra es:

=
2.132
14
= . snos (15)


7.1.2. Eficiencia

Con propsitos de prueba fue ingresado un nmero total de catorce imgenes
obteniendo empates correctos en doce casos. En base a estas pruebas
experimentales se puede afirmar que la eficiencia del sistema es igual a:

%rrors =
dc cocs
totuI dc pucbus
- (16)

%rrors =
2
14
- = ,% (17)





Diego Barragn Pablo Vallejo (info@matpic.com)

Capitulo 8. Conclusiones y Recomendaciones.

En base a los resultados obtenido en la seccin 7.1.2. podemos concluir que
aunque no se obtenga una precisin del cien por ciento en las etapas de
identificacin de minucias y empate de huellas, si se puede conseguir
identificar las imgenes que presenten mayor porcentaje de similitud, con
una eficiencia aproximada del ochenta y cinco por ciento.
Debido a que el adelgazamiento de la huella no es a un pixel exacto, en el
sector de las bifurcaciones ciertas minucias de bifurcacin se eliminan
debido a que cerca de ellas se marca una terminacin cuya distancia es
menor al rea inter crestas.
En base a las pruebas, si una huella posee pocas minucias (menos de 6), la
imagen de entrada tiene alto porcentaje de empate con aquella huella
debido a que el nmero de minucias empatadas es cercano al nmero total
de minucias.
Se consigui plasmar en un programa computacional, toda una base terica
que envuelve el reconocimiento de huellas digitales, consiguiendo una
aplicacin de buena precisin, y bajo coste computacional.
Las aplicaciones del presente proyecto son muy variadas, empezando por la
automatizacin de sistemas de control de acceso, hasta llegar a la
investigacin forense. Con pequeas modificaciones, tales como un sistema
de Login, o un preciso sistema de adquisicin de huellas, este trabajo se
puede convertir en una poderosa herramienta de investigacin de delitos,
para instituciones como la Polica Judicial Nacional.
Como trabajos futuros, se cree conveniente, la implementacin del manejo
de una base de datos ms completa, empleando programacin
especializada como SQL, ORACLE, etc. Los datos a almacenar en esta
base de datos corresponden a dos matrices: Coordenadas y orientaciones
de minucias junto a su mapa de crestas.




Diego Barragn Pablo Vallejo (info@matpic.com)


Referencias.

[1]. Maltoni, Maiao. Handbook of fingerprint recognition, 2003.
[2]. Gonzalez, Word, Eddins. Digital Image Processign Using Matlab, 2002, 2
nd

Edition.
[3]. Lin Hong. "Automatic Personal Identification Using Fingerprints", Ph.D.
Thesis, 1998.
[4]. Fingerprint Verification Competition, FVC2002.
http://bias.csr.unibo.it/fvc2002/.
[5]. Thai Raymond, Fingerprint Image Enhancement and Minutiae Extraction,
University of Western Australia, 2003.
[6]. Chikkerur Sharat S, Cartwright Alexander, Fingerprint Image Enhancement
using STFT, University of Buffalo, NY. 2003.
[7]. SFINGE (Sintetic Fingerprint Generator), Biometric System Laboratory,
University of Bologna, Italy.
http://biolab.csr.unibo.it/home.asp.

Vous aimerez peut-être aussi