Preview only show first 10 pages with watermark. For full document please download

Redes Neurais

Sistema de Autenticação/Identificação pessoal Biométrica da Palma da Mão com uso de Redes Neurais Artificiais

   EMBED


Share

Transcript

Anais do 14O Encontro de Iniciação Científica e Pós-Graduação do ITA – XV ENCITA / 2009 Instituto Tecnológico de Aeronáutica, São José dos Campos, SP, Brasil, Outubro, 19 a 22, 2009. Sistema de Autenticação/Identificação Pessoal Biométrica Através da Palma da Mão com o Auxílio de Redes Neurais Artificiais Danilo Rodrigues Fontana Instituto Tecnológico da Aeronáutica – ITA Rua dos Girassóis, nº 380, apto. 62, Jd. Industrias Bolsista PIBIC-CNPq [email protected] Luiz Roberto Marim Instituto Tecnológico da Aeronáutica – ITA Rua Antares 175, apto 307C, Jd. Satélite [email protected] Resumo. A palavra Biometria vem do grego “bios” (vida) e “metros” (medida), é a ciência pela qual é possível reconhecer o individuo a partir de suas características físicas e comportamentais. As linhas da palma da mão oferecem grande segurança e sendo uma característica física do corpo humano que não sofre muita variação após a fase adulta da vida, considerando que o tamanho da mão não se altera e que as linhas da palma da mão não se deformam com o passar dos anos. A palma da mão, assim como as digitais, tem algumas linhas, traços característicos, que nos diferenciam dos demais. A partir das linhas da palma da mão, realizaremos um estudo através da técnica de Redes Neurais Artificiais (RNAs) para diferenciar os indivíduos através destas linhas características. No campo da inteligência artificial, Redes Neurais Artificiais (RNAs) são sistemas não lineares que simulam o mecanismo de processamento do cérebro humano, pois funcionam através de conexões entre os neurônios por impulsos elétricos, assim como supõe-se ser no cérebro humano. Palavras chave: Biometria, Palma da Mão, Redes Neurais Artificiais 1. Introdução As formas de identificação humana são pesquisadas desde os tempos primordiais. O reconhecimento básico natural de uma pessoa é feito, há séculos, através da face e da voz. As marcas de nascença e as cicatrizes podem se tornar formas de se reconhecer alguém. As principais dificuldades relacionadas à identificação estão ligadas à segurança, à facilidade de utilização e ao tipo de tecnologia a ser adotada. A biometria apresenta-se como um potencial solução a este problema. Suas variantes estão cada vez mais acessíveis e vêm sendo utilizadas em muitas empresas e entidades governamentais. A necessidade de autenticação/identificação está associada à possibilidade de acesso restrito a um determinado espaço, bem ou serviço, e pode ser realizada de várias formas: por aquilo que se possui (crachá, cartão magnético), por aquilo que se sabe (senha) ou por aquilo que se é (características biométricas, tais como retina, íris, voz, impressão digital, palma da mão, etc.). O ponto divergente em relação a outras formas de identificação como a senha e o cartão magnético é que não podemos perder ou esquecer as nossas características biométricas. O foco principal do projeto foi utilizar as Redes Neurais Artificiais para autenticação/identificação de indivíduos através da biometria da palma da mão (MATOS, 1998). A palma da mão de uma pessoa é formada ainda no 7º mês do período de gestação e é uma característica que permanece na pessoa até o fim da vida, sem sofrer alterações e mudanças (MOREIRA, 2004). As principais características que serão analisadas nesse projeto são as linhas da palma da mão. A Figura 1 mostra a imagem da palma da mão retirada pintando-se a mão com tinta preta e colocando no papel. Figura 1 – Mão Pintada com Tinta Preta Anais do XIV ENCITA 2008, ITA, Outubro, 19-22, 2009 , Algumas das linhas da palma da mão foram extremamente importantes durante a implementação deste projeto. A Figura 2 mostra um desenho ilustrativo da palma da mão que caracteriza as linhas de estudo deste projeto. Figura 2 - Linhas da Palma da Mão Como mostrado acima, são três as características mais importantes da palma da mão, são as linhas DTC (Distal Transverse Crease), PTC (Proximal transverse Crease) e TC (Thenar Crease), que significam respectivamente linha transversa distal, linha transversa proximal e linha tenar (BOREKI, 2003). 2. Aquisição da Imagem O processo de captura da imagem foi realizado com um scanner de uma impressora multifuncional HP 1500 series. Um meio eficiente para coletar as imagens das palmas foi colocar uma folha de cartolina preta com um espaço delimitado a fim de evitar as rotações da mão. Após a captura da imagem da palma temos como resultado uma imagem de 256 tons de cinza, escala de 8 bits com 75 ppi de resolução e formato jpeg. Em um modo mais natural de se ver, imagens não são diretamente próprias para se fazer uma análise no computador, pois computadores trabalham com informações numéricas e não de figuras, então uma imagem tem que ser convertida para números antes de qualquer tentativa de implementação de métodos de tratamento de imagens ( GONZALEZ, 2000). original Figura 3 - Imagem capturada pelo scanner A forma de capturar uma imagem e representá-la em uma matriz de números consiste em “dividir” a imagem real em pequenas regiões denominada elementos da figura, ou mais conhecida como pixels. A imagem é dividida em linhas horizontais de pixels adjacentes e cada parte destas divisões representa a cor e o brilho no determinado ponto real desta imagem. Todo este processo é chamado de digitalização da imagem. No final da amostragem de toda a imagem original, temos como resultado uma matriz numérica que representará a nossa imagem no computador (PEREIRA, 2003). Anais do XIV ENCITA 2008, ITA, Outubro, 19-22, 2009 , 3. Pré Processamento Como visto acima, a imagem precisa ser convertida em números para ser trabalhada pelo computador, assim, a imagem vai para uma escala de tons de cinza e tem sua matriz extraída pelo computador. 3.1 Filtros A filtragem aplicada a uma imagem digital é uma operação local que modifica os valores dos níveis digitais de cada pixel da imagem considerando o contexto atual do pixel. Pela filtragem, o valor de cada pixel da imagem é modificado utilizando-se uma operação de vizinhança, ou seja, uma operação que leva em conta os níveis digitais dos pixels vizinhos e o próprio valor digital do pixel considerado. 3.2 Filtro Gaussiano O filtro gaussiano tem a finalidade de “borrar” a imagem para descartar pequenos ruídos como falhas na figura, linhas pouco evidentes e algumas imperfeições formadas a partir da imagem em tons de cinza. O filtro percorre toda a vizinhança da imagem em forma de quadrado, centralizando um pixel e “borrando” os demais, fazendo este percurso por toda a imagem. Como visto na Figura 1, existem mais de três linhas evidentes na mão, existem também muitas linhas pequenas que podem ser comparadas com as minúcias nas digitais, essas minúcias ficam apagadas com o uso do filtro gaussiano por serem muito finas e não oferecerem garantia expressiva se usado isoladamente para caracterização do indivíduo. gauss Figura 4 – Imagem após filtro Gaussiano 3.3 Binarização O processo seguinte consiste em tornar a imagem binária, ou seja, transformar todas as informações contidas na matriz em zeros e uns, onde 0 significa preto e 1 significa branco. Este é um passo importante para a implementação dos demais algoritmos de tratamento da imagem, pois muitos destes trabalham melhor com imagens na forma binária. Um problema relacionado a imagens binárias é que estas provocam perda na qualidade da imagem e podem em alguns casos gerar pequenas falhas na imagem em pontos na borda e nas terminações de cada linha. binarizar Figura 5 - Imagem Binária (tons de branco e preto) Anais do XIV ENCITA 2008, ITA, Outubro, 19-22, 2009 , Após isso a imagem foi filtrada em sua forma binária por outro algoritmo do MATLAB, um filtro que buscava os limites da imagem a fim de recuperar parte da qualidade que perdemos ao binarizar a imagem, para isso, também foi implementado uma técnica de afinamento das linhas que será vista abaixo. 4. Algoritmo O processo de afinamento consiste em diminuir para uma linha uma seqüência de linhas que formavam uma linha grossa na imagem. Este processo suaviza a imagem e retira boa parte das imperfeições facilitando assim o processo de tratamento na imagem. A varredura da imagem é feita ponto a ponto, examinando a vizinhança e verificando quando o pixel pode ou não ser apagado. Quando um pixel é apagado, seu valor na matriz muda de 1 para 0 e a imagem é dita afinada. Após ser afinada a imagem passa por um processo de “limpeza”, um algoritmo “passa baixa” busca todos os pixels isolados e os remove analisando sua vizinhança acima, abaixo e aos lados para saber se tem ou não um valor 1 correspondente nas casas, reforçando assim o trabalho de afinamento da imagem e melhorando a qualidade da mesma. limpar Figura 6 – Imagem Limpa YYY O algoritmo desenvolvido tem o intuito de realizar todos os passos descritos até agora e além disso, redimensionar a imagem para o tamanho de 256 por 256 pixels para que possamos transferir estes mesmos dados para uma matriz no tamanho 16 x 16 mantendo todas as características da original. O fato de usarmos uma matriz menor nos dá um ganho de tempo computacional no treinamento da rede neural e facilita o manuseio dos dados. A seguir temos a imagem no tamanho 16 x 16 na forma binária, de valores 0 e 1. Figura 7 – Imagem 16 x 16 5. Redes Neurais Artificiais A origem da teoria de Redes Neurais remonta aos modelos matemáticos e aos modelos de engenharia, de neurônios biológicos. Como qualquer célula biológica, o neurônio é delimitado por uma fina membrana celular que alem da sua função biológica normal, possui determinadas propriedades que são essenciais para o funcionamento elétrico da célula nervosa. Basicamente o neurônio é composto de três partes fundamentais: o corpo celular, o axônio e os dendritos. O corpo celular, ou soma, é o centro dos processos metabólicos da célula nervosa, dele projetam-se extensões filamentares, os dendritos, e o axônio. Anais do XIV ENCITA 2008, ITA, Outubro, 19-22, 2009 , Os dendritos são prolongamentos numerosos especializados na percepção dos estímulos do meio ambiente e na recepção de impulsos nervosos provenientes de outros neurônios. O papel do axônio é essencial uma vez que este é responsável pela condução de um impulso elétrico de uma célula a outra. Figura 8 – Representação Simplificada de um Neurônio Biológico As manifestações elétricas de neurônios biológicos foram observadas pela primeira vez no século 19 por DuBois Reymond com auxilio de galvanômetros. No século 20, e mais especificamente nas duas décadas seguintes a 1944, passou-se a entender o neurônio biológico como sendo basicamente o dispositivo computacional elementar do sistema nervoso, que possuía entradas, muitas entradas e uma saída. As entradas ocorrem através das conexões sinápticas que conectam os dendritos aos axônios de outras células nervosas. Os sinais que chegam por estes axônios são impulsos nervosos ou potenciais de ação, que constituem a informação que o neurônio processará, de alguma forma, para produzir como saída um impulso nervoso no seu axônio. Dependendo da alteração no potencial elétrico da membrana, o resultado pode ser do tipo excitatório ou inibidor. Uma conexão excitatória contribui para a formação de um impulso nervoso do axônio de saída enquanto que uma conexão inibitória age no sentido oposto (KOVÁZS, 2002). Em 1943, inspirado talvez pelos avanços na determinação experimental das propriedades eletrofisiológicas do neurônio, e pelos então recentes resultados de Alan Turing e John Von Neumann que indicavam ser booleana a natureza da inteligência, o que por sua vez resultava possivelmente da atividade neuronal, Warren McCulloch juntamente com o estatístico Walter Pitts publicaram no Bulletin of Maathematical Biophysics um artigo com o titulo: “A Logical Calculus of the Ideas Immanent in Nervous Activity” que é hoje a base para toda teoria das redes neurais artificiais. O neurônio de McCulloch era um dispositivo binário: a sua saída poderia ser pulso ou não pulso, e as suas várias entradas tinham ganho arbitrário e poderiam ser excitatórias ou inibitórias. Para determinar a saída do neurônio, calculava-se a soma ponderada das entradas com os respectivos ganhos como fatores de ponderação, positivos para aqueles que fossem excitatórios e negativos para aqueles que fossem inibitórios. Se o resultado fosse maior ou igual a um certo limiar então a saída do neurônio era pulso, e no caso o resultado fosse menor que o limiar era não pulso. Assim, a essência da proposta de McCulloch e Pitts foi a seguinte: “ A inteligência é equivalente ao cálculo de predicados que por sua vez pode ser implementado por funções booleanas. Por outro lado, o sistema nervoso é composto de redes de neurônios, que com as devidas simplificações, tem a capacidade básica de implementar estas funções booleanas Conclusão: a ligação entre a inteligência e atividade nervosa fica estabelecida de forma cientifica.” Nesse trabalho foi implementada a técnica de Redes Neurais com o intuito de autenticar e identificar indivíduos através da biometria da palma da mão, para tal, foi escolhida a RNA do tipo feedforward devido ao algoritmo de backpropagation, ou seja, da retropropagação do erro para redes de neurônios de múltiplas camadas. O algoritmo foi desenvolvido originalmente para redes de neurônios com funções de ativação semi-lineares, cujo objetivo é determinar um vetor de parâmetros, pesos, que minimize o erro quadrático sobre um conjunto de treinamento utilizando para isso um método do gradiente. Dentre toda a teoria de redes neurais podemos compreender que os modelos matemáticos presentes que explicam o funcionamento da rede implantada neste projeto trabalham no intuito de que os valores da matriz de entrada passam por uma soma ponderada com os respectivos valores da matriz de pesos que iniciam randômicos. Ao serem processados para cada neurônio da camada oculta, esses valores tendem a atingir um certo limiar, se o atingirem, geram um valor de saída, dada a função de transferência aplicada naquela camada. Esses valores processados por estes neurônios passam por mais uma soma ponderada com novos pesos randômicos, resultando agora em um neurônio de saída. O valor dessa saída também é processado e gera um valor também de acordo com a função de transferência da camada. Em seguida, entra em ação o processo do backpropagation, uma vez que o valor de saída seja diferente do valor estipulado pelo conjunto de treinamento os valores da matriz de pesos são reajustados e todo o ciclo é repetido. A medida que um ciclo é completado pela rede, dizemos que completou uma época. Um fator essencial para a determinação do numero de épocas tão quão o tempo do treino é a função de adaptação de aprendizado da rede. Anais do XIV ENCITA 2008, ITA, Outubro, 19-22, 2009 , Para agilizar o treinamento e os testes para validação e simulação da rede, a imagem sofreu todo o processamento apresentado anteriormente. A fase de treino da Rede foi realizada com uma arquitetura do tipo feedforward com 256 neurônios na camada de entrada, 10 neurônios na camada oculta e 1 neurônio na camada de saída. Para o treinamento foi aplicada uma função com gradiente descendente com momento. A função de ativação sigmóide tangencial (tansig) foi usada na rede na camada oculta e para a camada de saída uma função linear, também conhecida como purelin. A meta, ou o erro objetivo para o fim de treinamento escolhido foi de 8.10-5 e uma taxa de aprendizagem de 1.10-2. A camada de entrada da rede é composta por uma matriz coluna que expressa cada pessoa, sendo que os dados apresentados para a rede foram de pessoas aceitas e recusadas. Para aqueles que foram dados como aceitos tiveram como valor de saída 100 e os que deveriam ser recusados pela rede, ou seja, todos os não aceitos, valor 0 (zero). Para o treinamento, usamos um conjunto de dados com 22 palmas da mão, sendo que dentre estas, 6 palmas da mão representavam pessoas aceitas. De acordo com as pesquisas realizadas, uma única palma não era suficiente para o reconhecimento da rede, com isso, cada pessoa foi representada por duas imagens da palma (MOREIRA, 2004). Este fato ajuda a rede a identificar mudanças na direção da palma, diferenças entre as posições de colocação da palma a cada vez que a pessoa se sujeita ao aparelho e fatores externos tais como claridade, sujeira e posição de colocação da mão. A figura abaixo representa a fase de treinamento da rede, o número de épocas, a performance atingida e a meta que estipulada para o treino. Figura 9 – Treinamento da Rede Neural Como a meta do treino era de 8.10-5 e o desempenho atingiu o valor de 7.99917.10-5, temos que a meta foi alcançada com 1759 épocas. Após este período de treino, temos uma fase de validação da rede, para isso apresentamos a rede um dado que não estava presente no conjunto de treinamento, embora conheçamos o seu resultado de saída. Um dos parâmetros para classificar o ponto ideal do treinamento da rede foi a escolha do valor mínimo que a rede retornava para decidir se aceitava ou não a pessoa como uma das cadastradas, para isso, tomamos como base o valor 95, ou seja, todos os valores processados pela rede neural que forem maiores ou iguais a 95 são dados como aceitos. Caso não obtivéssemos o valor esperado para a saída da rede, continuamos o treinamento partindo dos pesos que havíamos calculado, ou seja, reinicializando a partir dos pesos que teoricamente, já estão bem próximos do resultado esperado. Para isso, foram realizados vários treinos e simulações que para os casos estudados, obtivemos os seguintes resultados: Tabela 1. Simulações feitas a partir do Treinamento da Rede Neural. NÚMERO DE AMOSTRAS FALSAS ACEITAÇÕES 76 0 FALSAS REJEIÇÕES 1 Anais do XIV ENCITA 2008, ITA, Outubro, 19-22, 2009 , As falsas aceitações ocorrem se a rede retorna um valor maior que o especificado como classificatório de uma matriz que deveria ter como saída o valor zero ou algo próximo a esse valor devido a alguns traços que podem ser semelhantes entre algumas palmas. Em relação às falsas rejeições, elas ocorrem quando uma pessoa que deveria ser aceita pela rede é recusada por algum motivo como a qualidade da imagem, fatores externos e/ou morfofisiológicos recentes. No treinamento realizado para a rede neural, não encontramos nenhum dado que representasse falsa aceitação, em contrapartida, os valores que deveriam ser classificados como rejeitados pela rede apresentaram valores relativamente próximos aos que eram esperados. Com relação à falsa rejeição do individuo recusado, esta ocorre pelo fato do valor mínimo escolhido ser 95, mesmo assim, podemos ver claramente que se o individuo se submeter novamente ao leitor será possivelmente aceito, uma vez que pode ter ocorrido algum problema na hora de capturar a imagem da palma. Para identificar as pessoas cadastradas, criamos um método de comparação direto com as matrizes de imagens usadas para o treinamento da rede, assim, aqueles que marcassem o maior valor eram classificados de acordo com a colocação de suas matrizes na entrada da rede. A figura abaixo representa o gráfico do número de falsas aceitações e falsas rejeições em relação ao limiar. Figura 10 – Comparação entre falsa aceitação (FAR) e falsa rejeição (FRR) De acordo com o gráfico da figura acima, temos que o melhor ponto para a rede é aquele cuja taxa de falsa aceitação é zero. Entretanto, o ponto onde a FAR é zero a FRR tem um valor acima de zero, fato que explica o resultado da rede neural com apenas uma falsa rejeição para os casos estudados. 6. Conclusões Nesse projeto foi possível fazer a captura da imagem da palma da mão e sua digitalização. Utilizamos a técnica de Redes Neurais Artificiais para o reconhecimento biométrico da palma da mão, e os resultados obtidos para os casos estudados foram satisfatórios. Para os 76 casos analisados nesse projeto somente um apresentou uma falsa rejeição, somando um total de noventa e nove por cento de acerto. O processo de captura da imagem através do scanner de impressora foi importante para o desenvolvimento do projeto e para o tratamento da imagem, a fim de reduzir o tamanho da matriz e agilizar a implementação da rede neural. A biometria associada a Redes Neurais Artificiais representa um modelo promissor para o futuro da sociedade que a cada dia exige mais segurança e mais praticidade no que diz respeito à qualidade de vida e do trabalho. Este projeto é uma prova de que modelos matemáticos computacionais podem ser amplamente associados a sistemas de identificação biométricos que podem facilitar a vida do ser humano e aprimorar os conceitos tanto de segurança quanto de praticidade, uma vez que você, seu corpo passa a ser sua própria senha. 7. Agradecimentos Os autores agradecem ao CNPQ pelo auxilio financeiro e o incentivo a projetos científicos. Anais do XIV ENCITA 2008, ITA, Outubro, 19-22, 2009 , 8. Referências A importância da imagem em Biometria. Acessado na WEB em 23/07/2008. http://www.img.lx.it.pt/~fp/comimg/ano2001_2002/trabalhos2001_2002/trabalho4/A_importancia_da_imagem_ em_Biometria.htm Boreki, G., Sistema de controle de acesso por iButton com verificação biométrica da geometria da mão, Núcleo de Ciências Exatas e Tecnológicas, UnicenP – Centro Universitário Positivo – 2003. Gonzalez, R., Woods, Richard., Processamento de imagens digitais, Editora Edgard Blücher LTDA, 2000. Impressora Multifuncional HP ALL SERIES, 1500 series, configurações de digitalização de imagem Kovács, Z. L., REDES NEURAIS ARTIFICIAIS, Fundamentos e Aplicações. Editora Livraria da Física, 3º edição, São Paulo, 2002. Matos, R., Mecanismos de Autenticação de Usuários com utilização de dados biométricos – 1998. Disponível em www.inf.ufrgs.br/pos/SemanaAcademica/Semana98/renata.html. Moreira, M. Tiago. Verificação Biométrica da Palma da Mão com Identificação via Smart Card, Núcleo de Ciências Exatas e Tecnológicas - NCET Engenharia da Computação, Curitiba 2004. Pereira, L. P. C., MAPEAMENTO DE IMAGENS BINÁRIAS: UM ESTUDO SOBRE BIOMETRIA DA MÂO, UNAMA – Universidade da Amazônia Centro de Ciências Exatas e de Tecnologia Bacharelado em Ciência da Computação, Belém-Pa 2003. Warren S. McCulloch , Walter Pitts, A Logical Calculus of the Ideas Immanent in Nervous Activity, Neurocomputing: foundations of research, MIT Press, Cambridge, MA, 1988