Escolar Documentos
Profissional Documentos
Cultura Documentos
Mrcio Koch
ROTEIRO
Introduo
Objetivos do trabalho
Conceitos bsicos Contexto atual Principais requisitos Especificao Implementao Resultados Extenses
Fundamentao terica
Desenvolvimento
Concluso
Demonstrao
INTRODUO
Objetivo do trabalho Construir uma ferramenta que possibilite aos usurios efetuarem autenticao em aplicativos web, atravs do reconhecimento facial. Utilizar tcnicas de processamento de imagens e viso computacional.
FUNDAMENTAO TERICA
Conceitos bsicos Reconhecimento biomtrico Processamento de imagens Viso computacional Anlise de componentes principais
FUNDAMENTAO TERICA
Reconhecimento biomtrico
FUNDAMENTAO TERICA
Processamento de imagens Processar uma imagem, significa aplicar uma ou mais transformaes sobre ela, de forma que fique mais fcil extrair as informaes desejadas. Tcnicas de processamento utilizadas: Converso para tons de cinza Reduo da resoluo Equalizao do histograma Normalizao da pose da face
FUNDAMENTAO TERICA
Viso computacional Viso computacional responsvel pelo processamento e interpretao de imagens para a identificao de objetos e reconhecimento de padres. Em um sistema de reconhecimento facial, vrias etapas requerem tcnicas de viso computacional, entre elas a localizao da face e extrao de caractersticas.
FUNDAMENTAO TERICA
Anlise de Componentes Principais (PCA) Desenvolvida por Pearson em 1901 e adaptada por Hotteling em 1933 (conhecida como transformada de Hotteling) Utilizada para extrair as caractersticas mais importantes (separa as informaes importantes das redundantes e aleatrias) Mtodo estatstico multivariado (transforma variveis correlacionadas em um nmero menor no correlacionadas) Permite projetar caractersticas em um espao de menor dimensionalidade com suas componentes mais relevantes nas primeiras dimenses
DESENVOLVIMENTO
Requisitos principais
Permitir o cadastro de usurios (Requisito Funcional - RF) Permitir o cadastro das imagens das faces dos usurios (RF) Permitir que usurios efetuem autenticao atravs do reconhecimento facial (RF) Converter as imagens para nveis de cinza (RF) Localizar uma face na imagem (RF) Normalizar a pose da face (RF) Normalizar as dimenses da face (RF) Extrair caractersticas da face (RF) Efetuar o reconhecimento da face (RF) Permitir a aquisio das imagens via web atravs de uma webcam (Requisito No Funcional - RNF)
FUNDAMENTAO TERICA
Contexto atual Atualmente, poucos sistemas propem-se a mesma tarefa deste trabalho, de possibilitar autenticao em sistemas web atravs do reconhecimento facial. Os trabalhos correlatos a este, tambm abordam o reconhecimento atravs da face, porm nenhum destina-se web. Campos Tcnicas de reconhecimento Reaes Busca de registro Pamplona Sobrinho Dispositivo mvel
DESENVOLVIMENTO
Especificao A especificao foi criada com base nas definies da UML a partir da IDE do Eclipse com a extenso de modelagem desenvolvida pela Senior Sistemas. Diagramas apresentados: Diagrama de casos de uso Diagrama de classes
DESENVOLVIMENTO
DESENVOLVIMENTO
DESENVOLVIMENTO
DESENVOLVIMENTO
Implementao
Ferramentas utilizadas: Eclipse JEE para web JDK 1.6 - 64-bits API OpenCV Viso computacional API JavaCV (wrapper para OpenCV) GlassFish Servidor web Oracle Banco de dados Tcnicas utilizadas: Deteco da face baseada em caractersticas de Haar Converso para nveis de cinza Reduo da resoluo Equalizao do histograma Normalizao da pose atravs do alinhamento horizontal entre os olhos Anlise de componentes principais Applet para interface web com o usurio Socket para transmisso de dados entre o applet e o aplicativo servidor
DESENVOLVIMENTO
Implementao
Deteco da face Baseado em classificadores em cascata simples (Haar cascade) Janelas de tamanho ajustvel que percorrem a imagem
DESENVOLVIMENTO
Implementao - Pr-processamento
Nveis de cinza
Reduo da resoluo
Algoritmo de intercalao
Redistribuir os tons de cinza uniformemente
Equalizao do histograma
DESENVOLVIMENTO
Implementao - Pr-processamento
Rotaciona a imagem sem deixar reas sem pixels nas laterais Usa interpolao de pixels para reconstruir reas da imagem
FUNDAMENTAO TERICA
Anlise de Componentes Principais (PCA) Extrao das caractersticas a) Criar uma matriz de padres a partir das faces de treinamento b) Calcular a face mdia a partir dos padres c) Calcular a matriz de covarincia Calcular os auto-valores e auto-vetores d) Calcular as eigenfaces Cada eigenface uma componente principal e) Calcular os pontos de projeo das caractersticas no subespao de imagens
a) b) c)
1 4 5 4 5 2 6 6 3
d)
1 0 0 0 2 0 0 0 3
e)
FUNDAMENTAO TERICA
Calcula-se a distncia euclidiana (ou de mahalanobis) entre os pontos projetados da face de teste com cada uma das faces de treinamento (uma face de treinamento por vez); Atravs do mtodo do vizinho mais prximo encontra-se a face de treinamento mais prxima da face testada. Exemplo didtico
Face Ponto 1 Ponto 2 Ponto 3
Teste
Treino 1 Treino 2 Treino 3
8,5
, =
=1
( )2
14,5 (7,5 15,5)2 +(6,5 13,2)2 +(8,5 14,5)2 =144,89 12 (7,5 13,5)2 +(6,5 12,5)2 +(8,5 12)2 =84,25 2 (, , ) +(, , ) +(, ) =76,25
DESENVOLVIMENTO
Operacionalidade
DESENVOLVIMENTO
Operacionalidade
DESENVOLVIMENTO
Operacionalidade
DESENVOLVIMENTO
Operacionalidade
DESENVOLVIMENTO
Resultados
Deteco facial sucesso em mais de 1500 imagens Normalizao da face sucesso em 99% das faces
DESENVOLVIMENTO
Resultados
Reconhecimento facial 5 imagens por pessoa para treinamento e 2 para testes Reconhecimento facial 3 imagens por pessoa para treinamento e 1 para testes
CONCLUSO
Benefcios
Superou a taxa mnima de 96% no reconhecimento Mais de 1500 imagens de faces coletadas A ferramenta foi utilizada por vrios usurio na coleta das faces Segmentao e deteco automtica das faces em um navegador web Permite o reconhecimento de face automtica Atendeu aos requisitos e a maioria dos objetivos do trabalho Coleta das faces a campo, o objetivo eram 2000 imagens Eliminao dos falsos positivos: uso do erro de reconstruo da face e menor distncia dos falsos positivos como distncia mxima (no consta na monografia) Quando a base de dados muito grande, lento o cadastro de um novo usurio Atingiu-se taxas de acerto superiores a alguns trabalhos correlatos Alm de apenas reconhecer, conseguiu-se identificar o usurio
Dificuldades
CONCLUSO
Desenvolver as rotinas de clculo PCA substituindo as da API OpenCV Utilizar os auto-vetores com maiores auto-valores para diminuir a quantidade de informaes na base de dados e carregadas na memria Melhorar a interface com o usurio, exibindo as imagens j capturadas Substituir o uso de applet pelo HTML5 Efetuar o treinamento e reconhecimento das faces de forma distribuda Utilizar o mtodo dos centroides para calcular as distncias entre os pontos Permitir extrair apenas as caractersticas mais rgidas da face (e. g. olhos) Combinar a tcnica PCA com outras tcnicas como a LDA Permitir o reconhecimento da face com expresses e de perfil Impedir tentativas de fraudes com fotos, atravs de tcnicas como a 3D Permitir alterar as imagens de treino com o objetivo da ferramenta ir aprendendo como a pessoa muda com o passar do tempo
DEMONSTRAO
Demonstrao
FIM
Obrigado