• No se han encontrado resultados

Sistema avanzado de búsqueda y determinación de identidad en base a huellas dactilares usando procesamiento digital de imágenes en Matlab 7.4

N/A
N/A
Protected

Academic year: 2017

Share "Sistema avanzado de búsqueda y determinación de identidad en base a huellas dactilares usando procesamiento digital de imágenes en Matlab 7.4"

Copied!
52
0
0

Texto completo

(1)

J

hZ.- Q2005

005

O oS

(2)

ESCUELA DE ELECTRONICA Y TELECOMUNICACIONES

SISTEMA AVANZADO DE BÚSQUEDA Y DETERMINACIÓN DE IDENTIDAD

EN BASE A HUELLAS DACTILARES USANDO PROCESAMIENTO DIGITAL

DE IMÁGENES EN MATLAB

7.4

AUTORES:

DIEGO ORLANDO BARRAGÁN GUERRERO

PABLO RAMIRO VALLEJO ZÚÑIGA

PROYECTO DE FIN DE CARRERA PREVIO A LA OBTENCIÓN DEL TÍTULO DE

INGENIERO EN ELECTRÓNICA Y TELECOMUNICACIONES

DIRECTOR DE PROYECTO DE FIN DE CARRERA:

ING. CARLOS E. CARRIÓN B.

(3)

CERTIFICACIÓN: ACEPTACIÓN PROYECTO DE FIN DE CARRERA

Loja, 9 de Octubre de 2008.

Carlos Enrique Carrión Betancourt

Docente Investigador de la Escuela de Electrónica y Telecomunicaciones

Dejo constancia de haber revisado y estar de acuerdo con el proyecto de fin

de carrera,

titulado:"

SISTEMA AVANZADO DE BÚSQUEDA Y

DETERMINACIÓN DE IDENTIDAD

EN BASE A

HUELLAS

DACTILARES

USANDO

PROCESAMIENTO DIGITAL DE IMÁGENES

EN MATLAB 7.4"

Presentado por: Diego Orlando Barragán Guerrero

Pablo Ramiro Vallejo Zúñiga

Particular que comunico para los fines legales pertinentes.

Ing. Carlos

iue=T

IESIS)

n

Betancourt

^nlR

^

í(

ECTOR

Visto Bueno Dirección Escuela

(4)

Declaración de Cesión de Derechos

Yo, Diego Orlando Barragán Guerrero declaro conocer y aceptar la disposición del Art. 67 del Estatuto Orgánico de la Universidad Técnica Particular de Loja que en su parte pertinente textualmente dice: "Forman parte del patrimonio de la Universidad la propiedad intelectual de investigaciones, trabajos científicos o técnicos y tesis de grado que se realicen a través, o con el apoyo financiero, académico o institucional (operativo) de la Universidad"

...J... ... ... Diego Orlando Barragán Guerrero

Yo, Pablo Ramiro Vallejo Zúñiga declaro conocer y aceptar la disposición del Art. 67 del Estatuto Orgánico de la Universidad Técnica Particular de Loja que en su parte pertinente textualmente dice: "Forman parte del patrimonio de la Universidad la propiedad intelectual de investigaciones, trabajos científicos o técnicos y tesis de grado que se realicen a través, o con el apoyo financiero, académico o institucional (operativo) de la Universidad"

... a,..

(5)

II

DECLARACIÓN DE AUTORÍA

Los conceptos, ideas y opiniones desarrolladas en el presente trabajo son de

exclusiva responsabilidad de los autores.

Diego Orlando Barragán Guerrero

--- t - -

(6)

III

INTRODUCCIÓN

Cuando hablamos de reconocimiento biométrico hacemos referencia al uso de características distintivas fisiológicas y comportamentales, como las huellas digitales, rostro, iris, voz, etc., llamadas identificadores biométricos, para automáticamente reconocer a una persona, y brindar o denegar acceso a instalaciones o servicios. Ya que estas características no pueden ser fácilmente cambiadas, falsificadas o compartidas, son consideradas los elementos más confiables para el reconocimiento de personas que métodos tradicionales.

Cada uno de los métodos de identificación biométrica tiene sus fortalezas y debilidades y la elección de un método particular depende de los requerimientos de la aplicación a desarrollar (Tabla 1). El método de identificación por huella digitales es el más usado debido a que las características de la huella son únicas para cada persona y además persisten en el tiempo. Este método se viene usando desde hace cien años y su automatización desde hace cincuenta. Entre sus aplicaciones, la más difundida es la investigación forense.

OjoQris) Huellas Dactilares Geometría Escritura y firma Voz Cara de la mano

Fiabilidad Muy alta Alta Alta Media Alta Alta

Facilidad de Uso Media Alta Alta Alta Alta Alta

Prevención de Muy alta Alta Alta Media Media Media

ataques

Aceptación Media Media Alta Muy alta Alta Muy alta

Estabilidad Alta Alta Media Baja Media Media

(7)

Iv

OBJETIVOS

Generales

Al realizar investigaciones de biometría, se busca obtener una aplicación práctica y de bajo costo, que automatice los procesos de identificación por huellas digitales.

Específicos

. Determinar el formato de imagen óptimo para almacenar y procesar la huella digital.

Filtrado, restauración, binarización y adelgazamiento de la imagen como paso previo para su procesamiento.

. Reconocer las minucias y sus características dentro de la imagen.

. Creación de una base de datos que contenga las características de la huella.

(8)

DEDICATORIA

Dedicada con toda admiración y respeto a mi linda madre Mery Beatriz, la cual gracias a su fe, constancia, sacrificio, amor, empeño, sabiduría, paciencia, coraje, nobleza... me ha dado el arma secreta para buscar la felicidad: la educación. A mi fascinante familia: Giovanna, Adriana, Pepe, mis dos locuaces sobrinos David y Pablo. A mi paciente amiga y gran compañera e hilarante novia, Vanesa. A mi padre, por ese único abrazo que recibí de él en la vida.

Y a todos los programadores de corazón.

(9)

DEDICATORIA

A todos y cada uno de los miembros de mi familia, quienes han sido, son y serán los pilares fundamentales de todo cuanto he conseguido.

al

(10)
[image:10.562.94.487.95.658.2]

TABLA DE CONTENIDO

VII

Capitulo 1 1.1. 1.2. 1.3. 1.4. 1.5. Capitulo 2. 2.1. 2.2. 2.3. 2.4. Capitulo 3. 3.1. 3.2. 3.3. 3.4. Capitulo 4. 4.1. 4.2. 4.3. Capitulo 5. 5.1. 5.2. Capitulo 6. Capitulo 7. 7.1. Capitulo 8

ELECCIÓN DEL FORMATO DE IMÁGENES ...1

Imagendigital ... . ... . ... 1

Imágenes Vectoriales ... ... . ... . ... 1

Imágenes de Mapa de Bits ... ... ....2

Formatos de imágenes digitales ... . ... ... ... ... ..6

Formatode imagen BMP ... . ... ... ... .... ... . ... 6

Formatode archivo GIF ... . ... . ... . ... ... 6

Formatode archivo TIFF ... ---- ... . ... .. ... . ... 7

Eleccióndel Formato ... . ... ... .. ... . ... 8

ANÁLISIS Y REPRESENTACIÓN DE HUELLAS DIGITALES .... ...9

Introducción... ... 9

Características Fundamentales.. ... ... ... 9

Regiones Singulares ...10

Minucias. ... . ... . ... ... . ... . ... . ... ... 11

REALCEDE LA IMAGEN ... ... ... ... . ... ..16

Introducción... . ... . ... . ... .... ... .. ... ..16

Binarización... .... ... . ... . ... 20

Áreade Interés. ... . ... 22

Adelgazamiento... ---- ... . ... . ... . ... 25

IDENTIFICACIÓN DE MINUCIAS.. ... . ... .... ... . ... 26

Introducción... . ... . ... . .... ..26

Mapade Crestas... ... . ... . ... .. ... . ... . ... 26

Identificación de Minucias ...27

ALGORITMODE EMPATE ... ... . ... 32

Etapade Alineación . ... . ... . ... .. ... ... . ... . ... 32

Etapade Empate ... .. ... 33

MANEJO DE BASE DE DATOS ... . ... . ... 34

Resultados. ... . ... ... . ... 35

Rendimiento y Eficiencia . ... ...38

7.1.1.Rendimiento ...38

7.1.2. Eficiencia ... . ... . ... ...39

Conclusiones y Recomendaciones ... ... ... . ...

(11)

Ilustraciones

y Tablas

FIGURA 1-1. REPRESENTACIÓN DE UNA IMAGEN MEDIANTE PIXELES ... 2

FIGURA 1-2. IMAGEN MONOCROMÁTICA, 1 BIT POR PIXEL ... 3

FIGURA 1-3. IMAGEN EN ESCALA DE GRISES, 8 BITS POR PIXEL ...4

FIGURA 1-4. IMAGEN RGB, 24 BITS POR PIXEL. ... 4

FIGURA 1-5. IMAGEN EN 256 COLORES ...5

FIGURA2-1. CRESTAS Y VALLES ... 10

FIGURA 2-2. TIPOS BÁSICOS DE REGIONES SINGULARES...11

FIGURA 2-3. CLASIFICACIONES BÁSICAS DE LOS PATRONES DIGITALES... ... .11

FIGURA 2-4. TIPOS PRINCIPALES DE MINUCIAS . ... 12

FIGURA 2-5. COMPONENTES DEL SISTEMA DE MINUCIAS COORDENADAS (FBI.).. 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 ANÁLISIS 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 DESPUÉS DE APLICAR EL NIVEL DECONFIABILIDAD...23

FIGURA 3-6. ÁREA DE INTERÉS LUEGO DE APLICAR "BWMORPH ... ... 24

FIGURA 3-7. IMAGEN ADELGAZADA . ... 25

FIGURA4-1. MAPA DE CRESTAS . ... 26

FIGURA 4-2. CRESTA CONTINUA . ... 28

FIGURA4-3. TERMINACIÓN. ... 28

FIGURA4-4. BIFURCACIÓN. ... ... ... 29

FIGURA 4-5. ANCHO ENTRE CRESTAS ... 30

FIGURA4-6. MINUCIAS MARCADAS ... ... ... 31

FIGURA 7-1. OPCIONES DE ALMACENAMIENTO TIFF- ... 35

FIGURA 7-2. INTERFAZ GRÁFICA DEL PROGRAMA ... ... 3€

FIGURA 7-3. ARCHIVO DAT GENERADO ... 3€

FIGURA 7-4. RESULTADOS DE BÚSQUEDA DE HUELLA DESCONOCIDA . ... 37

FIGURA 7-5. CARACTERÍSTICAS TÉCNICAS DEL COMPUTADOR ...35

FIGURA 7-6. RESULTADO FUNCIONES TIC - TOC PARA ALMACENAMIENTO ...35

FIGURA 7-7. RESULTADO FUNCIONES TIC - TOC PARA EMPATE . ... 3

(12)

Capitulo 1. ELECCIÓN DEL FORMATO DE IMÁGENES

1.1.

Imagen digital.

Una imagen digital es una representación binaria de una escena real (un gráfico o dibujo) la misma que puede ser representada o modificada en un computador u otros dispositivos electrónicos, como teléfonos celulares por ejemplo.

Las imágenes digitales en dos dimensiones se dividen en dos tipos: Imágenes vectoriales y de mapa de bits.

1.2. Imágenes Vectoriales

Las imágenes vectoriales están compuestas por líneas y curvas definidas de forma matemática y denominadas vectores. Esto significa que puede mover, redimensionar o cambiar el color de una línea sin que el gráfico pierda calidad.

Los gráficos vectoriales no dependen de la resolución, es decir, se pueden escalar a cualquier tamaño e imprimir en cualquier resolución sin pérdida de detalle ni claridad.

Las imágenes 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 difíciles de manejar para la capacidad de un computador.

(13)

1.3. Imágenes de Mapa de Bits.

Las imágenes de mapa de bits (denominadas técnicamente imágenes rastenzadas) están compuestas por una cuadrícula de puntos denominados píxeles.

Al trabajar con imágenes de mapa de bits, se editan los píxeles, en lugar de los objetos o las formas. Las imágenes de mapa de bits son el medio electrónico más usado para las imágenes de tono continuo, como fotografías o pinturas digitales, puesto que pueden representar degradados sutiles de sombras y color.

Las imágenes se pueden representar mediante retículas de celdas a las que vamos asignando valores. Este modo es la base de todas las imágenes impresas y de buena parte de las digitales. (Figura 1-1).

•a*u

i.0

ci

i:i

UI

.1

[image:13.562.242.347.381.490.2]

U.U....

Figura 1-1, Repres

Cada una de las celdas de dicha retícula se llama "píxel', que es una composición de las palabras inglesas "picture element". Un pixel es un concepto inmaterial que no tiene una medida concreta. No se puede afirmar si un pixel mide 1 cm. o 1 km. En principio, es solamente una medida de división en celdas.

(14)

3

Imágenes de 1 bit por píxel

En este tipo de imágenes cada celdilla (pixel) sólo puede tener uno de dos valores: Uno o cero. Como basta 1 bit para definir esa alternativa, se les llama "imágenes de

1 bit" (también se les llama "imágenes de mapa de bits, de alto contraste, monocromáticas o imágenes de línea"). Figura 1-2.

Imágenes de escala de grises (8 bits por pixel)

(15)
[image:15.562.212.376.86.244.2]

4

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

Imágenes RGB (24 bits por píxel)

Si se toma un pixel 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 televisión, 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 x 256 Azul x 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.

1.

[image:15.562.206.386.497.661.2]
(16)

Imágenes 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 píxel se le asigna uno de ellos.

(17)

6

1.4.

Formatos de imágenes digitales.

Formato de imagen BMP

Esta clase de formato lo utiliza el sistema operativo Windows para guardar sus imágenes. Este sistema de archivo puede guardar imágenes 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 imágenes, pero su tamaño 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 gráfico utilizado ampliamente en la Internet, tanto para imágenes como para animaciones.

GIF llegó a ser muy popular porque podía usar el algoritmo de compresión LZW (Lempel Ziv Welch) para realizar la compresión de la imagen, que es más eficiente que el algoritmo Run-Lenght Encoding (RLE). Por lo tanto, imágenes de gran tamaño podían ser descargadas en un razonable periodo de tiempo, incluso con modems muy lentos.

GIF es un formato sin pérdida de calidad para imágenes con hasta 256 colores, limitados por una paleta restringida a este número de colores. Por ese motivo, con imágenes con más de 256 colores (profundidad de color superior a 8 bits), la imagen debe adaptarse reduciendo sus colores, produciendo la consecuente pérdida de calidad.

1 El formato fue creado por CompuServe en 1987 para dotar de un formato de imagen en color para sus áreas de

(18)

Formato de archivo TIFF

TIFF (Tagged Image File Format) es un formato de fichero para imágenes.

La denominación en inglés "Tagged Image File Format" (formato de archivo de imágenes con etiquetas) se debe a que los ficheros TIFF contienen, además de los datos de la imagen propiamente dicha, "etiquetas" en las que se archiva información sobre las características de la imagen, que sirve para su tratamiento posterior.

Estas etiquetas describen el formato de las imágenes almacenadas, que pueden ser de distinta naturaleza:

• Binarias (blanco y negro), adecuadas para textos, por ejemplo.

• Niveles de gris, adecuadas para imágenes de tonos continuos como fotos en blanco y negro.

• Paleta de colores, adecuadas para almacenar diseños gráficos con un número limitado de colores.

• Color real, adecuadas para almacenar imágenes de tono continuo, como fotos en color.

Las etiquetas también describen el tipo de compresión aplicado a cada imagen, que puede ser:

• Sin compresión.

• PackBits.

• Huffman modificado.

• LZW, el mismo que usa el formato GIF.

• JPEG.

(19)

1.5. Elección del Formato.

La lectura de la imagen al entorno de Matlab, se realizó mediante la función

"imread", lo cual permite trabajar con casi cualquier formato de imagen existente.

Luego de realizadas las pruebas, y basando la selección en dos criterios primordiales, que son calidad de la imagen y tamaño 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 pérdida en la calidad de la imagen.

(20)

9

Capitulo 2. ANÁLISIS Y REPRESENTACIÓN DE HUELLAS DIGITALES

2.1. Introducción

Una huella digital es una representación 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 patrón, único y diferente, de un dedo humano.

Las huellas digitales se encuentran completamente formadas alrededor de los siete meses de gestación y este patrón 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 características o formas comunes, las que se detallarán más adelante. [1]

2.2. Características Fundamentales

Una de las características 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.

(21)

10

La característica más evidente de una huella es un patrón de crestas y valles intercalados entre sí, que aparecen en las imágenes como partes oscuras y claras respectivamente. (Figura 2-1)

Las crestas y los valles generalmente tienen un espesor que varía entre los 100 y 300pm. [1]

Crestas-

[image:21.562.156.412.216.397.2]

-"Valles IMI

Figura 2-1 Crestas y vauu.

2.3.

Regiones Singulares

Al hacer un análisis general, los patrones de las huellas digitales muestran una o más regiones donde las líneas de la misma toman formas distintivas.

(22)

11

Delta

Lazo Remolino

Arco

r iquica -z. Tipos basicos de kegoies íígude

Las regiones singulares son comúnmente usadas para la clasificación de las huellas digitales, esto es asignar una huella a una clase específica de un grupo de ciases, basándose en sus regiones singulares, con el fin de simplificar la búsqueda de las mismas. [1] (Figura 2-3)

Lazo Izquierda azo_Dereona j L ernoIino PIanol

[7i

coTendido

2.4.

Minucias.

(23)

12

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

Terminación

Bifurcación

Lago

Isla o punto

[image:23.561.158.431.159.355.2]

Cruce

Figura 2-4. Tipos prircipaies de vIiriUCdS.

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

(24)

13

Yo

xo

2- C rn •cnentes de S•sten de Mnuca crdnds F E

En la práctica existe una ambigüedad entre terminaciones y bifurcaciones, que se debe a la presión aplicada en el dedo cuando se deja la huella, las terminaciones pueden aparecer como bifurcaciones y viceversa.

Si se adquiere una imagen en alta resolución, por ejemplo 1000 ppp, es posible identificar claramente los poros de la piel, que pueden variar en tamaño de 60 a 250pm. Aunque la información de los poros es altamente distintiva, muy pocas técnicas de identificación usan esta característica, dado que su aplicación confiable requiere una muy alta resolución e imágenes de muy buena calidad, lo que es difícil de conseguir en el campo práctico.

(25)

Adquisición de Imagen

Escala de Grises

Análisis STFT

Binarización Sectcrizada

Adelgazamiento Operaciones FI crfológicas

Ares de Interés

5usqueda de Minucias

Depuracicri

Cálculo de Coordenadas y Orientaciones

IConvertir Bifurcación en Ltiiuca = Bifiucacion' S—.I Tres Terminacicnes

ND

[image:25.562.155.435.66.555.2]

Almacenamiento en Base de Catos

Figura 2-6. Diagrama de Flujo Algoritmo Reconocimiento

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

(26)

15

Adquisición de Imagen

Escala de Grises

AflilSjS STFT

Bnarización Sectorizada

Adelgazamiento (Operaciones Morfológicas)

.Área de Interés

Busqueda de Minucias

Depuración

Cálculo de Coordenadas y Orientaciones

Bifurcación en Minucia = Bfiuca Tres Terminaciones

No

Comparación y Empate

[image:26.562.107.455.51.638.2]

Reporte de Empates Porcentaje de Semejanza

(27)

16

Capitulo 3. REALCE DE LA IMAGEN

3.1. Introducción

Existen muchas técnicas de reconocimiento biométrico, que comparan directamente dos imágenes mediante una correlación, pero las imágenes en escala de grises que se emplean generalmente en estas actividades no son adecuadas para estos métodos, debido a que la operación de la correlación es precisa solo si las imágenes tienen la misma orientación y posición en el plano.

Con este antecedente, para un sistema de identificación por huellas digitales, se hace necesaria una etapa de extracción de características que facilite el reconocimiento y clasificación.

Así que el garantizar una imagen de calidad aceptable es uno de los puntos básicos que permiten mejorar la precisión de los sistemas de reconocimiento y autenticación dactilar, por lo que se debe prestar suma importancia a la etapa de mejora de las imágenes digitales.

Una imagen de una huella digital puede considerarse como un sistema de texturas cuya orientación y frecuencia varían lentamente a lo largo de la imagen, es decir poseen propiedades no estacionarias. Por lo tanto el análisis 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 más adecuada, al emplear una Transformada de Fourier tradicional, se obtienen resultados adecuados solo en ciertas partes de la imagen, lo que implica una gran pérdida de información en el resto de la misma.

(28)

17

imagen, como se ve en la Figura 3-1, lo que además puede introducir información falsa en la imagen.

[image:28.561.218.369.132.339.2]

LI

Figura 3-1. Imagen realzada con anatsis a rue

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

Para el presente proyecto se empleará el algoritmo de realce en base al análisis STFT, propuesto por el Centro Unificado para Biométrica 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 orientación de secciones locales de una señal, mientras esta varía con el tiempo. La STFT, para una dimensión está dada por la ecuación (1):

X (r, co.)

(29)

18

En el análisis 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 pequeña región, cada bloque es transformado al dominio de Fourier y se almacena como resultado la frecuencia y orientación del bloque.

Al permitir que las ventanas se solapen unas a otras, se evita también obtener límites muy marcados entre las diferentes ventanas de la imagen, lo que se conoce como efecto bloque.

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

X (T1,r2,w11w2) =

jj I(x,y)W *(x -

T 1 ,y - r2)e_J(w102dxdy(2)

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

A partir de este análisis, se obtienen estimaciones estadísticas de frecuencia de crestas y orientación de las mismas, las cuales son empleadas para el filtrado de la imagen.

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

(30)

19

ff lar

[image:30.563.182.418.70.211.2]

(a)

(b)

Figura 3-2 magen real, Mndeao aprouniaoo

Una vez obtenidos los datos de frecuencia y orientación, 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)

- .

1uupp

-• -.--. __-•%

* ,..,•

(31)

20

3.2. Binarización.

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

El próximo 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 opción es la utilización de la función "im2bw", que se encuentra incluida en el toolbox de procesamiento de imágenes de Matlab. Esta función convierte imágenes en color o escala de grises en imágenes binarias, basándose en un determinado umbral, el cual se calcula con la función "graytresh",

que devuelve el valor del umbral más adecuado para una imagen determinada y que puede ser usado como parámetro de entrada en la función "im2bw".

Dado que la imagen de una huella digital no es estática, es decir los valores de gris varían considerablemente a través de la misma, la forma más eficiente de realizar la transformación es dividiendo la imagen en bloques, y para cada uno de estos, calcular el umbral de conversión.

Existen algunas alternativas para realizar este procesamiento, una de las más comunes es realizar un ciclo repetitivo o condicional, "for", "while" o "ir, aunque Matlab provee en su toolbox de procesamiento de imágenes, una herramienta más adecuada para este trabajo. Se trata de la función "blkproc", que se encarga de aplicar a cada bloque de la imagen de entrada, uno o varios procesos programados. Para nuestro caso se aplicarán las funciones "graytresh" e "im2bw" a cada bloque de 32 por 32 pixeles.

(32)
(33)

22

3.3. Área de Interés.

En el procesamiento de la huella es importante determinar el área de interés, o lo que es lo mismo, la región donde está la información para de este modo los posteriores procesamientos se realicen solo dentro de esta área y economizar procesos.

Para determinar el área de interés, 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 función 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 ¿(i,j) y E 1,(i,j) de cada bloque. Para este trabajo

se usó el operador de Sobe¡, dado por la función 'fspecial(sobel')". Sin embargo, otra alternativa pude ser usar la función "gradient".

3. Estimar la orientación de cada bloque centrada en el píxel (i,j) usando las siguientes ecuaciones:

IV w

(,

i)

25

(u,

y )

3 (u, v)(4)

w 111 u=l----

u=J---2 2

- w

(32 (u,v)— 22(u,v))(5)

U

=

1- -- U

=

1----2 2

o

( i, 1)

=1

tan'

(6)

2 V, ( i, -1 )

J

(34)

23

Para el cálculo del gradiente se usó la función "filter2", la cual es un filtro FIR de dos dimensiones, que realiza el cálculo del gradiente usando la correlación.

4. Luego de estimar el campo de orientación de la huella, se determina la región de interés en base a un nivel de confiabilidad de la orientación. La definición de este nivel de confiabilidad se define como:

¡_(i2+'iY )

E(l,J)

Ç(i,j)

w .w

frÇ =

(

a2

(u,v)+5(u,v))

71=1-- 71=

J--2 2 (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 píxeles de ese bloque pertenecen al fondo y no a la huella. La figura 3.5 muestra el campo de orientaciones antes y después de determinar el nivel de confiabilidad.

(35)

24

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 orientación pasó el umbral del nivel de confiabilidad, ese identificador se establece en 1, con lo cual se delimita el área de interés.

(36)

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 extracción de puntos características.

Se emplearán operaciones morfológicas sobre las imágenes, en este caso se utilizará la función "bwmorph", la cual comprende algunos tipos de operaciones morfológicas de las cuales usaremos adelgazamiento "thin", "clean" y "spur".

La operación "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.

(37)

26

Capitulo 4. IDENTIFICACIÓN DE MINUCIAS

4.1. Introducción

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

Para esta tarea se emplearán también algunas operaciones morfológicas, incluidas en el toolbox de procesamiento de imágenes de Matlab.

4.2. Mapa de Crestas.

(38)

27

La función "bwlabel", devuelve además el número total de elementos conectados, es decir el número total de crestas.

4.3. Identificación de Minucias

Para la identificación 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 ecuación [5]:

cn(p)

=

1

1 mod 8 - P-iI(9)

Donde p es el valor de cada pixel adyacente al pixel central de la ventana. Dependiendo del resultado de esta ecuación, el pixel central de la ventana puede ser identificado como terminación, bifurcación o cresta continua. [1]

Valor de CN Minucia

1Terminación

2 Cresta Continua

3 Bifurcación

(39)

28

4 1

1

J.2

Esta matriz de tres por tres, usando la función "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 fórmula del crossing number, se obtiene el valor de dos.

171

---'3

1735

(40)

1 2 25 3 35

29

En la Figura 4.3.2 se tiene una terminación, al aplicar la fórmula del crossing number, se obtiene el valor de uno.

Finalmente en la Figura 4.3.3 se tiene una bifurcación, al aplicar la fórmula 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 demás. Si esta distancia es menor a la distancia entre crestas, ambas minutas son removidas. La ecuación de la distancia euclidiana se muestra a continuación:

d =

-

x2 )2 + ( y1 - 2 )2

(10)

(41)

14J 145 1:5

30

La Figura 4-5 muestra la longitud de la distancia entre crestas. El cálculo arrojó el valor de 9, que es cercano a la aproximación hecha en la huella (7.85 píxeles) con la función "imdistline", que mide distancias en píxeles en una imagen [2].

•JQ

Al identificar un pixel como terminación o bifurcación, 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 orientación 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 sumatonas son divididas por el valor del ancho inter crestas (sx, sy), y el ángulo de orientación es igual a:

0

=tan_1C1_t

(11)

(42)

-----.-__-:---...-.--.. --- ----.--- --- -

-T-z---••- -P--T--- ----

---_----..-..--..-- ---_---• _.._, ---_---• •.. .- - - --- -.- e-

..-- ..-- .__p_•4 - - - -.:'•-••-. '•

-,- -,-•.F

- --

\N''

-

•1 • •. .... -' •\ -,. .-'

(43)

-32

Capitulo S. 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 más conocido y ampliamente usado para reconocimiento de huellas digitales [3].

Para este apartado, se eligió el algoritmo que se basa en alineación de la huella de entrada con la plantilla de la base de datos. Este algoritmo divide esta etapa en dos

pasos: (i) Etapa de alineación y

(u)

etapa de empate.

5.1. Etapa de Alineación.

Con respecto a la etapa de alineación, el primer paso es tomar puntos de la cresta asociada a la minucia (durante la extracción de la minucia, la cresta donde reside la minucia también 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 píxeles entre una cresta y otra).

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

dIDÍ

(12)

(44)

33

Si S es mayor a 0.8, se realiza la rotación de las minucias con respecto a una minucia de referencia (x,y,e)':

XI4 cos6

y;4 = sin

o

Sin

O'

íxxfl

—cosO O y

O

lJ o_oaJ

(13)

Etapa de Empate.

La etapa de empate, ante todo, debe poseer cierto grado de flexibilidad dado que es prácticamente 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 ubicación de la minucia. Del mismo modo, se acepta un grado de tolerancia de un tercio de pi para el valor de la orientación.

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

El porcentaje de empate es igual al número total de minucias coincidentes, para el número total de minucias en la plantilla de comparación.

%de Empate

= NME—*100 NTM

NME: Número de minucias empatadas

NTM: Número de minucias totales

(45)

34

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, dirección, cédula de ciudadanía, 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 función "save", y para leerlos se

usa la función "load" [2]. Debido a que la lectura de las huellas (archivo .dat) se realiza en otra carpeta, se añade las funciones de este programa al "path" de

Matlab para evitar problemas de dirección.

(46)

35

Capitulo 7. Resultados.

Para las pruebas experimentales, se obtuvieron impresiones de huellas digitales reales, las cuales fueron digitalizadas por medio de un escáner, con una resolución de trescientos puntos por pulgada. Las imágenes fueron almacenadas en formato TIFF, empleando compresión LWZ en la imagen y compresión RLE para las capas. (Figura 7-1).

Opco; Je TIFF II

:Drsin de 3 mael OK

rhnauna

' LZO Cancei

ZIP JPEG

Ordsr •is J,O25 J Bl PC

radntosh

Guardar prmde imagen

Comoresión de capas

RLE (guardado más rápido, archivos más grandes) ZIP (guardado más Jen to, archwos más pequeños) Descaar capas y guardar una copia

Fgua 7-1 Jpcones oe a nacIaínero

(47)

14

36

.- ---_

-• /•,• :•

HJEW. GUAADAD CON E::IrO EN

OK

PatricoPt - EjzcJe llota rch o Edic Fcrriatc Ier

1.3500000e+002 2.8000000e+001 2.2794226e+000 1.8500000e+002 5.5000000e+001 1.9451299e+000 2.2700000e+002 5.5000000e+001 1. 7818897e+000 2.4500000e+002 6.0000000e+001 1.4640607e+000 2.3500000e+002 6.9000000e+001 1.8157750e+000 3.8000000e+001 7.6000000c+001 3.1415927e+000 2.3400000e+002 7.6000000e+001 1.4288993e+000 2.9100000e+002 7.9000000e+001 -3.1058935e+000 2.3300000e+002 3.5000000e+001 1.2277724e+000 1.6300000e+002 9.0000000e+001 2.0626055e+000 2.7200000e+002 9.1000000e+001 -2.6224465e+000 2.2700000e+002 1.0000000e+002 1.1071487e+000 1.2400000e+002 1.0700000e+002 2.5453935e+000 7.5000000e+001 1.0800000e+002 2.9996956e+000 1.9600000e+002 1.1300000e+002 1.4640607c+000 2.2000000e+002 1.1300000e+002 9.5054684e-001. 2.9000000e-i-002 1.1500000e+002 -3.0702852e+000 1.5800000e+002 1.1700000e+002 2.3561945e+000 2.8200000e+002 1.3100000e+002 -2.9996956e-i-000 2.6100000e+002 1.3200000e+002 -2.7672590e+000 7.5000000e+001 1.3600000e+002 3.0348570e+000

(48)

37

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 orientación de cada una de las minucias.

La segunda opción 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 más se asemeja a la ingresada. (Figura 7-4).

(49)

38

7.1.

Rendimiento y Eficiencia.

7.1.1.

Rendimiento

El rendimiento del sistema está en relación directa con las características del computador donde se ejecuta el programa. Para estas pruebas, se usó un PC portátil cuyas características se detallan a continuación (Figura 7-5):

te m Fabrica Modelo: Evaluación: Prccesador: Memoria RAM): Tipo de zister,1a:

Dell

Vostro 1500 Propietario Pablo Ramiro Vallejo Zui9a

Intel(R) CcreTM)2 Duo C pu T7500 © 2.20GHz 220 6H_-2.00 GB

Sitenia operativo de 32 bfte

—J--1

Para medir el tiempo de cómputo de un programa se usa las funciones "tic" y "toc"

las cuales miden el rendimiento usando el cronómetro 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 continuación:

ommand vYtridow

Tc qet started. select or from the HeIp menu.

E1apsd time is 12.147041 seconds.

E1pd time i5 2.429739 second.

(50)

39

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 número total de huellas en la base de datos.

ni a Yindc

.J To get 5tarted, eIect - . or from the HeIp

Elapsed tinie is 2.132571 secancis.

» 1

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

T

=

14 = 0.15 segundos (15)

7.1.2. Eficiencia

Con propósitos de prueba fue ingresado un número total de catorce imágenes obteniendo empates correctos en doce casos. En base a estas pruebas experimentales se puede afirmar que la eficiencia del sistema es igual a:

# de errores

%Errores = * 100 (16)

#total de pruebas

%Errores = * 100 = 14,2% (17)

(51)

40

Capitulo 8. Conclusiones y Recomendaciones.

. En base a los resultados obtenido en la sección 7.1.2. podemos concluir que aunque no se obtenga una precisión del cien por ciento en las etapas de identificación de minucias y empate de huellas, si se puede conseguir identificar las imágenes 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 bifurcación se eliminan debido a que cerca de ellas se marca una terminación 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 número de minucias empatadas es cercano al número total de minucias.

• Se consiguió plasmar en un programa computacional, toda una base teórica que envuelve el reconocimiento de huellas digitales, consiguiendo una aplicación de buena precisión, y bajo coste computacional.

• Las aplicaciones del presente proyecto son muy variadas, empezando por la automatización de sistemas de control de acceso, hasta llegar a la investigación forense. Con pequeñas modificaciones, tales como un sistema de Login, o un preciso sistema de adquisición de huellas, este trabajo se puede convertir en una poderosa herramienta de investigación de delitos, para instituciones como la Policía Judicial Nacional.

(52)

Referencias.

[1]. Maltoni, Maiao. "Handbook of fingerprint recognition", 2003.

[2]. Gonzalez, Word, Eddins. Digital Image Processign Using Matlab, 2002, 2 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 Westem Australia, 2003.

[6]. Chikkerur Sharat S, Cartwright Alexander, "Fingerprint Image Enhancement using STFT", University of Buifalo, NY. 2003.

[7]. SFINGE (Sintetic Fingerprint Generator), Biometric System Laboratory, University of Bologna, ltaly.

Figure

TABLA DE CONTENIDO
Figura 1-1, Repres
Figura 1-3. Imagen en escala de grises, 8 bits por pixel
Figura 2-1 Crestas y vauu.
+6

Referencias

Documento similar

Debido al riesgo de producir malformaciones congénitas graves, en la Unión Europea se han establecido una serie de requisitos para su prescripción y dispensación con un Plan

Como medida de precaución, puesto que talidomida se encuentra en el semen, todos los pacientes varones deben usar preservativos durante el tratamiento, durante la interrupción

The 'On-boarding of users to Substance, Product, Organisation and Referentials (SPOR) data services' document must be considered the reference guidance, as this document includes the

In medicinal products containing more than one manufactured item (e.g., contraceptive having different strengths and fixed dose combination as part of the same medicinal

Products Management Services (PMS) - Implementation of International Organization for Standardization (ISO) standards for the identification of medicinal products (IDMP) in

Products Management Services (PMS) - Implementation of International Organization for Standardization (ISO) standards for the identification of medicinal products (IDMP) in

This section provides guidance with examples on encoding medicinal product packaging information, together with the relationship between Pack Size, Package Item (container)

Package Item (Container) Type : Vial (100000073563) Quantity Operator: equal to (100000000049) Package Item (Container) Quantity : 1 Material : Glass type I (200000003204)