[Fingerprint Recognition]

Documentos relacionados
Segmentação de Imagens

Aula 5 - Classificação

Computação Adaptativa

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

Planificação de. Aplicações Informáticas B

4 Avaliação Experimental

SEGEMENTAÇÃO DE IMAGENS. Nielsen Castelo Damasceno

Reconhecimento de Padrões Utilizando Filtros Casados

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

1 Introdução. 2 Exemplo de aplicação

Algoritmo. Iniciação do Sistema e Estimativa do consumo. Perfil do utilizador. Recolha de dados

Especificação Operacional.

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

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

Desenvolvimento de Estratégia para Programação do Futebol de Robôs da Mauá

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

Fundamentos de Teste de Software

Programação em papel quadriculado

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

Processamento digital de imagens. introdução

Curvas de nível homotópicas a um ponto

NÚCLEO DE APOIO ESPECIALIZADO EM PROGRAMAÇÃO. Lucas Schwendler; Darlei Feix; Andreia Sias Rodrigues

Medição tridimensional

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

Processamento de Imagens COS756 / COC603

ADMINISTRAÇÃO GERAL GESTÃO DE PROCESSOS

4 Experimentos Computacionais

3.1 Definições Uma classe é a descrição de um tipo de objeto.

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

Faculdade Sagrada Família

Classificação da imagem (ou reconhecimento de padrões): objectivos Métodos de reconhecimento de padrões

FEDERAÇÃO PORTUGUESA DE TIRO

Observação das aulas Algumas indicações para observar as aulas

Transformada de Hough. Cleber Pivetta Gustavo Mantovani Felipe Zottis

MANUAL DA SECRETARIA

Identificação Humana Através de Biometria

Gerenciamento de memória

Curva ROC. George Darmiton da Cunha Cavalcanti Tsang Ing Ren CIn/UFPE

Bem-vindo ao tópico sobre administração de listas de preços.

TEMA: Gestão de equipamentos Exemplo: Máquina de lavagens de viaturas

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

fx-82ms fx-83ms fx-85ms fx-270ms fx-300ms fx-350ms

Instituto Politécnico de Beja. Escola Superior de Tecnologia e Gestão

INDAGAR E REFLECTIR PARA MELHORAR. Elisabete Paula Coelho Cardoso Escola de Engenharia - Universidade do Minho elisabete@dsi.uminho.

Matemática em Toda Parte II

Expansão de Imagem #2

FILOSOFIA SEM FILÓSOFOS: ANÁLISE DE CONCEITOS COMO MÉTODO E CONTEÚDO PARA O ENSINO MÉDIO 1. Introdução. Daniel+Durante+Pereira+Alves+

L 276/4 PT Jornal Oficial da União Europeia. DECISÃO N. o 190. de 18 de Junho de 2003

A Sustentabilidade e a Inovação na formação dos Engenheiros Brasileiros. Prof.Dr. Marco Antônio Dias CEETEPS

3 Estratégia para o enriquecimento de informações

FIND ME APLICAÇÃO ANDROID

Problema. Conversão Matricial. Octantes do Sistema de Coordenadas Euclidiano. Sistema de Coordenadas do Dispositivo. Maria Cristina F.

Universidade Federal de São João Del Rei - UFSJ

Descrição da aplicação

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

GBD PROF. ANDREZA S. AREÃO

UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO DEPARTAMENTO DE ESTATÍSTICA E INFORMÁTICA BACHARELADO EM SISTEMAS DE INFORMAÇÃO RAPID APPLICATION DEVELOPMENT

3. FORMAÇÃO DA IMAGEM

Tecnologia da Informação Prof. Mário Henrique de Souza Pardo Resumo Aula 4

Manual do KGeography. Anne-Marie Mahfouf Kushal Das Tradução: Luiz Fernando Ranghetti

ESTUDO DE VIABILIDADE. Santander, Victor - Unioeste Aula de Luiz Eduardo Guarino de Vasconcelos

Aula 9 Plano tangente, diferencial e gradiente

ARQUITETURA DE COMPUTADORES

Curso: Redes II (Heterogênea e Convergente) Tema da Aula: Controle de Congestionamento

Resolução de sistemas lineares

Em FORMATO E-LEARNING PQ A Página 1 de 6

Engenharia de Software

Notas de Cálculo Numérico

TÉCNICAS DE PLANEJAMENTO E CONTROLE. UNIDADE II - Instrumentos gráficos de planejamento e controle

Controladores Lógicos Programáveis. Automação e Controlo Industrial. Escola Superior de Tecnologia. Ricardo Antunes, António Afonso

Metadados. 1. Introdução. 2. O que são Metadados? 3. O Valor dos Metadados

TV CABO PORTUGAL, S.A.

Engenharia de Software II

Trabalho de Implementação Jogo Reversi

Universidade Federal de Goiás Instituto de Informática Processamento Digital de Imagens

Sistema de Reconhecimento de Impressões Digitais. Resumo

Aula 18 PERFIL TOPOGRÁFICO: TIPOS DE RELEVO. Antônio Carlos Campos

Tópicos em Otimização Fundamentos de Modelagem de Sistemas

Trabalho 2 Fundamentos de computação Gráfica

2 Pesquisa de valores em uma lista de dados

FEUP RELATÓRIO DE CONTAS BALANÇO

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

Inovação em sistemas de informação aplicada ao apoio do cliente de retalho

SISTEMAS OPERACIONAIS SISTEMAS OPERACIONAIS. 2º TRIMESTRE Patrícia Lucas

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

CEDERJ - CENTRO DE EDUCAÇÃO SUPERIOR A DISTÂNCIA DO ESTADO DO RIO DE JANEIRO

PRODUÇÃO CARTOGRÁFICA UD 5 CONTROLE DE QUALIDADE

P. P. G. em Agricultura de Precisão DPADP0803: Geoestatística (Prof. Dr. Elódio Sebem)

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

Centro de Formação de Associação de Escolas de. Paços de Ferreira, Paredes e Penafiel. Acção de Formação

ALGORITMOS E FLUXOGRAMAS

APLICATIVOS GRÁFICOS (AULA 4)

6. Geometria, Primitivas e Transformações 3D

PERGUNTAS FREQUENTES. O que é PROINFO?

Universidade de São Paulo. Escola Politécnica

Relatório de Investigação da Escola julho 2015

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

Visão Artificial Para a Indústria. Manual do Utilizador

CENTRO ESTADUAL DE EDUCAÇÃO TECNOLOGICA PAULA SOUZA ETEC DR. EMLIO HERNANDEZ AGUILAR

Transcrição:

Mestrado em Engenharia de Segurança Informática Tecnologias Biométricas Pedro Santos santos.pmcm@gmail.com 12065 Filipe Vieira fil.vieira@gmail.com 12049 Rui Pereira ruipereira.eng@gmail.com 12061 Docente Doutor José Jasnau Caeiro [Fingerprint Recognition]

Índice Índice... 1 Índice Imagens... 2 1. Introdução... 3 1.1. Objetivo... 3 1.2. Método Adotado... 3 1.2.1. Ambiente de Desenvolvimento... 3 1.2.2. Interpretação do Artigo... 3 1.3. Opções de Engenharia Adotadas... 3 2. Resultados... 4 2.1. Estimação da região efetiva... 4 Fase 1 Determinação de zonas efetivas... 4 Fase 2 verificação de continuidade da região efetiva... 5 Fase 3 Determinação do centroide... 5 Fase 4 Cálculo das coordenadas limite (ChainCode)... 6 Divergências/melhorias relativamente à implementação sugerida... 6 Discussão de resultados... 6 Sugestões de melhoria... 7 2.2. Estimar campo de orientação... 7 Fase 1 Calculo do campo orientação baseado no filtro de Sobel... 7 Fase 2 Estimação do campo de orientação e mapa de força anisotrópica... 7 Discussão de resultados... 9 Sugestões de melhoria... 9 2.3. Melhoria da Impressão Digital... 10 2.4. Estimar o mapa de densidade... 10 Fase 1 Binarização... 10 Fase 2 Cálculo da distância entre cumes... 10 Discussão de resultados... 12 2.5. Modelação do mapa de densidade (aproximação polinomial)... 12 Discussão de resultados... 12 2.6. Correspondência dos dois mapas de densidade... 12 Discussão de resultados... 13 2.7.Resumo... 13 1

3. Conclusões... 13 4. Referências... 14 Índice Imagens Ilustração 1 - Diagrama de fluxo do modelo proposto por [1]... 4 Ilustração 2 - Imagem da ID Original... 4 Ilustração 3 - Pontos de descontinuidade na região efetiva... 5 Ilustração 4 - Identificação dos pontos do ChainCode... 5 Ilustração 5 - Região efetiva... 6 Ilustração 6 - Resultados intermédio do filtro de Sobel, a) dx b) dy c) adição ponderada das imagens dx e dy (alpha=0.5, beta = 0.5).... 7 Ilustração 7 - Mapa de orientação (calculado com 5x5 pixels)... 8 Ilustração 8 - Mapa de força anisotrópica... 8 Ilustração 9 - Amostragem com dimensão... 9 Ilustração 10 - Amostragem com dimensão 5... 9 Ilustração 11 - Impressão Digital após a Melhoria... 10 Ilustração 12 - Imagem (após aplicação do filtro Gabor) com segmento alinhado com eixo yy... 11 Ilustração 13 - Cumes após alinhamento... 11 Ilustração 14 - Esquema de Pesquisa... 11 Ilustração 15 - Mapa de densidade... 12 Ilustração 16 - Resultados Finais em Sequencia de Imagens... 13 2

1. Introdução 1.1. Objetivo O objetivo deste trabalho prende-se com a necessidade de demonstrar a capacidade de engenharia e de interpretação de artigos científicos relacionados com a biometria. Foi atribuído ao grupo um artigo científico sobre impressões digitais [1] e pedido que após análise fosse implementado tecnicamente a solução proposta no mesmo. 1.2. Método Adotado 1.2.1. Ambiente de Desenvolvimento Assim e mesmo antes de iniciar a análise do artigo em questão, houve uma análise às soluções de desenvolvimento na área de imagem e matemática. Esta análise seria importante na medida de se poder encontrar uma linguagem de programação com o maior e melhor numero de bibliotecas de matemática e tratamento de imagem possível, sabíamos que iria ser uma mais valia na implementação. Das opções propostas no decorrer das aulas de Tecnologias Biométricas e que foram as de MatLab, Python e C++, o MatLab foi colocado de parte devido ao cariz proprietário da solução (apesar de possuir fortes bibliotecas gráficas e ser inteiramente vocacionado para o tratamento matemático), entre o Python e o C++ ambos com a possibilidade de recurso às bibliotecas de OpenCv (Open Source Computer Vision), optou-se pela utilização do C++ pela sua capacidade de otimização e rapidez que julgamos de muita importância em ambientes biométricos. 1.2.2. Interpretação do Artigo O artigo [1] propõe uma melhoria ao método tradicional de reconhecimento de impressões digitais. Classicamente a comparação é efetuada através das minucias extraídas, aqui é proposta uma análise de modelo polinomial para aproximação dos mapas de densidade. Assim é proposto que a conjunção do uso de minucias com o mapa de densidade originará um aumento de eficácia no reconhecimento das impressões digitais. Para isso os autores dividem em seis partes (A, B, C, D, E, F) o processo de determinar o mapa de densidade, serão estes métodos apresentados que foram seguidos para a implementação do sistema, nos próximos pontos do relatório é efetuada a análise a cada parte e a forma como foi implementada. 1.3. Opções de Engenharia Adotadas De forma a se conseguir uma maior definição do trabalho e dos resultados independentes de cada uma das partes explanadas no artigo, estas foram desenvolvidas de forma independente, sendo que sempre que uma necessita como entrada a saída de uma outra, esta passagem é efetuada com uma leitura da imagem resultante previamente gravada em disco pelo método anterior. O desenvolvimento foi efetuado em ambiente Linux (Distro Ubuntu 12.04) com a edição do código fonte efetuado com recurso ao geany, foram instaladas as versões 2.3 do OpenCv nos computadores de dois membros do grupo e a versão 2.4 no terceiro. Numa primeira fase, foi atribuída a cada membro o desenvolvimento de cada uma das três primeiras partes, o que deu origem a um interessante acontecimento relacionado com a opção de trabalhar as imagens no OpenCv como imagem Iplmage ou como matriz Mat::cv. Só numa fase de apoio conjunto já num estado avançado de desenvolvimento foi observada a diferença na leitura, tratamento e escrita das imagens fazendo todas uso das bibliotecas do OpenCv mas usando opções metodológicas diferentes. Como se trata da mesma biblioteca, ela própria 3

fornece também métodos de transformação dos dados, pelo que não resultou num contratempo, tendo sim dado origem a uma melhor e mais alargada aprendizagem do OpenCv. 2. Resultados Conforme indicado pelo autor de [1], o trabalho é proposto segundo um diagrama de fluxo que englobas as etapas (Ilustração 1) necessárias para a implementação do modelo computacional baseado em mapas de densidade de impressões digitais. 2.1. Estimação da região efetiva Ilustração 1 - Diagrama de fluxo do modelo proposto por [1]. Identificação da região efetiva para posterior utilização na correspondência de mapas de densidade. Mais concretamente o resultado final nesta fase será a determinação do que os autores referem como ChainCode. Este corresponde a 16 coordenadas que delimitam a região de interesse da impressão digital da restante imagem. Fase 1 Determinação de zonas efetivas O processo baseia-se na deslocação de uma janela de 16x16 pixéis ao longo da imagem original (Ilustração 2). Em cada interação, é atribuído a pixel da janela o valor 0 (preto) ou 255 (branco) conforme a variância dos pontos da janela estiver abaixo ou acima do limiar pré-estabelecido pelo utilizador. Para o cálculo da variância foi utilizada a função gsl_stats_int_variance() da biblioteca GSL. Ilustração 2 - Imagem da ID Original 4

Fase 2 verificação de continuidade da região efetiva A Ilustração 3, apresenta uma imagem na fase anterior ao teste de continuidade. Neste caso é possível verificar que a aplicação simples do limitar para a variância não é suficiente para eliminar os pontos de descontinuidade da imagem. Segundo os autores, devem ser tomadas medidas de pós-processamento para garantir que a imagem seja composta por apenas uma zona continua. Como solução é proposto a aplicação de métodos como a dilatação e erosão como solução. A implementação efetuada consiste na aplicação consecutiva da dilatação sempre que a imagem não seja contínua. Um resultado negativo deste processo é o aumento da dimensão da zona efetiva, e que é minimizado com o processo de erosão aplicado segundo a seguinte fórmula: (1) A aplicação da fórmula (1) permite manter automático esta parte do processo, simultaneamente limitando os efeitos da dilatação. Nesta fase são aplicadas as funções cvdilate() e cverode() da biblioteca OpenCV. Ilustração 3 - Pontos de descontinuidade na região efetiva Fase 3 Determinação do centroide A determinação do ponto central (Ilustração 4) da região efetiva tem por base o exemplo apresentado em [2]. Este exemplo baseia-se na função CvMoments() que realiza o cálculo dos momentos de uma imagem. Desses momentos alguns podem ser usados na determinação do centroide, mais especificamente, os momentos espaciais M00, M10 e M01. O ponto central é obtido segundo (2). (x,y) = (M10/M00, M01/M00) (2) Ilustração 4 - Identificação dos pontos do ChainCode 5

Fase 4 Cálculo das coordenadas limite (ChainCode) A determinação das coordenadas limite consiste na identificação dos pontos que estão no limite da região efetiva a cada 22.5º relativamente ao ponto central da imagem. Por conseguinte podem ser determinados 16 ângulos (Ilustração 4), correspondendo cada um a uma coordenada do ChainCode. O processo adotado consiste em estimar para cada angulo, os pixéis da reta entre o centroide e a coordenada no limite da imagem. Neste processo foram utilizado o sistema de coordenadas polares (3) e (4). A distância r é incrementada em cada iteração até que seja verificado o final da região efetiva e determinado o ponto limite. )) (3) )) (4) O processo de determinação da região efetiva termina com a identificação das 16 coordenadas limites, que correspondem aos pontos que delimitam a área da Ilustração 5. ChainCode correspondente aos pontos da Ilustração 5: Ilustração 5 - Região efetiva (428,256) (428,332) (396,407) (338,480) (245,480) (152,480) (83,418) (67,330) (67,256) (99,196) (115,126) (147,20) (245,0) (336,35) (380,121) (412,187) Divergências/melhorias relativamente à implementação sugerida Os autores apenas referem a necessidade de aplicar os processos de dilatação e erosão, deixando ao critério do programador os detalhes da implementação. Na aplicação efetuada, teve prioridade a possibilidade de automatizar o maior número de parâmetros possível. Nos testes efetuados, a dependência criada entre a dilatação e erosão em (1) não teve implicações na eficiência do algoritmo. Discussão de resultados Os resultados estão de acordo como os resultados apresentados pelo autor. 6

Sugestões de melhoria Utilização da região efetiva nas fases seguintes do artigo e não apenas na fase de correspondência (matching), uma vez que permitirá reduzir o tempo de processamento global. 2.2. Estimar campo de orientação Determinar a orientação local dos cumes. O método aplicado pelo autor baseia-se na baixa frequência associada à variação dos cumes. O processo seguido pelo autor remete para [3] que descreve uma técnica para a computação do campo de orientação que combina de três métodos: a) Computação do campo de orientação; b) Extração de pontos singulares; c) Aproximação polinomial bivariada. Na Ilustração 6 a utilização de a) permite determinar o campo de orientação inicial e que é aplicado à totalidade da impressão digital. Por falta de suavidade das curvas junto aos pontos singulares, é realizada a extração de pontos singulares b) para permitir a aplicação de algoritmos para a melhoria da precisão local da orientação. Por fim é aplicado um modelo polinomial variado para descrever globalmente o campo de orientação c). Fase 1 Calculo do campo orientação baseado no filtro de Sobel Por análise de [3] o processo inicial consiste na utilização uma abordagem baseada no gradiente para a determinação do campo de orientação. O processo utlizado consiste na utilização da função cvsobel() para calculo da derivada da imagem primeira ordem para x e y, com base num kernel de Sobel de dimensão 3. O resultado obtidos da aplicação do filtro de Sobel: cvsobel(imgin,dx,1,0,3); (5) cvsobel(imgin,dy,0,1,3); (6) Ilustração 6 - Resultados intermédio do filtro de Sobel, a) dx b) dy c) adição ponderada das imagens dx e dy (alpha=0.5, beta = 0.5). Fase 2 Estimação do campo de orientação e mapa de força anisotrópica O processo de estimação do campo de orientação é realizado numa vizinhança de nxn pixels relativamente a cada ponto da imagem original. Para cada pixel da região é determinado o gradiente de x e y com base nos resultados obtidos na fase anterior. A estimação da orientação em cada ponto da imagem é dada pela fórmula: (7) 7

Ilustração 7 - Mapa de orientação (calculado com 5x5 pixels) Mapa de força anisotrópica É também nesta fase que os autores propõem a determinação do mapa da força anisotrópica. Estre processo reutiliza parte dos cálculos locais efetuados na determinação da orientação. O cálculo do mapa da força anisotrópica permite obter o grau de confiança da orientação calculada e pode ser obtido por (8). (8) W(x,y) varia no intervalo de 0 a 1, indicado uma vizinhança de (x,y) idêntica em todas as direções sempre que os valores são mais próximos de 1. O mapa apresentado na Ilustração 8 apresenta várias regiões a preto correspondentes a pontos da Ilustração 7 onde a orientação não é precisa. Ilustração 8 - Mapa de força anisotrópica 8

Grelha de amostragem Para permitir a visualização do mapa da Ilustração 7, foi criada um processo de amostragem do mapa de orientação o qual definido pelo parâmetro dimensão janela V (Ilustração 9 e Ilustração 10) que permite definir o intervalo (em pixéis) para criação de cada pondo de amostra. Cada ponto representa a orientação no ponto (x,y) e permite a visualização global do mapa de orientação e avaliar o comportamento do algoritmo. Ilustração 9 - Amostragem com dimensão Ilustração 10 - Amostragem com dimensão 5 Recursos não implementados: Em [3], apontado pelo autor para a implementação da estimação do campo de orientação, recorre a cálculos adicionais para melhoria da orientação local, em especial na vizinhança dos pontos singulares. A implementação efetuada e que foi descrita nos pontos anteriores, não inclui as fases de otimização efetuadas pelos autores. O motivo para esta decisão deve-se a ser uma otimização, que apesar da vantagem que possam ter para o restante trabalho, não constitui uma prioridade dado que os resultados obtidos sem otimização não invalidam o restante trabalho. Resultante desta decisão, não foram implementadas as seguintes otimizações b) e c) referidas inicialmente. Discussão de resultados Os resultados estão de acordo como os resultados apresentados pelo autor, apresentando ligeira falta de precisão na determinação na vizinhança de pontos lingulares. Sugestões de melhoria Limitar a área de determinação do mapa de orientação recorrendo à região efetiva, uma vez que permitirá reduzir o tempo de processamento global. Implementação das alíneas B e C conforme indicado pelos autores. 9

2.3. Melhoria da Impressão Digital Para a melhoria (eliminação de ruído e clarificação dos ridges) da impressão digital de forma a que seja mais eficaz a sua leitura para o cálculo do mapa de densidade, os autores do artigo [1] indicam [4] que deve ser utilizado um filtro de Gabor 1 em convulsão com a imagem, e ao resultado obtido aplicado um threshold [5] para segmentação dos ridges. De referir que o filtro de Gabor desenvolvido no código da aplicação teve por base um algoritmo apresentado pela WiKicker 2, e que foi adaptado para as necessidades especificas deste trabalho. Numa fase mais tardia foi descoberto que a partir da versão 3.2 do OpenCv já existe uma função para aplicar o filtro de Gabor pronta a usar getgaborkernel 3, mas não documentada ainda nos manuais oficiais da biblioteca, pelo que se manteve a nossa versão em funcionamento depois de alguns testes frustrados à função existente no OpenCv. 2.4. Estimar o mapa de densidade Ilustração 11 - Impressão Digital após a Melhoria Aplicação da abordagem espacial para determinação da distância entre cumes. O autor opta por esta abordagem, uma vez que este processo tem um desempenho aceitável após aplicação de um processo de pós-processamento de suavização da imagem aliado a um baixo custo computacional. O processo tem por base um dos métodos apresentado por [6] e divide-se em duas fases: a) Binarização da imagem melhorada (pela aplicação do filtro de Gabor); b) Determinação da distância entre cumes consecutivos. Fase 1 Binarização O processo de binarização da imagem utilizado consistiu na aplicação da função cvthreshold() com limiar de 150. Fase 2 Cálculo da distância entre cumes O processo utilizado para determinar a distância entre cumes consiste na análise da imagem em segmentos de 32x32 pixels. Para cada segmento é determinado a orientação P local com base no campo de orientação determinado anteriormente. A orientação local P permite efetuar o alinhamento do segmento em análise com o eixo yy (Ilustração 12 e Ilustração 13), o que simplifica o processo de cálculo da distância entre cumes, ou seja, a distância entre os pontos A e B na Ilustração 12. 1 http://en.wikipedia.org/wiki/gabor_filter 2 http://www.eml.ele.cst.nihon-u.ac.jp/~momma/wiki/wiki.cgi/opencv/gabor%20filter.html 3 https://code.ros.org/trac/opencv/changeset/7258 10

Ilustração 12 - Imagem (após aplicação do filtro Gabor) com segmento alinhado com eixo yy Ilustração 13 - Cumes após alinhamento Após o alinhamento do segmento, é realizado uma pesquisa com início no ponto central do segmento na coordenada (16,16). A pesquisa é realizada para os pixéis à esquerda e direita do ponto inicial (PI) conforme o esquema (Ilustração 14). Ilustração 14 - Esquema de Pesquisa Após percorrer o segmento ao longo do eixo xx, é possível determinar os pontos extremos os cumes A e B e por conseguinte determinar os pontos intermédios a3 e b3 e assim determinar a distância entre ambos. O calculo da distancia, uma vez determinados os pontos a1, a2, b1 e b2 é dado por (9): ) ) (9) Caso o ponto inicial PI, coincida com um cume, o algoritmo efetua o reposicionamento do ponto inicial no vale seguinte. Por fim, o mapa de densidade é determinado com base na distância entre os cumes. As zonas escuras correspondem a uma menor densidade de cumes. 11

Ilustração 15 - Mapa de densidade Recursos não implementados Na abordagem [6], o processo geométrico recorre a um processo de determinação de orientação dos cumes. Na implementação proposta, o processo segue as indicações [1] e reutiliza o campo de orientação. A implementação de [6] inclui um conjunto de cálculos iniciais aplicados à imagem em níveis de cinzento, que difere da implementação sugerida por Dingrui Wan e Jie Zhou. Neste caso, o processo tem início na imagem resultante do processo de melhoria da impressão digital. Discussão de resultados O processo de determinação da distância utilizado recorre ao cálculo da distância entre dois cumes parte do princípio que a dimensão do segmento (neste exemplo 32x32) é suficiente para incluir 2 ou mais cumes e assim garantir o cálculo da distância. A presença de ruid3o ou descontinuidades na imagem da impressão digital pode resultar no cálculo errado da distância entre cumes (ex: inexistência de um par de cumes no segmento em analise). Esta situação também pode ocorrer quando a dimensão do segmento não apresenta dimensão suficiente para incluir dois ou mais cumes. 2.5. Modelação do mapa de densidade (aproximação polinomial) Modelação do mapa original de densidade segundo um polinómio bivariado. Discussão de resultados Não foi possível concluir esta etapa à data da entrega do trabalho. 2.6. Correspondência dos dois mapas de densidade Comparação dos dois mapas de densidade com base nos parâmetros polinomiais. O processo inclui o alinhamento das impressões digitais recorrendo a algoritmos convencionais. No caso em concreto, a abordagem escolhida pelo autor é a transformada de Hough para a finalização do alinhamento. O processo de comparação é realizado na correlação entre os dois mapas de densidade alinhados, após o qual é calculada a interceção das regiões efetivas. O resultado a obter é o número de pontos resultantes da interceção e que será utilizado para determinar a pontuação da correspondência (matching score). 12

Discussão de resultados Esta etapa não foi implementada. 2.7.Resumo A seguinte imagem ilustra os resultados finais obtidos em cada etapa do trabalho Imagem Original A- Região Efetiva (ChainCode) B- Campo de Orientação C- Mapa de Força Anisotrópica D- Melhoria de Imagem (Gabor) E- Mapa de Densidade Ilustração 16 - Resultados Finais em Sequencia de Imagens 3. Conclusões A primeira conclusão que se tira deste trabalho é a de que analisar um artigo obriga à análise de um outro sem número de artigos referenciados por este, pelo que, ao contrário do esperado a análise efetuada a um artigo obrigou à análise de mais de 5 artigos. Não foi possível efetuar em tempo útil a junção automática de todos os módulos criados, mas ficou patente a facilidade de interligação entre os mesmos, sendo que como em cada modulo o input e output é efetuado de uma e para uma imagem.pgm estes são facilmente aplicados em outras aplicações que deles necessitem. 13

A maior dificuldade encontrada no processo de desenvolvimento do trabalho, prende-se com a ausência de detalhe matemático no artigo analisado, em especial nas fases anteriores à correspondência (pré-matching), pelo que foi necessário o consumo extra de tempo na pesquisa das mesmas. 4. Referências [1] D. Wan e J. Zhou, Fingerprint Recognition Using Model-Based Density Map, IEEE TRANSACTIONS ON IMAGE PROCESSING, p. Vol. 15 no 6, Junho 2006. [2] Stackoverflow - Centroid, [Online]. Available: http://stackoverflow.com/questions/8143414/centroid-of-contourobject-in-opencv-in-c. [Acedido em Maio 2012]. [3] J. Zhou e J. Gu, A model-based method for the computation of fingerprints orientation field, IEEE Trans. Image Process, Vols. %1 de %2vol. 13, no. 6, p. 821 835, Jun-2004. [4] A. Jain, H. Lin e R. Bolle, On-Line Fingerprint Verification, IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, pp. VOL. 19, NO. 4, Abril 1997. [5] L. Hong, Y. Wan e A. Jain, Fingerprint Image Enhancement: Algorithm and Performance Evaluation, IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, pp. VOL. 20, NO. 8, Agosto 1998. [6] Z. M. Kovacs-Vajna, R. Rovatti e R. Frazzoni, Fingerprint ridge distance computation methodologies, attern Recognit., vol. vol. 33, p. 69 80, 2000. 14