Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio...

44
Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais Departamento de Ciência da Computação Visão Computacional

Transcript of Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio...

Page 1: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Comparação de algoritmos de reconhecimento de faces em

multidões

Anderson Rocha TavaresEloizio César Drummond Salgado

Universidade Federal de Minas GeraisDepartamento de Ciência da Computação

Visão Computacional

Page 2: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Sumário

• O problema

• Motivação

• Revisão bibliográfica • Metodologia

 • Resultados

 • Conclusão

Page 3: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

O problema

• Reconhecimento de faces em imagens que possuem diversas faces.

• Enunciado do problema:o Opção 1: Dada uma

imagem de uma única face, encontre em uma multidão esta face.

o Opção 2: Dada a imagem de uma multidão, reconheça as faces presentes no banco de dados da aplicacão.

Page 4: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Motivação• Identificação de criminosos, terroristas,

mafiosos, baderneiros, etc em lugares públicos como Estações de Trem, Aeroportos, Feiras, Estádios.

Pode ajudar a prevenir crimes contra a vida em escala catastrófica como o "11/09".

 • Motivação principal: Segurança!

Page 5: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

É um problema simples?

• Há dificuldades com:o Poseo Qualidade da imagemo Oclusãoo Disfarceso Desempenho

Page 6: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Revisão Bibliográfica

• Detecção de Faceso VIOLA, Paul; JONES, Michaelo Robust Real-Time Face Detection (1ª Versão) o Fast Multi-view Face Detection (2ª Versão)

Considerado o estado-da-arte em detecção Detecta faces com rotação dentro e fora do plano de imagem Mantém o bom desempenho da primeira versão  0,12 segundos para uma imagem 320x240 em um P4 2.8 GHz

Page 7: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Revisão Bibliográfica

• Reconhecimento de Face o Há muitas técnicas...

Características faciais (olhos, nariz, boca) Brunelli, R.; Poggio, T.; Trento, I Povo. Face recognition through

geometrical features. 1992 Template Matching Análise da Textura da pele Principal Component Analysis - Eigenfaces

 SIROVICH, L.; KIRBY, M.; Low-dimensional Procedure for the characterization of human faces.1987

M. Turk, A. Pentland, Eigenfaces for Recognition. 1991 (+ citado)¹ ATALAY, Ilker; Face recognition using eigenfaces

1) Face Recognition Homepage - Interesting Papers http://www.face-rec.org/interesting-papers/2) http://electronics.howstuffworks.com/facialrecognition.htm

Page 8: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Revisão Bibliográfica

• Reconhecimento de Faces - Imagens Estáticaso Há muitas técnicas...

Reconhecimento Tridimensional Cartoux, J. Y., J. T. LaPreste, and M. Richetin: 1989, Face

authentication or recognition by profile extraction from range images Bronstein, A. M.; Bronstein, M. M., Kimmel, R. Three-dimensional

face recognition. 2005 Identificou corretamente 2 gêmeos idênticos (autores)  Queirolo, C. C.; Silva, L.; Bellon, O. R.;Segundo, M. P. 3D Face

Recognition using Simulated Annealing and the Surface Interpenetration Measure. 2009

Precisão de identificação maior que 98%.

Page 9: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Revisão Bibliográfica

• Reconhecimento de Faces em Multidões:o Ausência de documentos/artigos específicos sobre o assunto:o No entanto, alguns sistemas conhecidos:

FaceIt from Visionics Can find human faces anywhere in a field of view. It can track up to 10

faces simultaneously in a live video. It can follow that face as it moves through a crowd while also searching for matches against a database at a rate of 60 million/minute, per central processing unit (CPU).

FaceVACS-Alert. http://www.cognitec-systems.de/FaceVACS-Alert.20.0.html

Real time face tracking on multiple video streams Real time probe face comparison against "watch list" Real time alarm notification and recordind

Biometric Systems, Inc. http://www.biometrica.com/  providing advanced identity solutions to the Casino Industry

Page 10: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Metodologia

Page 11: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Testes• Informações gerais dos testes de reconhecimento:

o Máquina: Processador: Intel Core Duo T2350 1.86 GHz 2MB L2 Memória: 2.5 GB de RAM

o Imagens testadas: Total: 120 imagens Formato: .pgm (Portable Graymap) Exemplos:

Page 12: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Algoritmos testados - Segmentação

• LuxandSDK¹o Detecção de faces frontais:

Detecção de múltiplas faces Rotação de 30º no plano e fora dele Tempo de detecção: 0,01 a 0,7 seg

Em um Pentium IV 2,4 GHz  1 GB RAM

1) Luxand - Detect Human Faces and Recognize Facial Features - http://www.luxand.com/facesdk/

o Detecção de características: 40 pontos (olhos, sobrancelhas, boca, nariz e contorno da face) Rotação suportada: 30º no plano, 10º fora Tempo: 0,65 segundos (Pentium IV 2,4 GHZ 1GB RAM)

Page 13: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Algoritmos testados - Reconhecimento

• Principal Component Analysis (PCA)¹o Forma vetores de características (feature vectors) concatenando

valores de pixels da imagemo Inicialmente são gerados muitos valores altamente

correlacionadoso PCA chega a um subespaço pequeno sem covariância entre os

feature vectors transformados (os componentes principais).o A matriz de covariância é sempre diagonal

Isso é explorado para alguns classificadores, como L1, MahCosine e Bayesianos, por exemplo.

1 - M. A. Turk and A. P. Pentland. Face Recognition Using Eigenfaces. In Proc. of IEEE Conference onComputer Vision and Pattern Recognition, pages 586 – 591, June 1991.

Page 14: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Algoritmos testados - Reconhecimento

• PCA - Métricas de Classificação 

o Euclideana:   

o Mahalanobis Distance Imagem é convertida para o espaço de Mahalanobis  A variância da amostra ao longo de cada dimensão é unitária,

contra 0 dos feature vectors Transformação é feita pela divisão dos componentes do vetor

pelos seus respectivos desvios-padrão. 

Transformação: MahCosine:

(covariância entre as imagens no espaço de Mahalanobis)

Page 15: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Algoritmos testados - Reconhecimento

• Bayesian Intra/Extra personal Classifier (BIC)¹o Examina o resultado da diferença entre imagenso As imagens-diferença são originadas de distribuições

Gaussianas dentro do espaço de todas as imagens-diferençao O treinamento é feito através de PCA, determinando as

propriedades estatísticas de 2 subespaços Imagens-diferença da classe Intrapessoal Imagens-diferença da classe Extrapessoal 

o Na fase de teste, o classificador recebe uma imagem de classe desconhecida e usa as estimativas das distribuições de probabilidade para identificação.  Na prática: os feature vectors são projetados nos dois

conjuntos, e a probabilidade dele pertencer a cada subespaço é calculada.

1 - B. Moghaddam, C. Nastar, and A. Pentland. A bayesian similarity measure for direct image matching. ICPR, B:350–358, 1996.

Page 16: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Algoritmos testados - Reconhecimento

• BIC - Métricas de Classificação Os feature vectors são projetados nos dois conjuntos, e a probabilidade dele pertencer a cada subespaço é calculada. 

o MAP - Maximum a posteriori Métrica gerada em relação ao conjunto de imagens intra e

extrapessoais.o ML - Maximum likehood

Gerada em relação apenas ao conjunto de imagens intrapessoais.

Page 17: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Resultados

• Segmentação: o LuxandSDK

Teste de Eficácia Tempo de execução

 • Reconhecimento:

o Comparação: BIC x PCA

o Base da comparação: Matriz de Distância:

Segundo menor valor Desempenho:

Tempo de execução

Page 18: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Resultados -  LuxandSDK

• Tempo de execução: Média = 16,89 s / Desvio Padrão = 0,95

Page 19: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Resultados -  LuxandSDK

• Tempo de execução: Média = 35,41 s / Desvio Padrão = 0,38

Page 20: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Resultados -  LuxandSDK

• Tempo de execução: Média = 14,66 s / Desvio Padrão = 0,02

X

Page 21: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Resultados -  LuxandSDK - Resumo

Page 22: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Resultados -  LuxandSDK - Resumo

• Eficácia: Fotos frontais: 100% / Fotos reais: 65,76% • 2 Detecções 'duplas' • Tempo Médio de detecção por face = 0,69 s 

o Desvio Padrão = 0,02

Page 23: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Resultados -  Algoritmo BIC• Primeiro Resultado

                                    

 Imagem 0 Imagem 33

Page 24: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Resultados - Algoritmo BIC• Segundo Resultado

                                    

 Imagem 0 Imagem 32

Page 25: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Resultados - Algoritmo BIC• Terceiro Resultado

                                    

Imagem 48

Imagem 49

Page 26: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Resultados - Algoritmo BIC• Quarto Resultado

                                    

Imagem 48

Imagem 49

Page 27: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Resultados - Algoritmo BIC• Quinto Resultado

                                    

Imagem 119 Imagem 118

Page 28: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Resultados - Algoritmo BIC• Sexto Resultado

                                    

Imagem 119 Imagem 118

Page 29: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Resultados - Algoritmo PCA• Primeiro Resultado

                                    

Imagem 0 Imagem 22

Page 30: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Resultados - Algoritmo PCA• Segundo Resultado

                                    

Imagem 0 Imagem 8

Page 31: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Resultados - Algoritmo PCA• Terceiro Resultado

                                    

Imagem 48

Imagem 61

Page 32: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Resultados - Algoritmo PCA• Quarto Resultado

                                    

Imagem 48

Imagem 52

Page 33: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Resultados - Algoritmo PCA• Quinto Resultado

                                    

Imagem 119

Imagem 117

Page 34: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Resultados - Algoritmo PCA• Sexto Resultado

                                    

Imagem 119 Imagem 95

Page 35: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Resultados - Algoritmos

• Resumo dos Resultadoso Tempo de Execução:

Page 36: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Resultados - Algoritmos

• Resumo dos Resultadoso Número de Acertos (Amostragem de 10%):

Page 37: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Resultados - Algoritmos• Resultado geral da aplicação (Users Guide¹).

o Imagens: Banco de Dados FERET²

1-http://www.cs.colostate.edu/evalfacerec/algorithms/version5/faceIdUsersGuide.pdf2- http://en.wikipedia.org/wiki/FERET_database

Page 38: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Conclusão• Detecção - LuxandSDK

 o Boa detecção em fotos frontaiso Lida bem com rotação no plano de imagemo Dificuldades com rotação para fora do plano o Dificuldades com oclusão, faces pequenas, cenas reaiso Tempo de detecção consistente com o divulgado

Mas é alto Uso inviável para aplicações de tempo real

Page 39: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Conclusão• Reconhecimento - BIC:

o Pontos positivos: Bom Reconhecimento = ideal para o propósito!

o Pontos negativos: Alto tempo de execução e processamento:

Para reconhecimento de faces em multidões: muitas faces = muita segmentação e

processamento em alguns casos há necessidade de

reconhecimento em tempo real. Ruim para reconhecer faces em imagens iguais. 

Grande dependência de um banco de dados consistente.

Page 40: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Conclusão• Reconhecimento - PCA:

o Pontos Positivos: Bom para identificar faces de imagens idênticas  Rápida Execução.

o Pontos Negativos: Não identifica faces em imagens com variações:

Requisito básico para identificação de faces em multidões

Page 41: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Conclusão• Comentários Finais:

o Abordagem adotada mostrou-se lenta Tanto na segmentação quanto no reconhecimento

o Várias melhorias possíveis Eficácia:

Mudança do segmentador (Viola-Jones?) Implementação de reconhecedor mais sofisticado

Eficiência: Melhor integração com reconhecedor Uso de reconhecedor mais rápido

Page 42: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Conclusão• Comentários Finais:

o Para reconhecimento de faces em multidões é necessário:

o  Boa segmentação de faces: A qualidade da imagem de entrada é muito importante para o

reconhecedor.o Banco de dados de qualidade:

Imagens com variações de iluminação e resolução, oclusão de partes faciais, etc.

o Necessidade de rápido reconhecimento.o Baixo número de falsos positivos!

Page 43: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

Dúvidas?

???

Page 44: Comparação de algoritmos de reconhecimento de faces em multidões Anderson Rocha Tavares Eloizio César Drummond Salgado Universidade Federal de Minas Gerais.

FIM

Obrigado!