Sistema de Reconhecimento de Impressões Digitais. Resumo



Documentos relacionados
Extração de Minúcias em Imagens de Impressões Digitais

4 Avaliação Experimental

Identificação Humana Através de Biometria

Detecção em tempo real de movimentos de olhos e boca em um vídeo em cores

Processamento digital de imagens. introdução

Aula 5 - Classificação

Segmentação de Imagens

A limiarização é uma das abordagens mais importantes de segmentação de imagens. A limiarização é um caso específico de segmentação.

IDENTIFICAÇÃO DE MARCADORES DE PAVIMENTAÇÃO NA ORIENTAÇÃO DE CEGOS

Portal do Projeto Tempo de Ser

)LJXUD8PGRVSDUHV'SDUDFRQYROXomRTXHWHPRPHVPRHIHLWRGR NHUQHOGD)LJXUD

WEBGIS Sistema Informativo Territorial

Medição tridimensional

Aritmética de Ponto Flutuante e Noções de Erro. Ana Paula

Respostas do Estudo Dirigido do Capítulo 14 Classical pattern recognition and image matching"

RECONHECIMENTO DE IMPRESSÕES DIGITAIS COM BAIXO CUSTO COMPUTACIONAL PARA UM SISTEMA DE CONTROLE DE ACESSO

Estudo comparativo de métodos de segmentação de imagens digitais de aves

PONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO DE JANEIRO DEPARTAMENTO DE INFORMÁTICA PÓS GRADUAÇÃO EM INFORMÁTICA

PLANEJAMENTO ESTRATÉGICO

ELETROTÉCNICA ELM ROTEIRO DA AULA PRÁTICA 01 A LEI DE OHM e AS LEIS DE KIRCHHOFF

Análise e Comparação de Métodos de Pré-processamento de Imagens e Extração de Características em Impressões Digitais

APLICATIVOS GRÁFICOS (AULA 4)

Ferramenta para detecção de fadiga em motoristas baseada no monitoramento dos olhos

Formatos de Imagem PNG. Universidade Federal de Minas Gerais. Bruno Xavier da Silva. Guilherme de Castro Leite. Leonel Fonseca Ivo

VISÃO GERAL DE BANCO DE DADOS

[Fingerprint Recognition]

Trabalho 2 Fundamentos de computação Gráfica

Classificação de Imagens

4 Experimentos Computacionais

Aula 4 Conceitos Básicos de Estatística. Aula 4 Conceitos básicos de estatística

de Bordas em Imagens Digitais

Figura 01: Aplicações do Filtro Espacial Passa-Baixa.

Processamento Digital de Imagens

Cálculo de volume de objetos utilizando câmeras RGB-D

Modelagem Digital do Terreno

REPRESENTAÇÃO DE DADOS EM SISTEMAS DE COMPUTAÇÃO AULA 03 Arquitetura de Computadores Gil Eduardo de Andrade

Introdução. A Informação e sua Representação (Parte II) Universidade Federal de Campina Grande. Unidade Acadêmica de Sistemas e Computação

O Gerenciamento de Documentos Analógico/Digital

CADERNOS DE INFORMÁTICA Nº 1. Fundamentos de Informática I - Word Sumário

Fração como porcentagem. Sexto Ano do Ensino Fundamental. Autor: Prof. Francisco Bruno Holanda Revisor: Prof. Antonio Caminha M.

INSTITUTO TECNOLÓGICO DE AERONÁUTICA DIVISÃO DE ENGENHARIA ELETRÔNICA LABORATÓRIO DE GUERRA ELETRÔNICA

1 Esfera de aço 1 Transitor BC547

2 Fundamentação Conceitual

Programação em papel quadriculado

Do neurônio biológico ao neurônio das redes neurais artificiais

MEDIDAS MAGNÉTICAS DE PINTURAS A ÓLEO E ACRÍLICAS. Aluno: Paulo Leite Pinto Orientador: Paulo costa Ribeiro Co-orientador: Hélio Ricardo Carvalho

Gerenciamento do ciclo de vida de um documento Simone de Abreu

Como criar um blog. Será aberta uma janela onde você deverá especificar o título do blog, o endereço do blog, e o modelo.

Modelação 3D. Sumário COMPUTAÇÃO GRÁFICA E INTERFACES. Introdução. Introdução. Carlos Carreto

Introdução a Banco de Dados Aula 03. Prof. Silvestri

3DODYUDVFKDYH Visão Computacional, Inteligência Artificial, Redes Neurais Artificiais.

Este documento foi elaborado sob a licença

Memória cache. Prof. Francisco Adelton

UMC Cotas em desenho técnico (Módulo 2) Componentes gráficos de uma cota: Linha de cota Linha de chamada Setas de cota

Plano de aula. 5. Metodologia: Aula expositiva dialógica orientada pela interação: alunos professor conhecimento.

O ENSINO DE CÁLCULO NUMÉRICO: UMA EXPERIÊNCIA COM ALUNOS DO CURSO DE CIÊNCIA DA COMPUTAÇÃO

Guia: como instalar o Ubuntu Linux

Figura 5.1.Modelo não linear de um neurônio j da camada k+1. Fonte: HAYKIN, 2001

Passo- a- passo SKILLSPECTOR Software gratuito para análise cinemática Procedimentos para configuração, digitalização e calibragem

Top Guia In.Fra: Perguntas para fazer ao seu fornecedor de CFTV

Rastreamento de Múltiplos. Objetos em Tempo Real

Uma Metodologia de Identificação de Imagens de Impressões Digitais pelo Filtro de Gabor

Gerenciamento de cor. 7.2 Calibração do scanner utilizando a calibração IT8 de SilverFast

Estudo de técnicas de rastreamento de objetos aplicadas à detecção de múltiplas larvas

Descritores de textura na análise de imagens de microtomografia computadorizada

2 Classificação de Imagens de Sensoriamento Remoto

6 Conclusões e próximos passos

Optimização de um Mundo Virtual

Eletrônica Analógica

Simulação de traços artísticos através do tablet

Aula 9 ESCALA GRÁFICA. Antônio Carlos Campos

Sistemas Operacionais Arquivos. Carlos Ferraz Jorge Cavalcanti Fonsêca

UNIVERSIDADE FEDERAL DE SANTA MARIA COLÉGIO TÉCNICO INDUSTRIAL DE SANTA MARIA Curso de Eletrotécnica

Inteligência Artificial. Metodologias de Busca

A SEGUIR ALGUMAS DICAS PARA O DESENVOLVIMENTO DE UM PROJETO CIENTÍFICO

SP 04/92 NT 141/92. Velocidade Média: Considerações sobre seu Cálculo. Engº Luiz Henrique Piovesan. 1. Introdução

SEGMENTAÇÃO DE IMAGENS EM PLACAS AUTOMOTIVAS

Diagrama de fluxo de dados na Plataforma Vicon SAGA. Terminologias de bancos de dados: Banco de Dados, Tabela, Campos, Registros

Astra LX Frases Codificadas Guia para o processo de Configuração de Frases Codificadas no Programa AstraLX.

Gerenciamento de Projetos Modulo II Clico de Vida e Organização

Manual de Operação. Copyright Todos os direitos reservados.

Organização e Arquitetura de Computadores I

UNIVERSIDADE REGIONAL DO NOROESTE DO ESTADO DO RIO GRANDE DO SUL DEPARTAMENTO DE FÍSICA, ESTATÍSTICA E MATEMÁTICA

Preparação do Trabalho de Pesquisa

Quais as diferenças entre os formatos de imagem PNG, JPG, GIF, SVG e BMP?

ESTEREOSCOPIA INTRODUÇÃO. Conversão de um par de imagens (a)-(b) em um mapa de profundidade (c)

Segmentação de Imagens de Placas Automotivas

BIOSYS: sistema de captura e armazenamento de imagens para exames oftalmológicos em biomicroscópios - Fase 1 1

Guia de utilização da notação BPMN

A TEORIA DOS GRAFOS NA ANÁLISE DO FLUXOGRAMA DO CURSO DE ENGENHARIA DE PRODUÇÃO DA UFF

Trabalho 7 Fila de prioridade usando heap para simulação de atendimento

CAPÍTULO 2. Grafos e Redes

Encontrando a Linha Divisória: Detecção de Bordas

Município de Colíder MT

1. REGISTRO DE PROJETOS

Introdução Ciclo de vida tradicional de desenvolvimento Prototipagem Pacotes de software Desenvolvimento de 4ª geração Terceirização

Eventos independentes

TOPOLOGIA DA IMAGEM DIGITAL

Descrição da aplicação

VistaScan Perio Plus Digitalizador de placas de fósforo Certamente haverá mais tempo para os pacientes

Transcrição:

Sistema de Reconhecimento de Impressões Digitais Álvaro N. Prestes Relatório Técnico, Introdução ao Processamento de Imagens Programa de Engenharia de Sistemas e Computação - PESC/COPPE Universidade Federal do Rio de Janeiro, Brasil, 2011. alvaroprestes@cos.uft.br Resumo Este trabalho apresenta o desenvolvimento de um sistema pra o reconhecimento de impressões digitais utilizando o Sistema de Classificação de Henry combinado com os Detalhes de Galton. Foram implementados e comparados algoritmos de borramento, aguçamento, binarização e afinamento. Para a detecção de minúcias foi utilizado o método Crossing Number com pós-processamento para eliminação de falsas minúcias. O método utilizado para verificar a equivalência entre duas impressões digitais foi o da menor distância euclidiana. O algoritmo obteve bons resultados nos testes utilizando a base da Fingerprint Verification Conpetition, mas diversas melhorias podem ser introduzidas. 1. Introdução Biometria pode ser definida como a ciência que estuda as medidas de características físicas ou comportamentais de indivíduos. A análise matemática e/ou estatística dessas características tem como finalidade a identificação única de um indivíduo. Impressões digitais, íris, face, sons dos passos são exemplos de características biométricas para as quais sistemas automáticos de identificação tem sido desenvolvidos sendo a análise de impressões digitais o método mais difundido por possuírem características peculiares tais como: identificar unicamente um indivíduo exceto nos raros casos como os de gêmeos idênticos (compartilham até mesmo o DNA), não mudar ao longo da vida desde o nascimento, as características papilares permanecem as mesmas, exceto em casos deformação causadas por ferimentos ou produtos químicos, por exemplo. melhor desempenho computacional em comparação com as características biométricas, as impressões digitais apresentam um menor custo computacional Qualquer sistema biométrico deve prover, pelo menos, as funcionalidades de verificação, na qual deve ser possível, dadas duas amostras, realizar a comparação destas obtendo uma medida de semelhança (comparação 1:1); e identificação, na qual, dada uma amostra, deve-se localizar, numa base de amostras, uma que seja correspondente à amostra de entrada. Neste caso, a comparação é dita 1:n e, ao invés de se obter uma amostra, pode-se ter uma lista das amostras que possuam semelhança acima de um limiar α (Castro, 2008). Ao longo de anos, métodos de classificação tem sido propostos com a finalidade de reduzir o número de amostras a serem comparadas no processo de identificação. Francis Galton foi pioneiro no estudo das características de impressões digitais tendo identificado características que considerou únicas e, combinadas, permitem a identificação de um indivíduo a partir de sua impressão digital.

Figura 1: Exemplo de minúcias (Galton, 1982) Baseado no trabalho iniciado por Galton, Edward Richard Henry apresentou um modelo que faz a distribuição de qualquer impressão digital em cinco classes de acordo com sua configuração geométrica, são elas: Arco Plano: linhas dactilares atravessam de um lado para outro sem formar o delta. Arco Angular: apresentam acentuada elevação das linhas no núcleo, em forma de tenda. Pode apresentar um delta, mas sem linha ou fragmento de linha, entre o delta e o núcleo. Presilha Interna: apresentam um delta à direita do observador e as linhas datilares do núcleo levemente curvadas para a esquerda. Presilha Externa: apresentam um delta à esquerda do observador e as linhas datilares do núcleo curvadas para a direita. Verticilo: apresentam dois deltas, sendo um à direita e outro à esquerda e as linhas nucleares ficam encerradas entre os dois deltas. A ideia de Henry era identificar, primeiramente, uma característica global e então fazer o mapeamento das minúcias propostas por Galton. Dessa forma, o número de amostras a serem consideradas num processo de identificação é reduzido consideravelmente, embora as classes não possuam uma distribuição uniforme (Moyaer & Fu, 1975). O Sistema de Henry é o modelo de classificação mais utilizado até hoje (Henry, 1905). Figura 2: Exemplo das classes propostas por Henry Atualmente, a maioria dos sistemas biométricos tem considerado a correspondência de pelo menos doze minúcias para que duas impressões digitais sejam consideradas equivalentes. O FBI adotou o número mínimo de 20 correspondências. Estudos tem mostrado que, em média, em uma boa impressão digital são encontradas de 50 a 100 minúcias entre cristas finais e bifurcações (Costa, 2001). O tópico seguinte descreve as etapas do desenvolvimento do sistema, os algoritmos e estratégias utilizadas, os experimentos realizados e resultados obtidos. Ao final são apresentadas algumas considerações e algumas ideias de trabalhos futuros que poderiam melhorar e contribuir com aqui apresentado.

2. Desenvolvimento do Sistema A proposta deste trabalho é desenvolver um sistema que permita a identificação de um individuo a partir de suas impressões digitais utilizando como estratégia de classificação o Sistema de Henry e as minúcias Galton. Para o desenvolvimento deste trabalho foi utilizada uma estação de trabalho com processador Intel Core i3, sistema operacional Windows 7 64 bits com 4GB de memória RAM. A linguagem de programação utilizada foi a C/C++ na IDE CodeBlocks. Para auxiliar nos procedimentos básicos de manipulação de imagens foi utilizada a API OpenCV 2.2 (versão 32bits) (OpenCV, 2011). Para a realização dos experimentos e ajustes dos parâmetros foram utilizadas duas base de impressões digitais. A primeira delas é a DB1 que é utilizada na competição mundial Fingerprint Verification Competition (FVC, 2004) cujas amostras foram colhidas por um sensor ótico CrossMatch V300, possuem dimensão 640x480 e resolução de 500 dpi. A segunda base utilizada é composta de 100 amostras colhidas em papel e posteriormente digitalizadas. As amostras desta base possuem resolução e dimensões variadas e muitas estão seriamente danificadas devido a falhas no processo de coleta. Diversos sistemas biométricos reportados na literatura consideram a criação e o armazenamento de um template que representa uma impressão digital já computada, mas não permite a reconstrução impressão (Faria, 2005). Além disso, um template proporciona ganho computacional por possuir apenas informações relevantes num formato adequado ao processo computacional. A figura abaixo ilustra o processo de aquisição/catalogação de uma impressão digital. Imagem (entrada) Extrair minúcias Codificar Criar Template Armazenar Figura 3: processo de aquisição Neste trabalho, embora não se tenha utilizado um Sistema de Gerenciamento de Banco de Dados, adotou-se o formato XML para o armazenamento devido a natureza semi-estruturada dos dados, ou seja, após extraídas as minúcias, as informações são armazenadas num arquivo XML (ou em um SGBD com suporte a XML). Os processos de identificação e verificação são ilustrados na figura abaixo. Imagem (entrada) Extrair Minúcias Codificar Criar Template Comparar com templates armazenados % semelhança (saída) Imagens A e B (entrada) Extrair Minúcias Codificar Criar Templates Comparar templates A e B % semelhança (saída) Figura 4: processos de identificação e verificação O processo de extração de minúcias é detalhado na figura abaixo e, inicialmente, não possuía as etapas de corte e equalização de tons de cinza. O corte foi introduzido com o

propósito de eliminar pixels não significativos da imagem de entrada como, por exemplo, bordas completamente brancas. Imagem (entrada) Cortar Equalizar Borrar Aguçar Minúcias Verdadeiras (saída) Limpar Identificar minúcias Afinar Figura 5: processo de extração de minúcias Binarizar A equalização dos tons de cinza se fez necessária pelo fato de existir grandes variações de iluminação em uma amostra e outra. Essa diferença de intensidade comprometia a binarização que é realizada com base num limiar. Com os tons equalizados, foi possível ajustar um valor de limiar que pode ser aplicado a qualquer amostra independente da variação da intensidade. Figura 6: (a) imagem original (b) imagem de corte Para a tarefa de borramento, foram implementados os filtros da mediana 3x3 e 5x5 que consiste em percorrer a imagem, substituindo cada pixel pelo seu vizinho mediano. Foi experimentado também o filtro gaussiano provido pela OpenCV. Nos testes realizados, o filtro na mediana 3x3 apresentou os resultados mais satisfatórios. Para o aguçamento foram implementadas as máscaras proposta por (Gonzalez & Woods, 2002), a máscara Laplaciana e uma máscara mediana 3x3. Figura 7:Máscaras para aguçamento

Para a binarização foi implementado o algoritmo proposto por (Otsu, 1979) sendo este o escolhido após a comparação com resultados obtidos pelo algoritmo de binarização de Gabor (Gabor, 1946). Figura 8: Aplicação dos filtros. (a) corte, (b) equalizada, (c) borrada, (d) aguçada O afinamento da imagem depois de binarizada foi realizado pelo algoritmo proposto por Holt (Holt, Stewart, Clint, & Perrott, 1987) a partir do trabalho de (Zhang & Suen, 1984) seguido do método para remoção de serrilhados Staircase Removal. Além deste, foi experimentado também o algoritmo proposto por Cychosz (Cychosz, 1994). Depois de afinada a imagem, segue-se a etapa de identificação das minúcias que foi realizado pela aplicação do método chamado Crossing Number (Tamura, 1978). Este método, basicamente realiza um somatório dos 8-vizinhos (1 se o pixel é preto e 0 caso contrário) de cada pixel preto presente na imagem. A equação abaixo fornece o valor desse somatório. 1 2 A tabela abaixo apresenta uma interpretação para os valores do método. É importante destacar que para o sistema, serão utilizadas apenas as cristas finais e as bifurcadas. Crossing Number Tipo de minúcia 0 Ponto isolado 1 Ponto final 2 Ponto contínuo 3 Ponto bifurcado 4 Ponto cruzamento Tabela 1: Propriedades do método Crossing Number. O método Crossing Number por si só não é eficiente por realizar uma análise local retornando muitas falsas minúcias. Logo, se faz necessário um método para a eliminação dessas falsas minúcias. Para esta tarefa, foi utilizada a estratégia proposta por (Tico & Kuosmanen, 2000) que, basicamente, utiliza-se de uma janela de tamanho fixo e, partindo do pixel central (a minúcia) segue, até a borda, assinalando os pixels pretos com os valores 1, 2 ou 3. Ao final, as transições são computadas e assinaladas como verdadeira ou falsa. Para cristas finais, o algoritmo apenas segue os pixels pretos até a borda e, caso seja atingida, a minúcia é verdadeira. Depois de testes, os autores do método sugeriram uma janela de 23x23. É importante destacar que uma janela muito pequena pode gerar diversos falsos positivos e uma janela muito grande,

falsos negativos. Testes realizados mostram que aproximadamente 70% das minúcias detectadas são falsas. Figura 9: falsas minúcias. (a) lago, (b) espora (Faria, 2005) A figura abaixo ilustra os resultados obtidos após as etapas de binarização, afinamento e detecção de minúcias. Figura 10: Deteção de minúcias Observa-se na figura acima, que devido ao fraco contraste, a imagem depois de binarizada não representa fielmente as linhas da impressão digital original. Além disso, a janela 23x23 não foi suficiente para identificar que algumas bifurcações formavam um lago. E ainda, nota-se no topo que uma espora foi tida como minúcia verdadeira. Contudo, dado o número de minúcias corretamente identificadas, este resultado seria suficiente para o reconhecimento. O processo de verificação foi construído com base na posição espacial das minúcias verdadeiras. De uma forma geral, dadas duas amostras, procura-se fazer a sobreposição do mapa de minúcias verificando o número de combinações. Considerando que as amostras foram colhidas em momentos distintos, estas podem apresentar variação no posicionamento das minúcias quando comparadas uma com a outra. Por esse motivo, utilizou-se de uma janela 15x15 na qual uma minúcia pode ser considerada equivalente entre as amostras. Atentando para o fato de que mais de uma minúcia podem estar presentes nessa janela, a escolha da minúcia correspondente é feita, então, com base na menor distância euclidiana.

Figura 11: verificação das minúcias Essa diferença no posicionamento das minúcias pode ser observado na figura acima. Neste caso, qualquer uma das minúcias presentes na imagem B poderia ser tomada como idêntica. No entanto, além de serem de tipos diferentes, utilizando-se da menor distância, a minúcia mais próxima será tomada e removida da lista de candidatas. Esse procedimento se repete para todas as minúcias detectadas. Obtendo-se um número de combinações satisfatórias, as amostras são consideradas equivalentes. 3. Considerações Finais No processo de desenvolvimento da aplicação, várias dificuldades se apresentaram. A primeira delas foi a preparação do ambiente de desenvolvimento no que diz respeito à instalação da OpenCV. A documentação se apresentou confusa dificultando a localização da informação desejada. Além disso, a incompatibilidade de hardware/arquitetura impossibilitaram a utilização de alguns recursos como, por exemplo, o da webcam. E ainda, a forma como a API trata a leitura das coordenadas causou confusão, pois a coordenada x (linha/altura) se refere, ao eixo y do plano e a coordenada y (coluna/largura) ao eixo x. Na etapa de pré-processamento, alguns filtros não produziram o resultado esperado. A equalização de tons de cinza se faz necessária, mas o método utilizado introduziu muito ruído. Além disso, o filtro de aguçamento não proporcionou um bom contraste, comprometendo a etapa de binarização. A eficácia do algoritmo está fortemente atrelada aos parâmetros de entrada. Nesse sentido, um melhor ajuste no conjunto de parâmetros pode introduzir melhorias no sistema. De toda forma, encontrar uma configuração ótima de parâmetros para um conjunto qualquer de amostras pode ser uma tarefa árdua. Finalmente, com os experimentos realizados, o algoritmo se mostrou bastante promissor. Para um sistema de identificação no qual todas as amostras sejam obtidas a partir de um leitor ótico de boa resolução e iluminação adequada gerando, consequentemente, amostras de boa qualidade, o algoritmo deve proporcionar resultados bastante satisfatórios. 4. Trabalhos Futuros Sendo parte de um experimento inicial, diferentes melhorias podem ser introduzidas no sistema aqui apresentado.

Pelas características de uma impressão digital, filtros especialistas para borramento e aguçamento podem ser desenvolvidos bem como uma estratégia para um tratamento eficaz de rotação. Além disso, métodos mais inteligentes e elaborados para a realização do matching podem ser desenvolvidos e comparados como, por exemplo, abordagens heurísticas utilizando Algoritmos Genéticos ou Redes Neurais. A realização de conjunto elaborado de testes pode identificar uma melhor configuração para o conjunto de os parâmetros e, em oposição à extração de minúcias, outras estratégias podem ser testadas, tais como a de curvas elípticas. 5. Referências Bibliográficas Castro, T. d. (2008). Identificação de Impressões Digitais Baseado na Extração de Minúcias. Dissertação de Mestrado, Universidade Federal de Juiz de Fora. Costa, S. M. (2001). Classificação de Verificacão de Impressões Digitais. Dissertação de Mestrado: Universidade Federal de Juiz de Fora. Cychosz, J. M. (1994). Efficient Binary Image Thinning using Neighborhood Maps. Graphics Gems IV. Faria, D. R. (2005). Reconhecimento de Impressões Digitais com baixo custo Computacional para um Sistema de Contro. Dissertação de Mestrado, Juiz de Fora: Universidade Federal do Paraná, Programa de Pós-graduação em Informática. FVC, C. F. (2004). Databases. Acesso em 21 de Maio de 2011, disponível em Fingerprint Verification Competition: http://bias.csr.unibo.it/fvc2004/databases.asp Gabor, D. (1946). Theory of Comunication. Journal IEEE, 429-459. Galton, F. (1982). Finger Prints. Gonzalez, R. C., & Woods, R. E. (2002). Digital Image Processing. Addison Wesley. Henry, E. R. (1905). Classification and Uses of Fingerprints. Wyman and Sons Ltda. Holt, C. M., Stewart, A., Clint, M., & Perrott, R. (1987). A improved parallel thinning algorithm. Communications of the ACM. vol. 30. Moyaer, B., & Fu, K. S. (1975). A Syntactic Approach to Fingerprint Pattern Recognition - Pattern Recognition (Vol. 7). OpenCV. (2011). Documentation. Acesso em 21 de Maio de 2011, disponível em OpenCV Wiki: http://opencv.willowgarage.com/wiki/ Otsu, N. (1979). A Threshold selection method from gray level histograms. IEEE Trans. System Man and Cybernet, (pp. 62-66). Tamura, H. (1978). A Comparison of Line Thinning Algorithms from Digital Geometry Viewpoint. 4th Int. Jt. Conf. On Pattern Recognition. Kyoto. Tico, M., & Kuosmanen, P. (2000). Fingerprint Image Postprocessing. Signals, Systems and Computers. Record of the Thirty-Fourth Asilomar Conference on Vol. 2, (pp. 1735-1739).

Zhang, Y., & Suen, C. (1984). A fast parallel algorithm for thinning digital patterns. Communications of the ACM, 236-239.