Upload
lythu
View
220
Download
1
Embed Size (px)
Citation preview
GLAUBER MARTINS DA COSTA
RECONHECIMENTO DA ÍRIS COM SUPORTE DE WAVELETS
Trabalho de conclusão de curso apresentado ao Curso de Ciência da Computação.
UNIVERSIDADE PRESIDENTE ANTÔNIO CARLOS
Orientador: Prof. Marcelo de Miranda Coelho
BARBACENA2004
2
GLAUBER MARTINS DA COSTA
RECONHECIMENTO DA ÍRIS COM SUPORTE DE WAVELETS
Este trabalho de conclusão de curso foi julgado adequado à obtenção do grau de
Bacharel em Ciência da Computação e aprovado em sua forma final pelo Curso de Ciência da
Computação da Universidade Presidente Antônio Carlos.
Barbacena – MG, 14 de junho de 2004.
______________________________________________________
Prof. Marcelo de Miranda Coelho - Orientador do Trabalho
______________________________________________________
Prof. Luis Augusto M. Mendes - Membro da Banca Examinadora
______________________________________________________
Prof. Lorena Sophia C. de Oliveira- Membro da Banca Examinadora
3
AGRADECIMENTOS
Agradeço a Deus pela saúde e paz, e o agradecimento sincero aos mestres e amigos, aos somente mestres, e àqueles que, com seus problemas e dores humanas, não foram amigos e nem mestres, mas que também passaram por nós. Nosso respeito, nosso afeto.
4
RESUMO
Este trabalho inicialmente descreve sucintamente a área da biometria e as características da
íris humana. Em seguida, faz uma análise dos algoritmos de reconhecimento de íris que vêm
sendo desenvolvidos em linhas de pesquisas recentes; em particular, analisa-se o método
proposto por Daugman, através da utilização da Wavelets de Gabor de valores complexos.
Este método gera códigos de íris de 256 bytes que são comparados entre si utilizando-se a
Distância de Hamming resultando um valor probabilístico. A implementação desse sistema
foi feita, e os resultados são apresentados.
Palavras – Chave: Íris ,Wavelets de Gabor e Distância de Hamming.
5
SUMÁRIO
EQUAÇÕES ........................................................................................................................................................... 8
FIGURAS ................................................................................................................................................................ 9
1 INTRODUÇÃO .................................................................................................................................................. 10
2 BIOMETRIA ...................................................................................................................................................... 12
3 WAVELETS ....................................................................................................................................................... 29
4 O PROCESSO DE RECONHECIMENTO DA ÍRIS ..................................................................................... 37
5 EXPERIMENTOS REALIZADOS .................................................................................................................. 46
6 CONCLUSÕES .................................................................................................................................................. 52
REFERÊNCIAS BIBLIOGRÁFICAS ............................................................................................................... 54
ANEXO A – IMAGENS DE ÍRIS ....................................................................................................................... 55
ANEXO B - ALGORITMOS .............................................................................................................................. 58
6
7
EQUAÇÕES
EQUAÇÃO 1: WAVELET FILHA [GAB98]................... ..................................................................................34
EQUAÇÃO 2: DEFINIÇÃO DE X' E Y' [GAB98]............ ................................................................................35
EQUAÇÃO 3: FORMA DA WAVELET 2D DE GABOR [GAB98].... ...........................................................35
EQUAÇÃO 4: FORMA DA WAVELET 2D DE FOURIER [GAB98].. ..........................................................35
EQUAÇÃO 5: MÉTODO ÍNTEGRO-DIFERENCIAL [DAU03]...... .............................................................38
EQUAÇÃO 6: WAVELET 2D DE GABOR PARA VALORES COMPLEX OS [DAU03]...........................41
EQUAÇÃO 7: DISTÂNCIA DE HAMMING [DAU03]............ ........................................................................43
EQUAÇÃO 8: ADIMENSIONALIDADE PARA O RAIO DA PUPILA. .......................................................48
8
FIGURAS
FIGURA 1: DESCRIÇÃO DE UM SISTEMA POLAR [ALA04].... ...............................................................31
FIGURA 2: SISTEMA DE COORDENADAS CARTESIANAS [ALA04 ].....................................................32
FIGURA 3: SISTEMA DE COORDENADAS POLARES [ALA04]... ............................................................32
FIGURA 4: APLICAÇÃO DE COORDENADAS POLARES NO TRAÇA DO DE GRÁFICOS [ALA04]..................................................................................................................................................................................33
FIGURA 5: EM NEGRITO BITS DIFERENTES ENTRE 2 VETORE S.......................................................34
FIGURA 6: IMAGEM DE UM OLHO EM QUE A ÍRIS FOI ISOLA DA DO RESTANTE DA IMAGEM [DAU03]..................................................................................................................................................................39
FIGURA 7: CODIFICAÇÃO DA DEMODULAÇÃO POR QUADRANTE DE FASE [DAU03]................42
FIGURA 8: DISTRIBUIÇÃO DA DISTÂNCIA DE HAMMING OBTI DA ATRAVÉS DE 2,3 MILHÕES DE COMPARAÇÕES [DAU03]..........................................................................................................................44
FIGURA 9: TAXA DE ERRO DE CRUZAMENTO [VIG03]....... ..................................................................45
FIGURA 10: ÍRIS COLETADA NA INTERNET............... ..............................................................................47
FIGURA 11: ÍRIS ADQUIRIDA ATRAVÉS DE UMA CÂMERA DIG ITAL..............................................47
FIGURA 12: ÍRIS DA FIGURA 10 SOFRENDO A APLICAÇÃO D A WAVELET 2D GABOR...............49
FIGURA 13: ÍRIS DA FIGURA 11 SOFRENDO A APLICAÇÃO D A WAVELET 2D GABOR...............49
FIGURA 14: CÓDIGO DE 256 BYTES DA ÍRIS DA FIGURA 10.................................................................50
FIGURA 15: CÓDIGO DE 256 BYTES DA FIGURA 11.................................................................................50
FIGURA 16: ÍRIS JÁ COM O CÓDIGO NO CANTO SUPERIOR D IREITO.............................................50
FIGURA 17: ÍRIS JÁ COM O CÓDIGO NO CANTO SUPERIOR D IREITO.............................................50
FIGURA 18: ÍRIS ADQUIRIDA DA MÁQUINA DIGITAL DE 1 M EGAPIXEL........................................55
9
FIGURA 19: ÍRIS ADQUIRIDA DA MÁQUINA DIGITAL DE 3.2 MEGAPIXEL.....................................55
FIGURA 20: ÍRIS ADQUIRIDA DA MÁQUINA DIGITAL DE 3.2 MEGAPIXEL.....................................56
FIGURA 21: ÍRIS ADQUIRIDA DA MAQUINA DIGITAL DE 3.2 MEGAPIXEL.....................................56
FIGURA 22: ÍRIS ADQUIRIDA DA INTERNET [DAU03]...... ......................................................................56
FIGURA 23: ÍRIS ADQUIRIDA DA INTERNET [DAU03]...... ......................................................................56
FIGURA 24: ÍRIS ADQUIRIDA DA INTERNET [DAU03]...... ......................................................................57
1 INTRODUÇÃO
O reconhecimento automático e eficiente de pessoas há muito tempo se tornou
uma veia de pesquisa atraente. Como em todo problema de reconhecimento de padrões, a
questão chave é a relação entre as variabilidades intra e extra-classe. Objetos podem ser
classificados confiavelmente somente se a variabilidade entre objetos de uma mesma classe
for menor que a variabilidade entre objetos de classes diferentes.
Para essas razões, padrões de íris se tornaram interessantes como alternativa para
reconhecimento visual confiável de pessoas, quando uma imagem da íris pode ser feita a
menos de um metro de distância e, especialmente, quando há a necessidade de se procurar em
grandes bancos de dados sem o perigo de ocorrer um resultado falso positivo. Apesar de
10
pequena em tamanho (11 milímetros) e, algumas vezes, problemática para imagear, a íris tem
a grande vantagem matemática de que sua variabilidade entre pessoas diferentes é enorme.
Além disso, por ser um órgão interno do olho, a íris é bem protegida do ambiente e estável
através do tempo, ao contrário dos outros métodos biométricos para os quais a probabilidade
de danos.
O processo de capturar uma íris em um molde biométrico é composto de algumas
etapas. A primeira é obter a imagem de uma íris. Existem duas maneiras: uma através de
máquina digital e outra de uma íris existente na internet em um banco de testes. A próxima
etapa é localizar a íris em uma imagem e definir o centro e o raio da pupila e da íris. Após a
etapa de localização da íris, às vezes é necessário a aplicação de correções matemáticas, pois
na imagem o tamanho da íris, o tamanho da pupila e a posição da íris podem estar
deformados. A próxima fase é a codificação da íris, na qual aplica-se a Wavelet 2D de Gabor ,
que tem a finalidade de gerar valores complexos, comparados posteriormente utilizando a
Distância de Hamming. Para todas as etapas foram desenvolvidos algoritmos, com exceção ao
da Wavelet 2D de Gabor o qual já fora desenvolvido por Daugman.
No Capítulo 2 será visto o conceito de biometria e suas origens, será também feita
uma comparação de verificação e identificação das técnicas de reconhecimento por meio da
biometria, será descrito o funcionamento da verificação biométrica e os principais tipos de
sistemas biométricos. No Capítulo 3 serão vistos os conceitos de Wavelet e algumas técnicas
como as Coordenadas Polares, Distância de Hamming e Wavelet 2D de Gabor. No Capítulo 4
será visto o processo de reconhecimento da íris e onde aplicam-se as técnicas do Capítulo 2.
No Capítulo 5 será visto como foram realizados os experimentos do reconhecimento da íris.
No Capítulo 6 serão vistas as conclusões sobre o reconhecimento da íris.
11
2 BIOMETRIA
“Biometria significa, literalmente, medida da vida. No mundo da segurança,
biometria se refere aos métodos automatizados para identificação de pessoas com base em
suas características físicas únicas ou aspectos comportamentais” [VIG03].
Pode ser mais bem definida como sendo as mensurações fisiológicas e/ou
características de comportamento que podem ser utilizadas para verificação de identidade de
um indivíduo. Elas incluem Reconhecimento da Íris, Impressões Digitais, Reconhecimento de
Voz, Retina, Face, Imagem Térmica, Análise de Assinatura, Palma da Mão e outras técnicas.
Elas são de grande interesse em áreas onde é realmente importante verificar a identidade de
um indivíduo. Inicialmente, essas técnicas eram empregadas em aplicações especializadas de
12
alta segurança, entretanto pode ser vista agora sua utilização e proposta de uso em uma grande
e crescente área de situações.
2.1 ORIGENS DA BIOMETRIA
Tudo começou com uma idéia de pensar sobre biometria como uma tecnologia
futurista que deveria ser utilizada junto com carros, com energia solar, pílulas de alimentação
e outros equipamentos em algum lugar do futuro próximo. Esta imagem popular sugere que
esses produtos são do final do século 20 na era dos computadores. Na verdade, os princípios
básicos da verificação biométrica foram compreendidos e exercitados centenas de anos antes.
Povos como os do Vale do Nilo empregavam verificação biometria em um grande número de
situações de negócios, diariamente [REV03].
Existem diversas referências sobre indivíduos sendo identificados por
características físicas e parâmetros como cicatrizes, critérios de mensuração física ou a
combinação de características mais complexas como cor dos olhos, altura e assim por diante.
Essas seriam freqüentemente utilizadas no setor de agricultura onde grãos e provisões seriam
estocados em uma central de reposições e aguardavam para movimentações futuras após
identificação dos proprietários. Com certeza não possuíam leitores biométricos e redes de
computadores, e certamente não estavam lidando com um número de indivíduos comparável
ao de hoje, mas os princípios básicos são similares. Mais tarde, no século dezenove, houve um
pico de interesse em pesquisas criminalísticas na tentativa de relacionar características físicas
com tendências criminais. Isso resultou em uma variedade de dispositivos para mensuração
sendo produzidos, e muitas informações sendo coletadas [REV03].
Os resultados não foram conclusivos mas a idéia de mensurar características
físicas individuais prosseguiu e os desenvolvimentos paralelos com impressões digitais
tornaram-se métodos internacionais utilizados por forças policiais para identificação e
verificação. Porém, impressões digitais são freqüentemente debatidas e os critérios que
diferentes países utilizam para verificar uma impressão digital variam ao redor do mundo com
maiores ou menores números de pontos de minúcias requeridas para serem identificadas.
13
Deve-se adicionar a isso a questão de interpretação pessoal a qual pode ser pertinente em
casos duvidosos. Essa é a melhor metodologia oferecida e ainda a número um para as forças
policiais, embora o processo de identificação seja muito automatizado nos dias de hoje
[IDG03, REV03].
Com essa formação, não foi surpresa que por muitos anos a fascinação tenha
ocupado a mente de indivíduos e de organizações com a possibilidade de utilização de
eletrônicos e a força de microprocessadores para automatizar a verificação de identidades para
os setores militares e comerciais.Vários projetos foram iniciados para verificar o potencial da
biometria e foi produzido um leitor grande e desajeitado para leitura da geometria da mão.
Não era bonito, e mais adiante seu desenho e concepção foram refinados. Mais tarde, uma
pequena empresa especializada criou uma unidade muito menor, e um leitor mais aprimorado
da geometria da mão tornou-se o princípio da industria biométrica atual [REV03].
Equipamentos biométricos que trabalham com Impressões Digitais são um grande
aprimoramento e são utilizados em numerosos projetos biométricos por todo o mundo. Em
paralelo, outros métodos biométricos estão sendo desenvolvidos, melhorados e refinados até o
ponto em que se tornem realidades comerciais. Recentemente, existe muito interesse nas
técnicas de Reconhecimento de Íris e Reconhecimento Facial. A ultima década tem sido de
amadurecimento da indústria biométrica e indústrias especializadas brigando de mãos cheias
por vendas em um mercado global equilibrado, sendo obtido um respeitável número de
equipamentos e um significante crescimento [IDG03, REV03].
A seguir, um resumo da evolução nos processos de identificação [REV03]:
Ano 650 da era Cristã: Código de Yng-Hwui, durante a dinastia de Tang na
China, determinava-se que o marido desse um documento à divorciada,
autenticando com sua impressão digital.
Ano 782: Foram retiradas de cidades soterradas na areia, no Turquestão, placas de
cerâmica lavradas com as seguintes palavras. "Ambas as partes concordam
com estes termos que são justos e claros e afixam as impressões dos seus
dedos, que são marcas inconfundíveis".
14
Ano 800: Na Índia, as impressões digitais eram conhecidas com o nome de
Tipsahi, termo criado pelos tabeliões de Bengala, onde os analfabetos
legalizavam os seus papéis.
Ano 1300: Os chineses empregavam a impressão digital não só nos divórcios,
como também nos casos de crimes.
Ano 1658: Em muitos países empregaram-se o ferrete, a tatuagem e a mutilação,
para identificar escravos e criminosos.
Na Pensilvânia – EUA, os criminosos eram marcados com uma letra
feita com ferro em brasa sobre o dedo polegar esquerdo: A= adúltero, M=
assassino, T= felonia.
Na França os condenados às galés eram marcados com o sinal GAL.
Ao lado do ferrete, empregou-se a mutilação. Em Cuba, cortavam-se
as orelhas dos escravos e narinas dos criminosos.
Ano 1664: Marcelo Malpighi, médico italiano, publicou um trabalho intitulado
"Epístola sobre o órgão do tato", no qual se estuda os desenhos digitais e
palmares.
Ano 1823: João Evangelista Purkinje, apresentou à Universidade de Breslau –
Alemanha, uma tese, na qual: analisou os caracteres externos da pele, estudou
o sistema déltico, grupou os desenhos digitais em nove tipos.
Ano 1840: Com o aparecimento da fotografia, passou a ser ela empregada como
processo exclusivo de identificação criminal, inicialmente na Suíça.
Ano 1856: José Engel publicou o "Tratado do desenvolvimento da mão humana",
no qual fez estudos sobre os desenhos digitais. Afirmou que os desenhos
digitais existem desde o sexto mês de vida fetal; reduziu a quatro os nove tipos
descritos por Purkinje.
Ano 1858: William James Herschel, coletor do governo inglês, em Bengala –
Índia, iniciou seus estudos sobre as impressões digitais. Tomou as impressões
15
digitais dos nativos, nos contratos que firmavam com o governo, essas
impressões faziam as vezes de assinatura; aplicou estas impressões nos
registros de falecimentos; usou este processo nas prisões para reconhecimento
dos evadidos.
Henry Faulds, inglês, médico de hospital em Tóquio, contribuiu para o
estudo da dactiloscopia, examinando impressões digitais em peças de
cerâmica pré-histórica japonesa; previu a possibilidade de se descobrir um
criminoso pela identificação das linhas papilares; preconizou uma técnica para
a tomada de impressões digitais, utilizando-se de uma placa de estanho e tinta
de imprensa.
Ano 1882: Sistema Antropométrico, lançado em Paris, por Alfonse Bertillon, foi
o primeiro sistema científico de identificação, pois baseava-se nos elementos
antropológicos do homem. Consistia no assinalamento feito em milímetros de
várias partes do corpo humano. Como o diâmetro da cabeça; comprimento da
orelha direita; comprimento do pé esquerdo; estatura; envergadura;
assinalamento descritivo do formato do nariz; lábios; orelhas e também, as
marcas particulares: tatuagens, cicatrizes, etc. Estes dados eram registrados em
uma ficha antropométrica, que continha também a fotografia do identificado.
Ano 1888: Francis Galton, nobre inglês, incumbido pelo governo de analisar o
material colhido por Herschel, quando esteve na Índia, a fim de estabelecer
um sistema de identificação mais seguro que a antropometria. Lançou as bases
científicas da impressão digital.
O sistema de Galton foi, sem dúvida, rudimentar, teve entretanto um
grande mérito, o de servir de ponto de partida para os demais sistemas
dactiloscópicos.
Ano 1891: Henry de Varigny, articulista francês, publicou na "Revue
Scientifique" de 2 de Maio de 1891, um artigo discorrendo sobre o sistema de
Galton: no mesmo artigo apresentou várias sugestões quanto ao emprego das
impressões digitais.
16
O artigo de Varigny foi traduzido para o espanhol e publicado na
"Revista de Identification Y Ciências Penales".
Lendo esse artigo, Juan Vucetich, encarregado da oficina de
identificação de La Plata – Argentina, logo se convenceu da superioridade do
novo sistema de identificação, iniciando assim, seus estudos sobre as
impressões digitais.
Em 1º de Setembro de 1891, Juan Vucetich apresentou seu sistema de
identificação, com o nome de Icnofalangometria.
Vucetich baseou sua classificação no sistema de Galton, procedeu a
tomada das impressões dos dez dedos, empregando os símbolos literais e
numerais na classificação das figuras: ARCO-A-1; PRESILHA INTERNA-I-
2; PRESILHA EXTERNA-E-3; VERTICILO-V-4. Os símbolos literais
representam os dedos polegares e nos demais dedos são empregados símbolos
numerais. Os dez dedos de uma pessoa são diferentes entre si, assim como não
existem duas pessoas que apresentam impressões digitais exatamente
coincidentes.
Ano 1894: Dr. Francisco Latzina, publicou no jornal "La Nacion", de Buenos
Aires, um artigo no qual critica, favoravelmente o sistema de Vucetich,
sugerindo entretanto, que o nome Icnofalangometria, fosse substituído por
Dactiloscopia, este novo nome é constituído de dois elementos gregos
(DA’KTYLOS = dedos; SKOPÊIN = examinar).
Ano 1900: Edward Richard Henry, publicou na Inglaterra, seu livro
"Classification And Uses Of Finger Prints" expondo seu novo sistema de
identificação dactiloscópico, adotando quatro tipos fundamentais: ARCOS,
PRESILHAS, VERTICILOS E COMPOSTOS.
Ano 1901: Neste ano, o sistema dactiloscópico de Henry foi adotado oficialmente
na Inglaterra, pela Scotland Yard.
Ano 1902: José Alves Felix Pacheco, iniciou no Rio de Janeiro a tomada da
impressão digital nas fichas Antropométricas.
17
Em 17/07/1902 foi inaugurado em São Paulo, o gabinete de
identificação antropométrica, sendo a fotografia elemento auxiliar da
identificação.
Foi promulgada a Lei Nº. 947 em 29/12/1902, criando a identificação
dactiloscópica no Rio de Janeiro, capital do Brasil.
Ano 1903: Em 05/02/1903, foi regulamentada a lei 947, pelo decreto Nº. 4764,
instituindo o sistema dactiloscópico Vucetich, no Rio de Janeiro. Nesse
mesmo ano Bertillon anexou a dactiloscopia ao sistema antropométrico de sua
criação.
Ano 1904: Em 29 de Julho deste ano é expedida a primeira carteira de identidade,
então denominada "Ficha Passaporte" ou "Cartão de Identidade", ainda usando
assinalamentos Antropométricos junto com a Dactiloscopia.
Ano 1907: Pelo decreto Nº. 1533-A de 30/11/1907, foi adotado no Estado de São
Paulo, o sistema Dactiloscópico Vucetich, devido ao interesse do Dr. Evaristo
da Veiga, sendo presidente do Estado de São Paulo o Dr. Jorge Tibiriçá e o
Secretário da Justiça e Segurança Pública o Dr. Washington Luiz Pereira de
Souza.
Ano 1935: Sob a direção do Dr. Ricardo Gumbleton Daunt, no Serviço de
Identificação de São Paulo, é criado o Arquivo Dactiloscópico Monodactilar e
o Laboratório de Locais do Crime.
Ano 1941: O Instituto de Identificação da Polícia do Distrito Federal – Rio de
Janeiro, passou a denominar-se Instituto Felix Pacheco, pelo Decreto–Lei
Nº3793 de 04/12/1941. Pelo Decreto-Lei Nº. 3689 de 03/10/1941 é
promulgado o Código de Processo Penal, que estabelece em seu art. 6º, inciso
VIII, a identificação dactiloscópica nos indiciados em Inquérito Policial.
Ano 1963: Em 21 de Setembro é inaugurado, em Brasília-D.F., o Instituto
Nacional de Identificação, com o objetivo fundamental de centralizar a
identificação criminal no país.
18
Ano 1975: Faleceu em São Paulo, o Professor Carlos Kehdy, autor de diversos
livros sobre a ciência da Dactiloscopia e professor da Academia de Polícia
Civil do Estado de São Paulo.
Ano 1998: O Instituto de Identificação do Estado de São Paulo, possui um acervo
de aproximadamente 40.000.000 prontuários e expede diariamente, em média
15.000 cédulas de identidade e 300 atestados de antecedentes criminais.
2.2 VERIFICAÇÃO VERSUS IDENTIFICAÇÃO
As técnicas de reconhecimento por meio da biometria podem ser adotadas de duas
formas:
• No primeiro caso, o usuário se apresenta como sendo uma determinada pessoa
e o sistema confere a veracidade da informação. Se for o caso, o usuário terá
acesso ao que é restrito. Sistemas desse tipo são chamados de 1-1 (um-para-
um), pois a medida biométrica que se apresenta é simplesmente checada com
o que foi registrado no banco de dados, durante o cadastro desse usuário.
• No segundo caso, a identificação de uma pessoa ocorre quando se tem o dado
biométrico armazenado e se faz uma busca num banco de dados, comparando
as informações até que se encontre (ou não) um registro idêntico ao que é
procurado, com certa margem de erro inclusa. Sistemas desse tipo são
conhecidos por 1- n (um-para-muitos), pois o dado de uma pessoa é
comparado ao de várias outras.
2.3 FUNCIONAMENTO DA VERIFICAÇÃO BIOMÉTRICA
A autenticação biométrica envolve duas fases:
19
• Primeiro, o usuário precisa se registrar no sistema, permitindo a coleta da
impressão digital, da imagem da íris ou da face, gravação da voz, entre outros
elementos mensuráveis. Características-chave são extraídas e convertidas em
um padrão único, que é armazenado como um dado numérico criptografado.
Na prática, o sistema não grava a foto do rosto ou da impressão digital, mas o
valor que representa a identidade biométrica do usuário.
• Numa segunda fase, para que um usuário tenha acesso ao sistema, é preciso
que ele apresente sua característica biométrica, que será comparada ao padrão
que foi registrado no banco de dados. A coincidência entre o padrão gravado e
o coletado em tempo real raramente será perfeita. O sistema pode ser
configurado para ser mais ou menos tolerante, para minimizar o número de
rejeições indevidas e impedir que um falso usuário obtenha acesso.
2.4 BIOMETRIA: O CORPO DIGITAL
A aplicação da biometria na segurança é promissora, podendo diminuir o custo de
administração. Diferentemente de expor os princípios matemáticos relacionados com PKI
(Public Key Infrastructure ou infra-estrutura de chaves públicas) que é um ambiente para
prover aos negócios eletrônicos condições de viabilidade a fim de que tenham os mesmos
resultados daqueles conferidos fora da rede. O assunto biometria e suas imagens vivas têm
atraído a atenção de muitos. Um conjunto extraordinário de sistemas biométricos, baseados
em características únicas oferecidas por diferentes partes do corpo humano, vem sendo
desenvolvido [REV03].
A convergência recente de diversos fatores tem tornado mais atrativo o uso da
biometria em sistemas de segurança. O custo da tecnologia vem caindo. Por exemplo, o
hardware e software para tratar reconhecimento da íris que hoje custa $ 10.000 dólares
custava $ 50.000 dólares há dois anos, e $ 300.000 dólares há cinco. A aplicação da biometria
na segurança de acesso às redes e estações é promissora, podendo diminuir o custo de
20
administração de segurança e senhas que, de acordo com o Gartner Group, é cerca de $ 340
dólares por usuário, por ano [EPT03].
A explosão do uso da internet, exigindo mecanismos fortes de identificação,
também tem contribuído para o avanço da biometria, assim como os casos sucessivos de
aprovação de legislação reconhecendo a legalidade das assinaturas eletrônicas. Isso provoca
definições sobre as tecnologias apropriadas de assinatura eletrônica para cada situação.
Por outro lado, existem ainda alguns problemas. De acordo com o US Biometric
Test Center, os dispositivos de biometria falharam entre 1% e 3% da população. Os leitores de
íris deram resultados falsos em 10% dos casos de pessoas com lentes de contato coloridas,
bem como falharam nos casos de pessoas com dificuldades em manter a íris fixa ou os olhos
abertos diante da alta luminosidade. O reconhecimento de voz pode depender sempre do uso
do mesmo telefone e o de face, da mesma posição da leitura original e das condições de
iluminação [IDG03].
Pelo aspecto cultural, a aceitação dos usuários é menor para sistemas biométricos
intrusivos como a leitura da retina, em que se requer a colocação dos olhos a alguns
milímetros de distância do emissor de infravermelho, o qual mapeará o padrão das veias mais
internas dos olhos. O reconhecimento da face tem mais aceitação, pois utiliza dispositivo de
leitura à distância, que foca em elementos estáveis, como a geometria dos olhos e nariz. As
tecnologias menos intrusivas são as de maior aceitação, mas tendem a ser menos confiáveis e
gerar níveis altos de resultados falsos. A impressão digital é confiável, porém, tem conotação
criminal nos Estados Unidos, Europa e América do Sul. As cinco técnicas biométricas mais
utilizadas são: Impressão Digital (39% do mercado), Reconhecimento das Mãos (25%), Voz
(12%), Íris (11%) e Face (7%), segundo a Biometric Industry Association [EPT03].
A imensa quantidade de nomes de usuários, senhas, IDs (código de identificação
para cada nome de usuário), tokens (responsável pela geração de senhas para cada nome de
usuário) e números de contas atribuídos a um indivíduo, para que desempenhe as atividades
na sociedade moderna, está sufocando usuários e organizações. Os usuários pedem a
liberdade dessas amarras e as organizações o fim de terem que administrar sistemas de
segurança diante dessa complexa realidade. A biometria oferece a possibilidade de
21
salvaguardar ativos de informação por meio de um identificador teoricamente irrefutável e
sempre presente.
2.5 TIPOS DE SISTEMAS BIOMÉTRICOS
Existem várias formas de sistemas biométricos. Para implantá-los são necessários
equipamentos especiais e software que trate os dados capturados. De forma generalizada,
todos funcionam sobre os mesmos princípios, mas, para cada caso, o hardware e o software
devem ser otimizados para o elemento biométrico adotado.
A seguir, são listados os tipos possíveis de sistemas. Alguns já existem
comercialmente e estão em funcionamento em algumas empresas; outros são bem mais
específicos e implementados em casos particulares. Ainda há tipos de sistemas biométricos
que estão em estudo ou que ainda são inviáveis comercialmente; esses poderão fazer parte da
realidade no futuro.
2.5.1 RECONHECIMENTO DA ÍRIS
A íris humana (parte colorida dos olhos) é formada nos seis primeiros meses de
idade, tornando-se imutável, não sofre alterações devido a sujeiras e cicatrizes nem mesmo
com cirurgias plásticas. O padrão da íris guarda uma imagem muito complexa, e é única em
cada pessoa e até mesmo de seu par. A identificação da íris é um dos processos mais seguros e
confiáveis disponíveis hoje.
A margem de erros é extremamente pequena, de apenas 0,0008% . Como
comparação, o popular exame de DNA que não passa de 0,05% [EPT03].
A implementação é feita da seguinte forma: o usuário é cadastrado no sistema por
meio de um leitor óptico que registra os contornos e padrões geométricos existentes; as cores
não são significativas para a identificação da íris. Feito o cadastro o usuário aproxima-se o
22
olho do leitor, ele é focado automaticamente, em no máximo dois segundos o reconhecimento
é efetuado. Um modelo da íris ocupa aproximadamente 512 bytes nos sistemas.
O reconhecimento da íris é amplamente utilizado em aeroportos na Holanda e
Canadá, bancos na Suíça, e em empresas com áreas de segurança como a NASA (National
Aeronautics and Space Administration) [EPT03, IDG03].
Por se tratar de um sistema que possui uma maior confiabilidade e de crescer em
sentido a autenticação de pessoas a níveis de segurança, foi o escolhido para ser pesquisado
neste trabalho.
2.5.2 IMPRESSÕES DIGITAIS
O reconhecimento de impressões digitais é um dos métodos mais simples de ser
implantado, além de implicar em custos relativamente menores que as demais técnicas. Por
esses motivos, os produtos que se baseiam na tomada de impressões digitais foram mais
difundidos até o momento [REV03].
O método requer um scanner capaz de capturar, com um bom grau de precisão, os
traços que definem a impressão dos dedos, além de um programa que trate a imagem
capturada e faça o reconhecimento da digital.
Os scanners para captura da impressão digital possuem tamanho relativamente
reduzido. Alguns modelos são independentes e podem ser anexados ao teclado, monitor ou
gabinete do computador. Outros já possuem o mecanismo acoplado a dispositivos como
mouse, teclado e terminais.
2.5.3 RECONHECIMENTO DA FACE
Para reconhecer o rosto de uma pessoa, os programas mapeiam basicamente a
geometria e as proporções da face. Ao contrário do que muitos imaginam, os programas de
reconhecimento podem identificar corretamente uma pessoa mesmo que ela tenha mudado o
23
corte ou a cor do cabelo ou acrescente, sem exageros, acessórios como chapéu, óculos, barba
ou bigode.
O que o software de reconhecimento faz na verdade, é registrar vários pontos
delimitadores na face capazes de definir proporções, distâncias, tamanhos e formas de cada
elemento do rosto, como olhos, nariz, queixo, maçãs do rosto, orelhas, etc. Esses pontos
identificam unicamente um usuário, e dependendo do grau de precisão que o usuário exigir do
sistema podem reconhecer sósias como pessoas distintas. É possível ainda configurar o
sistema para que ignore vários pontos do mapeamento quando estiverem encobertos, como em
casos de barba muito grande, orelhas ou sobrancelhas completamente escondidas, entre outros
exemplos. Assim como são capazes de reconhecer alguém, mesmo que ele esteja mudado
sutilmente, com novos óculos, brincos, bigode, maquiagem ou pelo envelhecimento, o
programa de reconhecimento pode prender-se a detalhes decisivos que identificam o rosto da
pessoa.
Para fazer o reconhecimento, são necessários uma pequena câmera para a captura
da imagem do rosto e o programa que processe a imagem.
2.5.4 RECONHECIMENTO PELA RETINA
Esse método é semelhante ao da íris. A retina é a parte do fundo do olho, uma
camada interna composta por vasos sangüíneos que desenham um padrão único e pessoal.
A imagem da retina forma um padrão que é o mais preciso dentre todos os
métodos biométricos. A captura dessa imagem, entretanto, é difícil e incômoda, pois é
necessário que o usuário olhe fixamente para um ponto luminoso de infravermelho até que a
câmera focalize os padrões e os capture.
2.5.5 RECONHECIMENTO DA VOZ
Para esse método é necessário um microfone ou telefone que capture a voz do
usuário. O programa de identificação faz uma análise dos padrões harmônicos e não
24
simplesmente uma comparação entre reproduções de uma mesma fala. Essa característica é
importante para evitar tentativas de fraude, com o uso de gravadores, por exemplo. Os
sistemas mais recentes solicitam que o usuário fale, em voz alta, uma seqüência aleatória de
números ou uma frase qualquer, inviabilizando também a tentativa de uso de voz gravada em
fita cassete.
A maior dificuldade para o uso dessa tecnologia é que ruídos do ambiente e o
estado emocional momentâneo da pessoa comprometem a precisão do reconhecimento. É
relativamente comum o usuário legítimo ser recusado pelo sistema caso ele esteja rouco,
fatigado ou exaltado demais. Para que o sistema seja menos sensível a essas alterações, é
interessante que no cadastro do usuário seja feita uma coleta de várias frases lidas em voz alta,
que seriam capazes de identificar um modelo acústico pessoal e de forma única. Embora
implique maior precisão, se essa coleta for muito extensa pode entediar ou irritar o usuário,
além de tornar o processo posterior de autenticação mais demorado.
2.5.6 GEOMETRIA DA MÃO, PALMAS E DEDOS
Trata-se de três sistemas distintos que têm funcionamento análogo. Todos
utilizam um scanner especialmente desenhado para capturar a imagem desses três elementos
biométricos.
Para a leitura da geometria da mão, o scanner possui guias que se assemelham a
pinos que se encaixam entre os dedos. Essas guias facilitam o reconhecimento do desenho da
mão. O sistema calcula e registra as proporções entre os dedos e articulações, que são
decisivas para identificar a pessoa.
O reconhecimento dos dedos se restringe à identificação do formato de um ou
dois dedos, a proporção entre as articulações e o cálculo das áreas. O scanner captura uma
imagem tridimensional dos dedos que é convertida num modelo geométrico.
No caso da palma da mão, o sistema é focado no desenho das linhas, saliências e
outros detalhes, o que o faz muito parecido com os sistemas de reconhecimento de impressões
digitais [VIG03].
25
2.5.7 RECONHECIMENTO DA ASSINATURA ESCRITA
A assinatura pessoal é amplamente aceita como uma forma de autorização do
usuário. Cheques, comprovantes de compra com cartões de crédito ou débito e outros
documentos são validados com o simples ato de assiná-los.
Os sistemas de reconhecimento de assinatura também chamados de sistemas de
verificação de assinatura dinâmica, ao contrário do que se possa imaginar não analisam
simplesmente as formas das letras, que poderiam ser facilmente copiadas e falsificadas em
certos casos. Esses sistemas são capazes de capturar características como a pressão da caneta,
a velocidade, identificação dos movimentos da caneta no ar e os pontos em que a caneta é
levantada do papel. Mais do que o desenho das letras, são essas características que legitimam
a assinatura de uma pessoa.
Para viabilizar esse tipo de implementação biométrica, é necessária uma pequena
prancheta digitalizadora ou uma caneta especial (ou as duas ao mesmo tempo, para aumentar
a eficiência e precisão). Esses dispositivos capturam o comportamento da escrita e o
transcreve em um modelo matemático que identifica a assinatura e o usuário respectivo
[REV03].
Uma das dificuldades desse tipo de técnica é que a assinatura de uma pessoa varia
consideravelmente, dependendo do momento das circunstâncias e conforme o passar dos
anos. Uma alternativa para aumentar a precisão do reconhecimento é fazer com que o usuário
se registre no sistema com várias amostras de assinaturas ou repita a escrita a cada assinatura
recusada durante um processo de verificação. Embora necessárias, essas repetidas tentativas
podem ser constrangedoras e prolongam o tempo de autenticação do usuário. Para piorar, a
cada recusa o usuário tende a mudar o comportamento da escrita (para caprichar mais na letra
ou, por nervosismo, calcar mais a caneta), o que pode comprometer o reconhecimento pelo
computador [REV03].
26
2.5.8 RECONHECIMENTO DA DINÂMICA DA DIGITAÇÃO
Outra forma relativamente barata de ser implementada que autentica o acesso a
um computador ou sistema é uma análise baseada na forma como a pessoa digita seu nome e
senha. O ritmo da digitação é identificado pela velocidade, espaço de tempo entre o
acionamento de cada tecla, intensidade da pressão, tempo em que se mantém pressionada cada
tecla e tempo de liberação delas, é difícil de ser imitado por um usuário ilegítimo e mesmo
que se tenha conhecimento da senha da pessoa pela qual se tenta passar, dificilmente terá
permissão de acesso.
Ao contrário das demais alternativas, o reconhecimento da digitação não requer
hardware adicional. Basta um teclado que pode ser o mesmo já utilizado na empresa, além do
software que analisa e identifica o ritmo da digitação. Esse tipo de técnica pode ser adotado
em redes corporativas de forma bastante natural, pois é transparente para o usuário.
2.6 CONSIDERAÇÕES FINAIS
A Biometria refere-se aos métodos automatizados para a identificação de pessoas
com base em suas características físicas ou comportamentais, dentre os métodos mais
utilizados estão o Reconhecimento de Íris, Impressões Digitais, Reconhecimento de Voz,
Face, Analise de Assinatura e Palma da Mão.
Considerado como um método futurista, a biometria era almejada junto com
outros equipamentos como carros, energia solar, pílulas de alimentação e outros equipamentos
futuristas. Foi usada centenas de anos atrás para a identificação de indivíduos com
características físicas e parâmetros como cicatrizes, cor dos olhos.
As técnicas de reconhecimento são adotadas através de dois métodos, a
verificação onde o usuário apresenta algum tipo de dado pessoal e é conferida a veracidade da
informação. A identificação onde o usuário já possui o dado biométrico armazenado e se faz a
busca do mesmo.
27
O funcionamento da verificação biométrica ocorre através duas fases, na primeira
o usuário é registrado no sistema, onde são coletadas suas características individuais, e
armazenadas como um dado numérico criptografado. Na segunda o usuário apresenta suas
características biométricas, e é comparado com os dados armazenados.
A Biometria é aplicada principalmente na área de segurança, vários dispositivos
eletrônicos para medir características físicas são fabricados, no qual o corpo é a maior senha
para tais dispositivos. A internet é a maior causadora do crescimento dos dispositivos
biométricos, mas existem fatores para a rejeição desses métodos, como o da retina em que o
infravermelho causa uma pequena irritação nos olhos.
A seguir será visto o conceito de Wavelet e a algumas técnicas como a Distância
de Hamming, Coordenadas polares e Wavelet 2D de Gabor que serão utilizadas
posteriormente para a localização, geração e comparação das íris .
28
3 WAVELETS
Wavelets são ondas pequenas (ondeletes, em francês) com determinadas
propriedades que as tornam adequadas a servirem de base para decomposição de outras
funções, assim como senos e co-senos servem de base para decomposições de Fourier
[FAR03].
A Teoria Wavelet foi estruturada na década de 80, sendo um assunto novo com
muito campo ainda pela frente. Essa frase não é nova, mas continua sendo verdade, haja vista
que o desenvolvimento das ciências computacionais aponta para uma tendência em que o
processamento de sinais (imagens, sons, padrões biológicos, sinais volumétricos, etc.) torna-
se cada vez mais presente, indispensável. Técnicas indicadas para processar sinais complexos
de uma forma adaptativa, "customizadas", para aplicações específicas e com alto poder de
processamento, velocidade e eficiência. São minas de ouro para se embutir tecnologia e
inteligência artificial, esboçando um futuro onde "as máquinas" se enriquecerão em termos
humanos, e poderão demonstrar comportamentos mais próximos do humano, com a vantagem
de se eliminar fatores humanos indesejáveis [FAR03].
29
As origens da teoria Wavelet remontam aos anos 30, quando ainda sem uma
estrutura definida podia ser discretamente identificada em trabalhos de Análise Funcional e
outros ramos matemáticos [FAR03].
Sua emancipação ocorre nos anos 80, fruto natural de seu uso e aplicação em
prospecção mineral, análise e tratamento de imagens, etc. A Transformada Wavelet é uma
ferramenta de processamento de sinais que tem um trunfo sobre as técnicas clássicas de
Fourier. Suas funções bases (wavelets) não pertencem a um espaço finito de soluções, isto é,
existem teoricamente infinitas possibilidades de se projetar wavelets com propriedades
especiais, voltadas para aplicações específicas. Pode-se projetar wavelets otimizadas para
realizar análises especiais, onde as wavelets tenham características semelhantes aos sinais sob
análise, que é uma espécie de Homeopatia Matemática a cura pelos semelhantes, a análise
pelo "self". Assim, wavelets que são utilizadas para compressão de dados, podem revelar-se
péssimas para aplicações de análises de sinais biológicos, ou síntese de música. Da mesma
forma, wavelets para síntese de sons podem não ser úteis em aplicações para compressão de
dados [FAR03].
Wavelets podem ter caráter fractal e padrões que se repetem em escalas diferentes.
A análise de sinais com wavelets permite a extração de dados coerentes tanto no domínio da
freqüência quanto no do tempo (ou espaço para imagens). Em música, padrões oscilatórios e
transientes se repetem no tempo e possuem composição freqüência determinada. A análise
com wavelets pode ser vista como uma decomposição atômica, onde busca-se os
componentes básicos dos sinais, os átomos. Uma vez descritos os "átomos" do sinal, mais
fácil fica para se combinar e produzir novas moléculas. Por exemplo, numa partitura musical
tem-se um arranjo de átomos (as notas) que possuem duração e freqüência determinadas.
A música, então, resume-se na superposição e na combinação temporal de átomos
musicais. Esta é uma forma de se poder abstrair o potencial de aplicações da teoria wavelet
em área como síntese de sinais musicais.
Na verdade existem inúmeras formas de se poder aplicar tal conhecimento. Por
exemplo, pode-se analisar um trecho de uma sinfonia contendo violinos, celos, tubas e
trompetes. O sinal constitui-se numa mistura que, no entanto pode ser desdobrada
30
mentalmente sendo reconhecidos os instrumentos. Isto porque de certa forma filtros auditivos
funcionam de forma a separar as freqüências “por canais” distintos, e monitorar a intensidade,
duração, etc. em cada um desses canais. Wavelets permitem fazer a análise em tempo-
freqüência. Assim, é teoricamente possível construir um sistema para separar os instrumentos
e codificar seus padrões em coeficientes wavelets diferentes (as técnicas de Fourier permitem
separar os conteúdos espectrais, mas mostram-se pobres em descrever ao mesmo tempo as
condições temporais, padrões não estacionários). Esta é outra forma de se enxergar wavelets
em ação sobre sinais musicais.
Para sinais de duas ou mais dimensões (como imagens, tensores, etc.) as
aplicações estão no limite da imaginação, pode-se montar wavelets para realizar simples
compressões de imagens, como wavelets para se identificar padrões, realizar filtragens
específicas, sintetizar novos padrões, etc. [FAR03].
3.1 COORDENADAS POLARES
No sistema polar, a localização de um ponto P, do plano, fica perfeitamente
determinada se conhecermos a sua distância r a um ponto fixo O , chamado pólo ou origem
do sistema, e a medida do ângulo θ que o segmento OP faz com uma reta fixa, chamada eixo
polar. Neste caso, as coordenadas do ponto P serão dadas pelo par ordenado de números reais
(r,θ), conforme mostra a Figura 1.
Figura 1: Descrição de um sistema polar [ALA04].
31
No sistema de coordenadas cartesianas, as distâncias são medidas a partir de retas
paralelas aos eixos coordenados. Para isso, é usada uma malha quadriculada ou reticulada,
como mostra a Figura 2.
Figura 2: Sistema de coordenadas cartesianas [ALA04].
No sistema de coordenadas polares, a distância r é medida a partir de
circunferências concêntricas, centradas no pólo (todos os pontos sobre cada uma dessas
circunferências estão a mesma distância do pólo) e o ângulo θ, a partir de raios com origem
no pólo (todos os pontos sobre cada um desses raios fazem o mesmo ângulo com o eixo
polar), mostrado na Figura 3.
Figura 3: Sistema de coordenadas polares [ALA04].
A aplicação de coordenadas polares no traçado de gráficos que mostram a
distribuição da intensidade luminosa emitida por uma lâmpada é a aplicação mais simples,
32
pois a mesma não é uniforme em todas as direções. Os círculos concêntricos são as linhas
onde a intensidade luminosa é a mesma, enquanto as retas indicam o ângulo e a direção na
qual foi medida esta intensidade.
Marcam-se neste sistema, os pontos correspondentes à medição da intensidade
luminosa nas diversas direções e unem-se estes pontos, por uma curva suave. A curva
resultante é denominada "curva de distribuição da intensidade luminosa", como visto na
Figura 4.
Figura 4: Aplicação de coordenadas polares no traçado de gráficos [ALA04].
3.2 DISTÂNCIA DE HAMMING
Método prático de se medir erro para padrões binários, basicamente, ele se
caracteriza pela seguinte definição: comparando-se dois vetores binários distintos de n bits, a
cada bit diferente entre os dois vetores, adiciona-se uma unidade na Distância de Hamming;
ou seja, essa distância fornece quantos bits são diferentes entre os dois vetores. É importante
evidenciar que um dos vetores pode ser uma versão ruidosa do outro, e aí esta medida pode
ser utilizada para a medição de ruído. Para melhor ilustração, a seguir tem-se os vetores 1 e 2
de 5 bits, sendo que o vetor 2 é uma versão ruidosa de 1, como visto na Figura 5.
33
Figura 5: Em negrito bits diferentes entre 2 vetores.
Dessa forma, pode-se notar que o vetor 2 possui uma Distância de Hamming 2 em
relação ao vetor 1, o que pode ser uma medida de ruído (erro).
3.3 WAVELET 2D DE GABOR
O uso de resoluções de wavelets de duas dimensões em análise de imagem e visão
computacional atraiu muito interesse em recentes anos. A família das wavelets 2D que serão
discutidas aqui está dentro de dilatação, translação, e rotação, e eles também formam uma
base da imagem completa, ou estruturada. Também equivalem em forma, como a
transformada de Fourier, elas compõem um conjunto que também está fechado sob a
convolução (a convolução de qualquer dois membros do conjunto é também um conjunto).
Escolhendo-se Ψ(x,y) como qualquer wavelet 2D genérica, o qual seja chamado
um wavelet mãe, então pode-se gerar dessa função uma completa semelhança familiar do
parâmetro da wavelet filha Ψmpqθ(x,y) pela relação geradora, como visto na Equação 1
[GAB93].
Equação 1: Wavelet filha [GAB98].
Onde as variáveis (x', y') incorporem a dilatação da wavelet no tamanho de 2m, a
translação na posição (p,q), e a rotação por ângulo θ, como na Equação 2 [GAB93].
34
Equação 2: Definição de x' e y' [GAB98].
Uma escolha particular de Ψ(x,y) possui vários interesses e propriedades úteis da
wavelet de Gabor para valores complexos, assim nomeada pelo fato de ser uma generalização
das funções elementares 1D discutidas por Gabor. A forma da wavelet 2D é definida na
Equação 3 [GAB93].
Equação 3: Forma da wavelet 2D de Gabor [GAB98].
Onde (x0,y0) especificam a posição da wavelet, (α,β) especificam efeitos da
largura e comprimento, e (u0,v0) especificam a vetor-onda que pode ser interpretado em
coordenadas polares como freqüência espacial w0 = √u²0+v²0 e orientação (ou direção) θ0 =
arctan(v0/u0) [GAB93].
A wavelet 2D de Fourier e a 2D de Gabor tem a mesma forma funcional com
parâmetros trocados ou invertidos, como mostra a Equação 4.
Equação 4: Forma da wavelet 2D de Fourier [GAB98].
É notável que como conseqüências da semelhança, troca, e teoremas modulares da
análise de Fourier, junto com a rotação isomórfica da transformada 2D de Fourier todos os
efeitos da relação geradora aplicado a wavelet mãe da 2D de Gabor Ψ(x,y) para produzir uma
nova wavelet filha Ψmpqθ(x,y) tenha efeitos correspondentes ou recíprocos da 2D de Fourier.
35
3.4CONSIDERAÇÕES FINAIS
Wavelets tem propriedades que as tornam adequadas a servirem de base para
decomposição de outras funções, é uma ferramenta de processamento de sinais que tem um
trunfo sobre as técnicas de processamento de sinais de Fourier. A analise de sinais com
wavelets permite a extração de dados no domínio do espaço para imagens.
As Wavelets 2D de Gabor estão dentro da dilatação, translação e rotação, formam
uma base da imagem completa ou estruturada. A wavelet 2D de Fourier e a 2D de Gabor
possuem a mesma forma funcional com parâmetros invertidos. Se uma wavelet 2D genérica
for escolhida e chamada de wavelet mãe, pode-se gerar uma wavelet filha totalmente
semelhante.
36
4 O PROCESSO DE RECONHECIMENTO DA ÍRIS
A tarefa de reconhecer uma íris de uma pessoa qualquer e identificá-la pode ser
decomposta em alguns subproblemas. As subseções seguintes abordam esses problemas,
seguindo a metodologia proposta por Daugman [DAU03], que consiste basicamente nos
seguintes passos:
• Localização da Íris em uma imagem;
• Correção matemática para robustez do modelo;
• Codificação da Íris;
• Comparação dos códigos de Íris.
37
4.1 LOCALIZAÇÃO DA ÍRIS EM UMA IMAGEM
Para capturar os detalhes dos padrões de uma íris, um sistema de imageamento
deve fornecer pelo menos 70 pixels de resolução no raio da íris [DAU03]. As baterias de
testes executados atualmente indicam que resoluções de 100 a 140 pixels têm sido alcançadas
freqüentemente.
Dada a imagem de um olho que atenda à restrição de padrões mínimos de
qualidade, como o citado acima, é necessário executar um procedimento de localização da íris
na imagem, com localização precisa de ambas as extremidades interna e externa da íris e o
centro da mesma. Apesar de os resultados de busca pela íris restringirem bastante ao problema
de localizar a pupila e, consequentemente, a borda interior da íris, estima-se que a íris e pupila
sejam concêntricas. Desse modo, todos os três parâmetros que definem a pupila devem ser
estimados separadamente dos parâmetros da íris. Existe um método íntegro-diferencial
bastante efetivo nesta tarefa, dado na Equação 5 [DAU03].
Equação 5: Método íntegro-diferencial [DAU03].
Onde I(x, y) é uma imagem contendo um olho. O operador procura sobre o
domínio (x, y) da imagem pelo valor máximo da derivada parcial com relação ao raio r, da
integral normalizada do contorno de I(x, y) ao longo de um arco circular ∂s de raio r e
coordenadas do centro (x0, y0). O símbolo ∗ denota a convolução e Gσ (r) é uma função de
suavização de ruído, como uma gaussiana de escala σ. O operador completo funciona, de fato,
como um detector circular de bordas, "borrado” pela escala σ, que procura iterativamente por
um máximo da derivada da integral de contorno com raios crescentes em sucessivas escalas
cada vez mais finas de análise, sobre os três parâmetros espaciais de centro coordenado e o
raio (x0, y0, r), definindo um caminho através do contorno de integração [DAU03].
38
O operador da Equação 5 serve tanto para encontrar os limites interior e exterior
da íris. Uma vez que a busca desses limites tenha atingido a precisão de um único pixel, um
procedimento similar é adotado para localização das pálpebras superior e inferior. O resultado
dessas operações de localização é o isolamento da íris de outras regiões da imagem, como na
Figura 6.
Figura 6: Imagem de um olho em que a íris foi isolada do restante da imagem [DAU03].
Outro detalhe a ser levado em consideração é o fato do centro da pupila nem
sempre coincidir com o centro da íris. Na maioria dos casos, o centro da pupila está abaixo do
centro da íris, mais anasalado, podendo divergir até um milímetro de distância (o que é
considerável, uma vez que o diâmetro de uma íris é aproximadamente de 11 milímetros).
Sendo assim, os parâmetros da pupila e da íris a serem coletados nesta etapa (coordenadas do
centro e raio) devem ser calculados separadamente.
39
4.2 CORREÇÕES MATEMÁTICAS PARA ROBUSTEZ DO MODELO
Para um modelo de reconhecimento de padrões ser robusto, ele deve ser invariante
a mudanças de tamanho, posição e orientação dos padrões. No caso do reconhecimento de
íris, isto significa que a codificação deve ser invariante:
• Ao tamanho da íris em uma imagem;
• Ao tamanho da pupila;
• À posição da íris na imagem;
• À orientação da íris na imagem.
O problema da dilatação da pupila aparentemente é o maior desafio a ser superado
nesta fase, pois provoca uma deformação no padrão de textura da íris. Porém, essa
deformação causada pela dilatação pupilar é uniforme sobre toda a superfície da íris, sendo
revertida matematicamente [DAU03]. Uma boa analogia para o padrão de textura da íris é a
de uma folha borracha com deformação homogênea.
Tal robustez aos fatores citados é conseguida com a definição de coordenadas
polares adimensionais para as imagens de íris. As coordenadas polares adimensionais são
obtidas mapeando-se todos os valores de coordenadas cartesianas I(x,y) de uma imagem de
íris I para valores em coordenadas polares I(r,θ), com r Є [0,1] e θ Є [0,2π].
A adimensionalidade da coordenada polar θ já é dada, uma vez que ângulos são
medidas adimensionais. Para conseguir a adimensionalidade de r, são utilizados os parâmetros
obtidos na etapa anterior (raio e centro da íris e da pupila). Então, é feito um mapeamento de
[rpupila, ríris] → [0,1].
40
4.3 CODIFICAÇÃO DA ÍRIS
4.3.1 CONFIGURAÇÃO DOS BITS DA CODIFICAÇÃO
A codificação da íris é feita através da aplicação 2D de Gabor para valores
complexos [DAU03, GAB98]. Matematicamente, o valor desta aplicação é dada pela Equação
6.
Equação 6: Wavelet 2D de Gabor para valores complexos [DAU03].
Onde (p,φ) especificam a posição da wavelet, (α,β) especificam efeitos de largura
e comprimento, (r0,θ0) especificam o raio e ângulo, sgn{Re, Im} especifica para cada ponto I(r,θ)
em coordenadas polares adimensionais da imagem I da íris aplicado na fórmula acima obtém-
se dois bits e h{Re, Im} representam as partes real e imaginária de um bit de valor complexo,
cujos valores (0 ou 1) dependem do sinal da integral bidimensional aplicada, abaixo uma parte
do algoritmo utilizado, o algoritmo completo encontra-se no Anexo B.
x = ones(rows,1) * (-cols/2 : (cols/2 - 1))/(cols/2 );y = (-rows/2 : (rows/2 - 1))' * ones(1,cols)/(rows/ 2);radius = sqrt(x.^2 + y.^2);
radius(round(rows/2+1),round(cols/2+1)) = 1;
fo = 1.0/wavelength; rfo = fo/0.5; logGabor = exp((-(log(radius/rfo)).^2) / (2 * log(s igmaOnf)^2));
logGabor(round(rows/2+1),round(cols/2+1)) = 0;
Onde (x,y) especificam a posição da wavelet, radius especifica o raio para a
normalização da matriz, fo especifica comprimento da escala do filtro, rfo especifica o raio
normalizado para o centro da freqüência correspondente ao fo, logGabor especifica o valor no
centro do filtro.
41
A cada aplicação de I(r,θ), os valores das partes real e imaginária do bit complexo
dado são obtidos de acordo com o quadrante de fase de demodulação da íris, representado
pela Figura 7. A codificação da íris é feita aplicando-se 1024 valores diferentes de I(r,θ),
obtendo-se então 2048 bits, ou 256 bytes, como resultado de um código de íris [DAU03].
Figura 7: Codificação da demodulação por quadrante de fase [DAU03].
4.3.2 MÁSCARA DA ÍRIS
Como quase sempre uma íris não está 100% visível para receber a aplicação da
codificação em toda a sua superfície (por causa de reflexos e cortes efetuados pelas
pálpebras), é necessário uma máscara para o código de íris gerado que exclua as regiões que
não são de interesse para a codificação da íris.
Para cada ponto I(r 0,θ) até I(r f,θ) em coordenadas polares adimensionais nos quais
os pontos não serão aproveitados, serão gerados valores (0 ou 1) que serão usados na
comparação dos códigos da íris. Abaixo uma parte do algoritmo utilizado (o algoritmo
completo encontra-se no Anexo B).
[x, y] = coordCartesianasAdimensionais(cx, cy, r, t , r0_ext, rf_ext);exibicao(x, y) = 255;
42
Onde (x,y) são as coordenadas que serão demarcadas, cx e cy especificam o centro
da imagem, r e t especificam o número de raios e número de ângulos respectivamente, r0_ext
e rf_ext especificam o raio inicial e final respectivamente e exibicao(x,y) especificam as
coordenadas sendo demarcadas.
4.4 COMPARAÇÃO DOS CÓDIGOS DA ÍRIS
A chave para o reconhecimento de íris é a falha em um teste de independência
estatística, esse teste envolve 266 graus de liberdade, o que o faz virtualmente garantido de
não falhar quando os códigos de fase de duas íris diferentes são comparadas, e falhar
unicamente quando os códigos de fase de uma íris são comparados somente com sua outra
versão [DAU03].
O teste aplicado é implementado com a operação booleana OU exclusivo bit a bit
dos 2048 bits de cada código de íris, seguido da operação booleana E com ambas as máscaras
da íris. Faz-se a norma desta operação, e assim se conta o número de bits divergentes entre os
códigos de íris. Divide-se então o número obtido pela operação booleana E entre as duas
máscaras dos códigos, também contando o número de ocorrências. A fórmula pode ser
visualizada na Equação 7.
Equação 7: Distância de Hamming [DAU03].
A Distância de Hamming computada mede a dissimilaridade entre as íris. Quando
ocorre um casamento perfeito entre as íris, o valor computado é zero. Para saber a
probabilidade das íris comparadas serem diferentes, utiliza-se o valor obtido na comparação
para computação à função de distribuição de probabilidade acumulada (FDPA) sobre o
gráfico de Figura 8, gráfico este obtido experimentalmente através de testes exaustivos dessa
técnica [DAU03].
43
Figura 8: Distribuição da Distância de Hamming obtida através de 2,3 milhões de comparações [DAU03].
A Figura 8 exibe uma curva de distribuição de probabilidade com média m =
0,499 e desvio padrão σ = 0,032. Observa-se então que a esperança de uma comparação de
íris não relacionadas é 0,5, com um desvio padrão muito pequeno, isto se deve pelo fato de ser
um cálculo estatístico, uma vez que dado um bit é retornado pela codificação, a probabilidade
dele ser 0 é a mesma de ser 1, e a comparação entre dois bits não relacionados tem
probabilidade média de 50% de chance de ser divergente [DAU03].
Em conseqüência do item citado acima, e interpretado a curva do gráfico,
percebe-se que a FDPA para valores de comparação de códigos de íris até 0,4 é muito baixa,
entre 0,4 e 0,5 cresce rapidamente e valores próximos, e acima de 0,5 já são grandes o
suficiente para rejeitar a hipótese de similaridade entre as íris comparadas [DAU03].
Como em todos os sistemas biométricos, existem duas taxas de erros que
precisam ser incluídas na consideração, a Taxa Falsa de Rejeição (False Reject Rate ou FRR)
e a Taxa de Aceitação (False Accept Rate ou FAR) [VIG03].
44
As taxas FAR e FRR podem ser adquiridas por meio de protocolos “uma
tentativa” ou “três tentativas”. No protocolo “uma tentativa”, os usuários têm somente uma
chance de serem aprovados no teste biométrico e, consequentemente, identificado [VIG03].
Os dados são coletados em apenas uma amostra e, então, analisados. A partir da
análise, vem a rejeição ou a aceitação. No protocolo “três tentativas”, o usuário tem até três
chances antes de recusado. Se as medidas consecutivas forem independentes, isto melhora a
FRR sem que a FAR seja prejudicada, como mostra a Figura 9.
Figura 9: Taxa de erro de cruzamento [VIG03].
45
5 EXPERIMENTOS REALIZADOS
5.1 COLETA DAS IMAGENS DE ÍRIS
A primeira parte dos experimentos consistiu em coletar imagens de íris para poder
trabalhar os algoritmos. De acordo com Daugman, era preciso encontrar fotos com 70 pixels
de raio.
A íris foi adquirida de duas formas. Uma foi através da internet e a outra através
de uma câmera digital, como mostra as Figuras 10 e 11, todas as íris encontram-se no Anexo
A.
46
Figura 10: Íris coletada na internet.
Figura 11: Íris adquirida através de uma câmera digital.
5.2 COLETA DOS PARÂMETROS DA ÍRIS E PUPILA
A coleta dos parâmetros da íris e da pupila foi necessária para a geração das
coordenadas adimensionais, e foi feita manualmente. A primeira simplificação foi considerar
a íris e a pupila concêntricas.
Para a realização dessa etapa e da próxima, foi necessário criar pequenos sistemas
para a conversão de coordenadas cartesianas polares, tanto para a origem em (0,0) quanto para
qualquer localização da origem.
47
Visualizando as imagens de íris em um programa editor de imagens, foi anotado o
centro da íris e da pupila em coordenadas cartesianas absolutas. Anotou-se ainda, em
coordenadas cartesianas absolutas, as coordenadas de um ponto da circunferência da íris e
outro da circunferência da pupila. Com esses dados, foi obtido o raio da íris e da pupila da
imagem, que juntamente com as coordenadas do centro são os parâmetros necessários para a
geração das coordenadas polares adimensionais.
5.3 PREPARAÇÃO DAS COORDENADAS ADIMENSIONAIS
Após a obtenção dos dados na etapa anterior, foi criado a adimensionalidade para
o raio da pupila. Este mapeamento segue a fórmula.
Equação 8: Adimensionalidade para o raio da pupila.
Onde radim é o raio adimensional, radim Є [0,1], e r é o raio efetivo a ser utilizado
na pupila. A adimensionalidade do ângulo θ já é dada.
5.4 APLICAÇÃO DA WAVELET DE GABOR 2D COMPLEXA
Após converter as imagens para tons de cinza, aplicou-se o algoritmo da
convolução da wavelet de Gabor em toda a imagem, obtendo uma matriz de números
complexos, um para cada ponto da matriz. Em seguida, são escolhidas amostragens de pontos
diferentes das íris das imagens. As Figuras 12 e 13 ilustram 1024 pontos escolhidos para
amostragem em coordenadas polares adimensionais, utilizando 32 raios e 32 ângulos
diferentes, para as Figuras 10 e 11, respectivamente.
48
Figura 12: Íris da Figura 10 sofrendo a aplicação da wavelet 2D Gabor.
Figura 13: Íris da Figura 11 sofrendo a aplicação da wavelet 2D Gabor.
5.5 GERAÇÃO E COMPARAÇÃO DOS CÓDIGOS DA ÍRIS
Após adquirir o conjunto de pontos de amostragem selecionados na etapa anterior,
foram selecionados os valores complexos correspondentes na matriz de resultante da
convolução da wavelet aplicada. Utilizando um pequeno algoritmo, definiu-se pelo sinal de
cada número complexo os bits a comporem o código da íris, como na visto na Figura 14 e15.
49
Figura 14: Código de 256 bytes da íris da Figura 10.
Figura 15: Código de 256 bytes da Figura 11.
Para a comparação entre códigos de íris, a implementação realizada seguiu o
esquema proposto pela Distância de Hamming na Equação 3. As máscaras íris comparadas
foram consideradas totalmente preenchidas por 1’s, uma vez que foram processadas imagens
sem corte, efetuadas pelas pálpebras, tendo portanto todos os pontos da amostragem válidos.
A Figura 16 e 17, são imagens diferentes mas da mesma íris, todos os processos
descritos acima foram utilizados, a comparação entre os códigos das íris resultou uma
dissimilaridade de 30 bits. O valor obtido na comparação para computação à função de
distribuição de probabilidade acumulada foi de 0,46, o qual está dentro dos padrões exigidos
para que as íris sejam ditas como similares.
Figura 16: Íris já com o código no canto superior direito.
Figura 17: Íris já com o código no canto superior direito.
50
5.6 AMBIENTE DE DESENVOLVIMENTO
Os algoritmos implementados foram feitos utilizando o ambiente de programação
Matlab, para Windows, que é um software para computação numérica e visualização de alta
performance. Seus elementos básicos são matrizes, possui uma família de aplicativos
específicos (toolboxes), que são coleções de funções usadas para resolver determinados
problemas tais como: otimização, manipulação algébrica, redes neurais, processamento de
sinais, simulação de sistemas dinâmicos, entre outros.
Foram utilizadas duas câmeras digitais para coletar as imagens da íris, uma Casio
e uma Sony, com resoluções de 1 MegaPixel e 3.2 MegaPixels respectivamente.
O editor de imagens utilizado para coletar os parâmetros de centro e raio da pupila
e da íris, foi o Macromedia Fireworks MX para Windows.
51
6 CONCLUSÕES
O reconhecimento da íris aparece hoje como a tecnologia de maior confiabilidade
da área biométrica, sendo bastante próspero. Os resultados das pesquisas sobre o assunto são
excelentes, e em breve essa tecnologia estará no cotidiano das pessoas, superando todos os
métodos biométricos de níveis de segurança hoje existentes.
O reconhecimento da íris como foi feito neste trabalho não é o ideal para fins
comerciais, por vários motivos, principalmente pelo tempo que levaria para fazer o trabalho
manualmente, que é de aproximadamente 25 minutos dependendo da qualidade da imagem.
O grande aprendizado acadêmico e cultural foi a maior conquista, nem mesmo
todo o trabalho e as dificuldades encontradas, superaram a satisfação de cumprir as metas da
pesquisa.
52
6.1 TRABALHOS FUTUROS
O reconhecimento da íris feito manualmente leva tempo, para suprir esta etapa,
fazer a coleta das coordenadas da íris e da pupila através de técnicas automatizadas irá suprir
consideravelmente uma parcela de tempo.
A forma de adquirir a imagem através de uma câmera digital e desenvolver
algoritmos de Inteligência Artificial como Backpropagation, que capturam a imagem e através
de suas técnicas definiriam a íris do resto da imagem, logo após as técnicas demonstradas aqui
sendo aplicadas, o tempo de reconhecimento será minimizado em aproximadamente 2
segundos.
53
REFERÊNCIAS BIBLIOGRÁFICAS
[ALA04] ALARGANDO HORIZONTES. Sistema de Coordenadas. Disponível em <http://www.dmm.im.ufrj.br/projeto/projetoc/precalculo/sala/conteudo/capitulos/cap25.html> Acesso em 12 mar. 2004.
[DAU03] DAUGMAN, John. How iris recognition works. <http://www.cl.cam.ac.uk/users/jgd1000/iris_recognition.html > Acesso em 23 nov. 2003.
[EPT03] EPTV.com. Canadá adota em aeroportos sistema que reconhece íris de viajantes. Disponível em <http://eptv.globo.com/noticias/2609200209515270.asp> Acesso em 17 Set. 2003.
[FAR03] FARIA, Regis R. A. Wavelets e as artes multiresolucionárias. Disponível em <www.lsi.usp.br/~regis/wlets.html> Acesso em 25 dez. 2003.
[GAB93] GABOR, D. Theory Communication, J. Inst. Electr. Eng. 93 (1946) 429-457.
[IDG03] IDG Now. Europa adota reconhecimento de íris em aeroportos. Disponível em <http://idgnow.com.br/idgnow/corporate> Acesso em 17 Set. 2003.
[REV03] REVISTA.ELETRONICA.2001. Biometria. <http://www.netpage.estaminas.com.br/sosdepre/codificação.htm> Acesso em 25 dez. 2003.
[VIG03] VIGLIAZZI, Douglas. Medidas de Segurança. Florianópolis, SC: Visual Books, 2003, p. 3, seq.
54
ANEXO A – IMAGENS DE ÍRIS
Figura 18: Íris adquirida da máquina digital de 1 megapixel.
Figura 19: Íris adquirida da máquina digital de 3.2 megapixel.
55
Figura 20: Íris adquirida da máquina digital de 3.2 megapixel.
Figura 21: Íris adquirida da maquina digital de 3.2 megapixel.
Figura 22: Íris adquirida da Internet [DAU03].
Figura 23: Íris adquirida da Internet [DAU03].
56
Figura 24: Íris adquirida da Internet [DAU03].
57
ANEXO B - ALGORITMOS
1. Algoritmo que Calcula a Coordenada Adimensional Polar.
function [r, t] = coordAdimPolares(x, y)
r = 0;
t = 0;
2. Algoritmo que Calcula a Coordenada Adimensional Polar.
% Retorna coordenadas cartesianas na imagem, através de coordenadas polares adimensionais% Parametros:% cx - centro x% cy - centro y% r - raio adimensional (de 0 a 1)% t - angulo adimensional (de 0 a 1)% r_int - raio interno (a ser considerado o raio adimensional 0)% r_ext - raio externo (a ser considerado o raio adimensional 1)
function [x, y] = coordCartesianasAdimensionais(cx, cy, r, t, r_int, r_ext)
raio = r_int + ( r_ext - r_int ) * r;[tx, ty] = coordCartesianasCentro(cx, cy, raio, t);
58
x = tx;
y = ty;
3. Algoritmo que Calcula a Coordenada Cartesiana.
% Calcula as coordenadas cartesianas em uma imagem a partir de coordenadas polares
function [x, y] = coordCartesianas(r, t)
tx = r * cos(t);
ty = - r * sin(t);
x = round(tx);
y = round(ty);
4. Algoritmo que Calcula a Coordenadas Cartesianas Absolutas.
% Calcula coordenadas cartesianas absolutas a partir de coordenadas polares em um dado centro
function [x, y] = coordCartesianasCentro(centro_x, centro_y, r, t)
[tx, ty] = coordCartesianas(r, t);
tx = tx + centro_x;
ty = ty + centro_y;
x = tx;
y = ty;
5. Algoritmo que Calcula as Coordenadas Polares.
% Calcula as coordenadas polares em uma imagem a partir de coordenadas cartesianas
function [r, t] = coordPolares(x, y)
% Calculo do raiotr = sqrt( x^2 + y^2 );
% Calculo do anguloif x == 0
59
if y == 0 tt = 0; else if y < 0 tt = pi/2; else tt = 3*pi/2; end endelse tt = - atan( y / x );end
tt = novoAngulo(tt);
r = tr;
t = tt;
6. Algoritmo que Calcula a Coordenadas Cartesianas Absolutas.
% Calcula coordenadas polares a partir de coordenadas cartesianas absolutas e um centro das coordenadas polares
function [r, t] = coordPolaresCentro(centro_x, centro_y, x, y)
[tr, tt] = coordPolares( x - centro_x, y - centro_y );r = tr;
t = tt;
7. Algoritmo que Calcula a Distância de Hamming.
% Calcula a distancia de hamming entre dois iris codes
function dissimilaridade = DistanciaHamming(c1, c2, m1, m2)
if size(c1) ~= size(c2) error('Tamanho dos iris codes são diferentes.');end
[temp1 tam1] = size(c1);[temp2 tam2] = size(c2);
n = 0;for i = 1 : temp1 if (c1(i) ~= c2(i))
60
n = n + and(xor(c1(i),c2(1)),and(m1(i),m2(i)))/and(m1(1),m2(1)); end end
dissimilaridade = n/temp1;
8. Algoritmo que Calcula a Wavelet de Gabor [DAU03].
% GABORCONVOLVE - function for convolving image with log-Gabor filters%% Usage: EO = gaborconvolve(im, nscale, norient, minWaveLength, mult, ...% sigmaOnf, dThetaOnSigma)%% Arguments:% The convolutions are done via the FFT. Many of the parameters relate % to the specification of the filters in the frequency plane. %% Variable Suggested Description% name value% ----------------------------------------------------------% im Image to be convolved.% nscale = 4; Number of wavelet scales.% norient = 6; Number of filter orientations.% minWaveLength = 3; Wavelength of smallest scale filter.% mult = 2; Scaling factor between successive filters.% sigmaOnf = 0.65; Ratio of the standard deviation of the% Gaussian describing the log Gabor filter's transfer function % in the frequency domain to the filter center frequency.% dThetaOnSigma = 1.5; Ratio of angular interval between filter orientations% and the standard deviation of the angular Gaussian% function used to construct filters in the% freq. plane.%% Returns:%% EO a 2D cell array of complex valued convolution results%% EO{s,o} = convolution result for scale s and orientation o.% The real part is the result of convolving with the even% symmetric filter, the imaginary part is the result from% convolution with the odd symmetric filter.%% Hence:% abs(EO{s,o}) returns the magnitude of the convolution over the% image at scale s and orientation o.
61
% angle(EO{s,o}) returns the phase angles.% %% Notes on filter settings to obtain even coverage of the spectrum% dthetaOnSigma 1.5% sigmaOnf .85 mult 1.3% sigmaOnf .75 mult 1.6 (bandwidth ~1 octave)% sigmaOnf .65 mult 2.1% sigmaOnf .55 mult 3 (bandwidth ~2 octaves)% % For maximum speed the input image should be square and have a % size that is a power of 2, but the code will operate on images% of arbitrary size. %
% For details of log-Gabor filters see: % D. J. Field, "Relations Between the Statistics of Natural Images and the% Response Properties of Cortical Cells", Journal of The Optical Society of% America A, Vol 4, No. 12, December 1987. pp 2379-2394%% Author: Peter Kovesi % Department of Computer Science & Software Engineering% The University of Western Australia% [email protected] www.cs.uwa.edu.au/~pk %% May 2001
function EO = gaborconvolve(im, nscale, norient, minWaveLength, mult, ... sigmaOnf, dThetaOnSigma)
[rows cols] = size(im);imagefft = fft2(im); EO = cell(nscale, norient);
x = ones(rows,1) * (-cols/2 : (cols/2 - 1))/(cols/2); y = (-rows/2 : (rows/2 - 1))' * ones(1,cols)/(rows/2);radius = sqrt(x.^2 + y.^2); radius(round(rows/2+1),round(cols/2+1)) = 1;
theta = atan2(-y,x); sintheta = sin(theta);costheta = cos(theta);
62
clear x; clear y; clear theta;
thetaSigma = pi/norient/dThetaOnSigma; for o = 1:norient, fprintf('Processing orientation %d \n', o); angl = (o-1)*pi/norient; wavelength = minWaveLength;
ds = sintheta * cos(angl) - costheta * sin(angl); dc = costheta * cos(angl) + sintheta * sin(angl); dtheta = abs(atan2(ds,dc)); spread = exp((-dtheta.^2) / (2 * thetaSigma^2));
for s = 1:nscale,
fo = 1.0/wavelength; rfo = fo/0.5; logGabor = exp((-(log(radius/rfo)).^2) / (2 * log(sigmaOnf)^2)); logGabor(round(rows/2+1),round(cols/2+1)) = 0;
filter = fftshift(logGabor .* spread); EO{s,o} = ifft2(imagefft .* filter);
wavelength = wavelength * mult; end
end
9. Algoritmo que Gera a Máscara da Íris.
% Gera uma mascara (vetor contendo os valores da imagem) a partir de uma imagem%% Parametros:% imagem - a imagem a ser processada% cx - centro x da imagem% cy - centro y da imagem% r_int - raio da pupila (raio interno)% r_ext - raio da iris (raio extern% r0_ext - raio inicial% rf_ext - raio final % num_raios - numero de raios a serem utilizados na amostragem da iris% num_angulos - numero de angulos a serem utilizados na amostragem da iris%
63
% Retorno:% vetor de tamanho (num_raios x num_angulos) contendo as amostras da imagem
function a = mascara(imagem, cx, cy, r_int, r_ext, r0_ext, rf_ext, num_raios, num_angulos)
% Copia da imagem, onde se desenha para exibicaoexibicao = imagem;
vetorTemp = linspace(0, 0, num_raios*num_angulos);
% Marca o centrofor y = (cy-20):1:(cy+20) exibicao(cx, y) = 255;endfor x = (cx-20):1:(cx+20) exibicao(x, cy) = 255;end
% Desenha uma elipse internar = r_int;for t=0:(pi/360):2*pi [x, y] = coordCartesianasCentro(cx, cy, r, t); exibicao(x, y) = 255;end
% Desenha a elipse externar = r_ext;for t=0:(pi/360):2*pi [x, y] = coordCartesianasCentro(cx, cy, r, t); exibicao(x, y) = 255;end
% Indexados do vetor de amostrasi = 1;
% Coleta as amostras na iris, atraves de coordenadas adimensionaisfor r = 1/num_raios : 1/num_raios : 1 for t = 2*pi/num_angulos : 2*pi/num_angulos : 2*pi % Desenha os pontos da mascara [x, y] = coordCartesianasAdimensionais(cx, cy, r, t, r0_ext, rf_ext); exibicao(x, y) = 255; % Coleta a amostra
64
vetorTemp(i) = imagem(x, y); i = i+1; endend
image(exibicao');
m = vetorTemp;
10. Algoritmo que Gera um IrisCode.
% Gera o iris code a partir de uma gabor convolve em uma imagem%% Parametros:% imagem - a imagem a ser processada (do jeito que ela foi lida de arquivo)% cx - centro x da imagem% cy - centro y da imagem% r_int - raio da pupila (raio interno)% r_ext - raio da iris (raio externo)% num_raios - numero de raios a serem utilizados na amostragem da iris% num_angulos - numero de angulos a serem utilizados na amostragem da iris%% Retorno:% vetor de tamanho (num_raios x num_angulos x 2) contendo os bits do iris code
function a = irisCode(imagem, cx, cy, r_int, r_ext, num_raios, num_angulos)
exibeProcessamento(imagem, cx, cy, r_int, r_ext, num_raios, num_angulos);
% Gera os valores complexos atraves da aplicacao da Gabor Convolutionvalores_complexos = gaborConvolve( imagem, 1, 1, 3, 4, 0.55, 1.5 );
% Vetor que vai recebendo os bits do iris codes vetorTemp = linspace(0, 0, num_raios*num_angulos);
% Indexador do vetor de amostrasi = 1;
% Coleta as amostras na iris, atraves de coordenadas adimensionaisfor r = 1/num_raios : 1/num_raios : 1 for t = 2*pi/num_angulos : 2*pi/num_angulos : 2*pi [x, y] = coordCartesianasAdimensionais(cx, cy, r, t, r_int, r_ext); % Computa os bits da iris code
65
vetorTemp(i) = valores_complexos{1, 1}(y, x); i = i+1; endend
% Transforma os valores complexos em bits
a = vetorTemp';
66