• Nenhum resultado encontrado

Reconhecimento facial usando descritores locais e redes complexas

N/A
N/A
Protected

Academic year: 2021

Share "Reconhecimento facial usando descritores locais e redes complexas"

Copied!
119
0
0

Texto

(1)

C ˆAMPUS CORN ´ELIO PROC ´OPIO

DIRETORIA DE PESQUISA E P ´OS-GRADUAC¸ ˜AO

PROGRAMA DE P ´OS-GRADUAC¸ ˜AO EM INFORM ´ATICA

JO ˜AO GILBERTO DE SOUZA PIOTTO

RECONHECIMENTO FACIAL USANDO DESCRITORES LOCAIS E

REDES COMPLEXAS

DISSERTAC¸ ˜AO - MESTRADO

CORN ´ELIO PROC ´OPIO 2016

(2)

RECONHECIMENTO FACIAL USANDO DESCRITORES LOCAIS E

REDES COMPLEXAS

Dissertac¸˜ao de Mestrado apresentada ao Programa de P´os-Graduac¸˜ao em Inform´atica da Universidade Tecnol´ogica Federal do Paran´a – UTFPR como re-quisito parcial para a obtenc¸˜ao do t´ıtulo de “Mestre em Inform´atica”.

Orientador: Prof. Dr. Fabr´ıcio Martins Lopes

CORN ´ELIO PROC ´OPIO 2016

(3)

P662 Piotto, João Gilberto de Souza

Reconhecimento facial usando descritores locais e redes complexas / João Gilberto de Souza Piotto. – 2016.

109 f. : il. color. ; 30 cm

Orientador: Fabrício Martins Lopes.

Dissertação (Mestrado) – Universidade Tecnológica Federal do Paraná. Programa de Pós- Graduação em Informática. Cornélio Procópio, 2016.

Bibliografia: p. 96-108.

1. Percepção facial.2. Representações dos grafos. 3. Percepção de padrões. 4. Informática – Dissertações. I. Lopes, Fabrício Martins, orient. II. Universidade Tecnológica Federal do Paraná. Programa de Pós-Graduação em Informática. III. Título.

CDD (22. ed.) 004

(4)

Câmpus Cornélio Procópio

Programa de Pós-Graduação em Informática

Av. Alberto Carazzai, 1640 - 86.300-000- Cornélio Procópio – PR.

Tel. +55 (43) 3520-4055 / e-mail: ppgi-cp@utfpr.edu.br / www.utfpr.edu.br/cornelioprocopio/ppgi Título da Dissertação Nº 27:

RECONHECIMENTO FACIAL USANDO DESCRITORES

LOCAIS E REDES COMPLEXAS

”.

por

João Gilberto de Souza Piotto

Orientador: Prof. Dr. Fabricio Martins Lopes

Esta dissertação foi apresentada como requisito parcial à obtenção do

grau de MESTRE EM INFORMÁTICA – Área de Concentração: Computação

Aplicada, pelo Programa de Pós-Graduação em Informática – PPGI – da

Universidade Tecnológica Federal do Paraná – UTFPR – Câmpus Cornélio

Procópio, às 14h do dia 12 de dezembro de 2016. O trabalho foi _____________ pela Banca Examinadora, composta pelos professores:

__________________________________

Prof. Dr. Fabricio Martins Lopes

(Presidente – UTFPR-CP)

__________________________________

Prof. Dr. Sylvio Barbon Junior

(UEL-PR)

__________________________________

Profa. Dra. Priscila Tiemi Maeda Saito

(UTFPR-CP)

Visto da coordenação: __________________________________

André Takeshi Endo

Coordenador do Programa de Pós-Graduação em Informática UTFPR Câmpus Cornélio Procópio

(5)
(6)

Gostaria de agradecer primeiramente `a Deus que permitiu que tudo isso acontecesse ao longo de minha vida. A Universidade Tecnol´ogica Federal do Paran´a, seu corpo docente, direc¸˜ao e administrac¸˜ao pela oportunidade de fazer este trabalho. Agradec¸o ao Prof. Dr. Fabr´ıcio Martins Lopes, pela orientac¸˜ao no pouco tempo que lhe coube, por suas correc¸˜oes e incentivos. Gostaria de deixar registrado tamb´em o meu reconhecimento `a minha fam´ılia e aos meus colegas de sala de aula, pois acredito que sem o apoio deles seria muito dif´ıcil vencer esse desafio. Enfim, a todos que direta ou indiretamente fizeram parte da minha formac¸˜ao, o meu muito obrigado.

(7)

´e chamado de presente! Prov´erbio chinˆes

(8)

PIOTTO, Jo˜ao Gilberto de Souza. RECONHECIMENTO FACIAL USANDO DESCRITORES LOCAIS E REDES COMPLEXAS. 117 f. DISSERTAC¸ ˜AO - MESTRADO – Programa de P´os-graduac¸˜ao em Inform´atica, Universidade Tecnol´ogica Federal do Paran´a. Corn´elio Proc´opio, 2016.

A busca por m´etodos de leitura biom´etrica tem crescido muito, alimentada pelas necessidades governamentais, militares e comerciais. Pesquisas indicam que o mercado de reconhecimento facial vai movimentar bilh˜oes de d´olares nos pr´oximos anos. Dessa forma, encontrar m´etodos que atendem situac¸˜oes espec´ıficas impulsiona novos avanc¸os nessa ´area. Cada aplicac¸˜ao de re-conhecimento de faces precisa de uma soluc¸˜ao particular. H´a casos que o tempo de resposta ´e o fator mais importante; outros exigem que a face seja classificada mesmo que de forma parcial. Em todas essas situac¸˜oes, a acur´acia e a robustez talvez sejam os atributos mais importantes. Entretanto, na maioria das vezes, tais caracter´ısticas se comportam como grandezas inversas: aumentado o grau de confianc¸a dos resultados o desempenho do m´etodo ser´a afetado. Por isso, desenvolver uma metodologia que equilibra tais fatores ´e essencial para a construc¸˜ao de soluc¸˜oes aceit´aveis. Este trabalho apresenta um novo algoritmo de reconhecimento facial, base-ado em descritores locais e em redes complexas. O m´etodo ´e capaz de concentrar a informac¸˜ao, antes distribu´ıda pelos diversos pontos dos descritores, em um ´unico vetor de caracter´ısticas, tornando a classificac¸˜ao mais r´apida e eficiente. Al´em disso, o outro foco da metodologia ´e reduzir etapas de pr´e-processamento, evitando que processos sejam executados de forma desne-cess´aria. Os experimentos foram realizados com bancos de faces bem conhecidos na literatura, revelando taxas de acur´acia de at´e 98,5%. A t´ecnica tamb´em apresentou bons resultados mesmo quando havia ru´ıdos nas amostras, muitas vezes oriundos de objetos presentes na composic¸˜ao do cen´ario. Para uma an´alise complementar, algoritmos cl´assicos de reconhecimento facial fo-ram submetidos ao mesmo conjunto de dados, gerando assim resultados comparativos entre as metodologias.

Palavras-chave: SIFT, SURF, ORB, Redes Complexas, Reconhecimento Facial, Classificac¸˜ao, Grafo, Reconhecimento de Padr˜oes

(9)

PIOTTO, Jo˜ao Gilberto de Souza. FACE RECOGNITION USING LOCAL DESCRIPTORS AND COMPLEX NETWORKS. 117 f. DISSERTAC¸ ˜AO - MESTRADO – Programa de P´os-graduac¸˜ao em Inform´atica, Universidade Tecnol´ogica Federal do Paran´a. Corn´elio Proc´opio, 2016.

The search for biometric scanning methods has grown a lot due to government, military and commercial needs. Researches indicate the face recognition market will move billions of dollars in next years. Thus, finding methods to specific situations drives new advances in this area. Each application face recognition requires a particular solution. There are cases the response time is the most important factor; others require that face must be classified even if partially. In all these situations, accuracy and robustness may be the most important attributes. However, in most cases, these features behave as inverse greatness: increasing the confidence level of the results the method performance will be affected. Therefore, create the method which balances these factors is essential for construction of acceptable solutions. This paper presents a new face recognition algorithm based on local descriptors and complex networks. The method is able to concentrate the information before distributed by various point descriptors, in a unique feature vector. It makes the classification step faster and more efficient. Furthermore, another focus of the method is reduce pre-processing steps, avoiding unnecessary processes. The experiments were conducted with faces datasets well known in the literature, revealing accuracy rates of up to 98.5%. The technique also showed good results when there was noise in the samples, often derived from objects present in the composition of the scene. For additional analysis, classical facial recognition algorithms were subjected to the same data set, generating comparative results between both methodologies.

Keywords: SIFT, SURF, ORB, Complex Network, Face Recognition, Classification, Graph, Pattern Recognition

(10)

FIGURA 1 O operador LBP b´asico . . . 23 –

FIGURA 2 A vizinhanc¸a circular LBP . . . 23 –

FIGURA 3 Identificac¸˜ao de padr˜oes uniformes . . . 24 –

FIGURA 4 Representac¸˜ao da face por meio de operadores LBP . . . 24 –

FIGURA 5 Exemplos de descritores Haar-like . . . 27 –

FIGURA 6 Fluxo de execuc¸˜ao das etapas da metodologia SIFT . . . 30 –

FIGURA 7 Uma oitava composta por cinco imagens . . . 32 –

FIGURA 8 Processo de obtenc¸˜ao das imagens DoG . . . 33 –

FIGURA 9 Verificac¸˜ao do ponto chave e seus vizinhos em diferentes escalas . . . 34 –

FIGURA 10 Ponto extremo localizado “fora” de um pixel . . . 34 –

FIGURA 11 Janelas utilizadas no detector de bordas de Harris . . . 36 –

FIGURA 12 Janela de Harris sugerindo a presenc¸a de uma borda . . . 36 –

FIGURA 13 Histograma utilizado para atribuir a orientac¸˜ao do ponto chave . . . 38 –

FIGURA 14 Janelas ao redor do ponto chave - SIFT . . . 39 –

FIGURA 15 Func¸˜ao de ponderac¸˜ao gaussiana . . . 40 –

FIGURA 16 T´ecnica de Box Filter . . . 41 –

FIGURA 17 Integral de imagem . . . 42 –

FIGURA 18 Janela deslizante do descritor SURF . . . 43 –

FIGURA 19 Construc¸˜ao do descritor SURF . . . 44 –

FIGURA 20 Grafo simples . . . 47 –

FIGURA 21 Rede complexa . . . 47 –

FIGURA 22 Mapeamento de uma rede complexa em um vetor de caracter´ısticas . . . . 48 –

FIGURA 23 Exemplo de melhor separac¸˜ao entre duas classes . . . 56 –

FIGURA 24 Etapas do processo de treinamento e classificac¸˜ao da Random Forest . . . 58 –

FIGURA 25 Arquitetura do classificador Perceptron simples . . . 59 –

FIGURA 26 Arquitetura do classificador MultiLayerPerceptron . . . 60 –

FIGURA 27 Exemplos das amostras utilizadas nos experimentos . . . 64 –

FIGURA 28 Representac¸˜ao do fluxo de execuc¸˜ao do m´etodo proposto . . . 65 –

FIGURA 29 Representac¸˜ao da etapa de remoc¸˜ao de pontos chave . . . 66 –

FIGURA 30 Pontos representados pelo novo vetor de caracter´ısticas . . . 67 –

FIGURA 31 Normalizac¸˜ao da matriz de similaridade . . . 67 –

FIGURA 32 Definic¸˜ao da matriz de adjacˆencias . . . 68 –

FIGURA 33 Processo de remoc¸˜ao de arestas . . . 69 –

FIGURA 34 Boxplots das taxas de acur´acia dos experimentos . . . 77 –

FIGURA 35 Mesma face com pontos extra´ıdos por diferentes t´ecnicas . . . 81 –

FIGURA 36 Interface do prot´otipo de software . . . 83 –

FIGURA 37 Ardu´ıno Uno . . . 84 –

FIGURA 38 Rel´e simples . . . 85 –

FIGURA 39 Exemplos de resistores . . . 85 –

FIGURA 40 LCD 16x2 b´asico com fundo verde . . . 86 –

FIGURA 41 Diodo semicondutor . . . 87 –

(11)

FIGURA 44 Fluxo de acionamento do m´odulo rel´e . . . 89 –

FIGURA 45 M´odulo rel´e utilizado na construc¸˜ao do prot´otipo de hardware . . . 90 –

FIGURA 46 Comunicac¸˜ao interna entre os componentes do prot´otipo de hardware . . 90 –

(12)

TABELA 1 Principais caracter´ısticas dos bancos de faces adotados . . . 65 –

TABELA 2 Resultados dos experimentos do m´etodo proposto . . . 72 –

TABELA 3 Resultado da selec¸˜ao de atributos . . . 74 –

TABELA 4 Resultados do m´etodo proposto ap´os selec¸˜ao de caracter´ısticas . . . 74 –

TABELA 5 Resultados dos experimentos: comparac¸˜ao entre metodologias . . . 75 –

TABELA 6 Conjuntos de amostras para experimentos de eficiˆencia . . . 78 –

TABELA 7 Experimentos de eficiˆencia utilizando centroide . . . 79 –

TABELA 8 Experimentos de eficiˆencia utilizando regi˜oes da face . . . 80 –

(13)

AdaBoost Impulso ou est´ımulo adaptativo (Adaptive Boosting) BRIEF Binary Robust Independent Elementary Features CFS Correlation-based Feature Selection

CSV Comma Separated Values

DoG Diferenc¸as de Gaussianas (Difference of Gaussians) FAST Features from Accelerated Segment Test

FLD Fisher’ s Linear Discriminant

GSM Global System for Mobile Communications IBK Instance-Based Learning Algorithms LBP Local Binary Patterns

LCD Liquid Crystal Display

LoG Laplaciano de Gaussianas (Laplacian of Gaussian) OpenCV Open Source Computer Vision Library

ORB Oriented FAST and Rotated BRIEF PCA Principal Components Analysis RGB-D Red, Green, Blue and Depth SIFT Scale Invariant Feature Transform SQI Self Quotient Image

SURF Speeded Up Robust Features SVM Support Vector Machines USB Universal Serial Bus

(14)

1 INTRODUC¸ ˜AO . . . 14

1.1 MOTIVAC¸ ˜AO . . . 15

1.2 OBJETIVOS . . . 16

1.2.1 Objetivo Geral . . . 16

1.2.2 Objetivos Espec´ıficos . . . 16

1.3 TEMAS N ˜AO ABORDADOS . . . 17

1.4 ORGANIZAC¸ ˜AO DO TEXTO . . . 17

2 T ´ECNICAS DE RECONHECIMENTO DE FACES . . . 19

2.1 EIGENFACES . . . 20

2.2 FISHERFACES . . . 21

2.3 LBPHFACES . . . 22

2.4 M ´ETODOS ATUAIS DE RECONHECIMENTO DE FACES . . . 26

2.5 TRABALHOS RELACIONADOS AO RECONHECIMENTO FACIAL . . . 27

2.5.1 Detecc¸˜ao de faces . . . 27

2.5.2 Detecc¸˜ao de fraudes - Spoof faces . . . 28

2.5.3 T´ecnicas de correc¸˜ao de iluminac¸˜ao . . . 28

3 FUNDAMENTAC¸ ˜AO TE ´ORICA . . . 30

3.1 SIFT . . . 30

3.1.1 Determinar o espac¸o de escala . . . 31

3.1.2 Calcular a aproximac¸˜ao de LoG . . . 32

3.1.3 Localizar Pontos Chave . . . 33

3.1.4 Eliminar ru´ıdos . . . 35

3.1.5 Atribuir orientac¸˜oes aos pontos chave . . . 38

3.1.6 Gerar caracter´ısticas SIFT . . . 39

3.2 SURF . . . 40

3.2.1 Aproximac¸˜ao de LoG e localizac¸˜ao de pontos chave . . . 41

3.2.2 Integral de imagem . . . 42

3.2.3 Atribuir orientac¸˜oes aos pontos chave . . . 42

3.2.4 Gerando as caracter´ısticas SURF . . . 43

3.3 ORB . . . 44

3.4 GRAFOS E REDES COMPLEXAS . . . 46

3.4.1 Grau, proximidade, intermediac¸˜ao, autovetor e centralizac¸˜ao . . . 48

3.4.2 Triˆangulos Adjacentes . . . 49

3.4.3 Coeficiente de Assortatividade . . . 50

3.4.4 Cliques . . . 50

3.4.5 N´os mais distantes . . . 51

3.4.6 Medidas de Hub e Autoridade de Kleinberg . . . 51

3.5 RECONHECIMENTO DE PADR ˜OES E CLASSIFICAC¸ ˜AO . . . 51

3.5.1 Classificac¸˜ao . . . 52

3.5.1.1 Instance-Based Learning Algorithms . . . 53

(15)

3.5.1.4 Random Forest . . . 57

3.5.1.5 Redes Neurais Artificiais . . . 57

3.5.2 Selec¸˜ao de caracter´ısticas . . . 59

3.5.2.1 Correlation-based Feature Selection . . . 60

3.5.3 An´alise de resultados . . . 61

4 MATERIAIS E M ´ETODOS . . . 63

4.1 BANCOS DE FACES . . . 63

4.2 METODOLOGIA PROPOSTA . . . 65

4.2.1 Extrair pontos chave . . . 66

4.2.2 Definir novo vetor de caracter´ısticas de cada ponto . . . 66

4.2.3 Definir a matriz de similaridade . . . 67

4.2.4 Definir a matriz de adjacˆencias . . . 68

4.2.5 Calcular medidas e remover arestas . . . 68

4.2.6 Definir o vetor de caracter´ısticas da face . . . 68

5 RESULTADOS E DISCUSS ˜OES . . . 70

5.1 SELEC¸ ˜AO DE AMOSTRAS PARA EXPERIMENTAC¸ ˜AO . . . 70

5.2 RESULTADOS EXPERIMENTAIS DA METODOLOGIA PROPOSTA . . . 71

5.3 SELEC¸ ˜AO DE CARACTER´ISTICAS . . . 73

5.4 COMPARAC¸ ˜AO DO M ´ETODO PROPOSTO COM T ´ECNICAS CL ´ASSICAS DE RECONHECIMENTO FACIAL . . . 75

5.5 TESTES E RESULTADOS DE EFICI ˆENCIA . . . 78

6 PROT ´OTIPO DE FECHADURA ELETR ˆONICA . . . 82

6.1 PROT ´OTIPO DE SOFTWARE . . . 82

6.2 PROT ´OTIPO DE HARDWARE . . . 83

6.2.1 Ardu´ıno . . . 84 6.2.2 Rel´e . . . 84 6.2.3 Resistor e Potenciˆometro . . . 85 6.2.4 LCD 16x2 . . . 86 6.2.5 Diodo . . . 87 6.2.6 TRANSISTOR . . . 88

6.2.7 Montagem do prot´otipo de hardware . . . 88

7 CONCLUS ˜OES E DIRECIONAMENTOS . . . 92

REFER ˆENCIAS . . . 96

(16)

1 INTRODUC¸ ˜AO

A Vis˜ao Computacional ´e a ´area da ciˆencia que tem como objetivo programar um computador para “entender” uma cena ou recursos em uma imagem. As aplicac¸˜oes para este tipo de tecnologia se estendem desde o uso dom´estico at´e a composic¸˜ao de equipamentos de guerra. Na rob´otica, a Vis˜ao Computacional ´e utilizada para guiar robˆos por trajet´orias n˜ao espec´ıficas, fazendo a m´aquina tomar suas pr´oprias decis˜oes de movimento. Para uso militar, a tecnologia pode ser usada para direcionar drones ou fazer com que armas militares atinjam alvos espec´ıficos. Na biometria, uma imagem de face, iris ou digital pode ser utilizada para identificar uma pessoa (ZHAO et al., 2003). Apesar da variedade de aplicac¸˜oes, a Vis˜ao Computacional ´e tema desafiador: resume-se em descrever o mundo em uma ou mais imagens e reconstruir suas propriedades como formas, iluminac¸˜ao e distribuic¸˜ao de cores. Diante dessa gama de conceitos, houve a necessidade de resolver os desafios de forma mais espec´ıfica, surgindo assim novas sub´areas dentro da Vis˜ao Computacional (SZELISKI, 2010).

A biometria consiste em analisar caracter´ısticas dos seres vivos por meio de diver-sas medidas. No caso dos humanos, existem caracter´ısticas que podem ser exclusivas de um indiv´ıduo como a digital, voz e face. Dessa forma, uma das principais aplicac¸˜oes do es-tudo da biometria ´e a identificac¸˜ao de pessoas. Entretanto, para optar por um m´etodo de identificac¸˜ao eficiente, ´e preciso associ´a-lo a um modelo computacional (ALMEIDA, 2006). M´etodos biom´etricos baseados em imagens (face, iris, impress˜ao digital) utilizam conceitos de Vis˜ao Computacional e Reconhecimento de Padr˜oes como fundamentos essenciais para a modelagem e realizac¸˜ao dos seus objetivos.

A escolha da metodologia de reconhecimento depende de fatores como utilizac¸˜ao e aceitac¸˜ao. O reconhecimento da ´ıris ´e extremamente preciso, por´em seu custo financeiro ´e alto e n˜ao ´e muito aceito por ser uma t´ecnica invasiva. As impress˜oes digitais s˜ao confi´aveis e n˜ao s˜ao demasiadamente invasivas, mas n˜ao s˜ao adequadas quando n˜ao h´a colaborac¸˜ao dos indiv´ıduos (ABATE et al., 2007). No caso dos m´etodos faciais, a cooperac¸˜ao do usu´ario n˜ao se faz obrigat´oria, muitas vezes ocorrendo sem o consentimento do indiv´ıduo analisado. Esse fato divide opini˜oes sobre o uso da tecnologia, pois levanta quest˜oes sobre privacidade e o uso de

(17)

informac¸˜oes pessoais sem autorizac¸˜ao (REAES, 2006).

A an´alise de padr˜oes biom´etricos tem sido alvo de estudos durante os ´ultimos anos, sobretudo a biometria de faces. A busca por novos m´etodos ´e alimentada pela necessidade da ind´ustria do entretenimento, por sistemas de seguranc¸as governamentais e aplicac¸˜oes comer-ciais de modo geral (HUANG et al., 2011). O reconhecimento facial est´a se tornando cada vez mais pr´oximo do cotidiano das pessoas. Celulares, sistemas de controle de acesso, video-vigilˆancia e at´e jogos interativos s˜ao exemplos de aplicac¸˜oes que embarcam essa tecnologia (JAIN; LI, 2005).

O comportamento facial ´e o conjunto de diversas ´areas de estudo como detecc¸˜ao de faces, reconhecimento de faces e reconhecimento de express˜oes faciais (ZHAO et al., 2003). Muitas vezes h´a confus˜ao conceitual dessas t´ecnicas e, por isso, ´e importante deixar claro a definic¸˜ao de cada uma delas. A detecc¸˜ao de faces consiste em determinar a localizac¸˜ao de uma face em uma imagem, caso exista. Ela n˜ao se preocupa em identificar “quem ´e” o indiv´ıduo, pois este ´e papel do reconhecimento facial. Por fim, o reconhecimento de express˜oes ´e o ramo de pesquisa que concentra esforc¸os em detectar emoc¸˜oes, ou seja, quando h´a sentimentos de raiva, felicidade e medo, por exemplo (PINTO et al., 2011).

Desde o surgimento das primeiras t´ecnicas de reconhecimento e detecc¸˜ao de faces, muitos problemas j´a foram solucionados. Algoritmos de grande impacto como Eigenfaces (TURK; PENTLAND, 1991a) e Viola-Jones (VIOLA; JONES, 2001) foram propostos, por´em apresentavam falhas na detecc¸˜ao em diferentes escalas, rotac¸˜oes e iluminac¸˜ao. Ao longo dos anos, estes m´etodos sofreram atualizac¸˜oes ou serviram de inspirac¸˜ao para o desenvolvimento de novas t´ecnicas, com resultados mais precisos e confi´aveis. Atualmente, j´a existem m´etodos de extrac¸˜ao de caracter´ısticas que s˜ao praticamente invariantes `a rotac¸˜ao e escala, al´em de apre-sentarem boa invariˆancia `a iluminac¸˜ao. Descritores como o Scale Invariant Feature Transform (SIFT) (LOWE, 1999) e Speeded Up Robust Features (SURF) (BAY et al., 2006), conhecidos por tais caracter´ısticas, s˜ao muito utilizados no reconhecimento de objetos de interesse. Cons-truir soluc¸˜oes que apresentem bons resultados em tempo h´abil e a baixo custo computacional ´e o cen´ario ideal de qualquer aplicac¸˜ao.

1.1 MOTIVAC¸ ˜AO

A Transparency Market Research ´e uma empresa de pesquisa de mercado e de inte-ligˆencia de neg´ocios. A instituic¸˜ao fornece aos clientes uma vis˜ao de mercado com previs˜oes estat´ısticas, cen´arios competitivos e as principais tendˆencias e recomendac¸˜oes estrat´egicas. De

(18)

acordo com o mais recente relat´orio publicado pela empresa “Facial Recognition Market - Glo-bal Industry Analysis, Size, Share, Growth, Trends and Forecast 2015 - 2022”, o mercado gloGlo-bal de reconhecimento facial tem previs˜ao de movimentar cerca de US$ 2,67 bilh˜oes at´e 2022. Esta tendˆencia ´e impulsionada pela alta demanda por sistemas de vigilˆancia para uso civil e go-vernamental, uma vez que o n´umero de crimes e atividades terroristas em todo o mundo tem aumentado recentemente (RESEARCH, 2015).

A forte tendˆencia de consumo de tecnologias de reconhecimento facial ´e a principal motivac¸˜ao de novas pesquisas nesta ´area da biometria. Al´em disso, a ampla gama de aplicac¸˜oes atrai a atenc¸˜ao de pesquisadores e investidores neste setor. Desde o in´ıcio do novo milˆenio, surgiram in´umeras propostas de aplicac¸˜oes para o reconhecimento de faces. Controle de movi-mentos e aprimoramento de robˆos (SEKMEN et al., 2002) (KUNO et al., 2003) e sistemas de monitoramento e seguranc¸a (PENTLAND; CHOUDHURY, 2000) s˜ao exemplos da aplicabili-dade desta tecnologia. Motivado pelas tendˆencias de mercado e varieaplicabili-dades de aplicac¸˜oes, este trabalho apresenta uma nova metodologia de reconhecimento de faces, focando principalmente na robustez, acur´acia e no tempo de resposta.

1.2 OBJETIVOS

1.2.1 OBJETIVO GERAL

Este trabalho prop˜oe um novo m´etodo de extrac¸˜ao de caracter´ısticas faciais para identi-ficac¸˜ao de indiv´ıduos. O objetivo ´e criar um mecanismo que concentre a informac¸˜ao, antes distribu´ıdas por diversos pontos da face, em um ´unico vetor de caracter´ısticas. Assim, ´e poss´ıvel criar um m´etodo que seja robusto e que apresente menos custo computacional, podendo at´e ser aplicado em dispositivos m´oveis e com baixo poder de processamento.

1.2.2 OBJETIVOS ESPEC´IFICOS

• Propor uma nova metodologia que utiliza estimativas de grafos para classificac¸˜ao de fa-ces;

• Comparar os descritores SIFT, SURF e Oriented FAST and Rotated BRIEF (ORB) para obtenc¸˜ao de pontos chave, com o objetivo de testar a efic´acia de cada um;

• Apresentar os resultados obtidos pelo m´etodo proposto com o uso de cada um dos descri-tores;

(19)

• Comparar os resultados obtidos pelo m´etodo proposto com as t´ecnicas cl´assicas de reco-nhecimento de faces;

• Apresentar um prot´otipo de fechadura eletrˆonica, utilizando a metodologia proposta e um conjunto de circuitos eletrˆonicos;

1.3 TEMAS N ˜AO ABORDADOS

Este trabalho apresenta uma nova t´ecnica de extrac¸˜ao de caracter´ısticas para reconheci-mento facial. Dessa forma, temas como detecc¸˜ao de faces, spoof faces e t´ecnicas de correc¸˜ao de iluminac¸˜ao n˜ao ser˜ao tratados nesta pesquisa. No Cap´ıtulo 2, tais conceitos ser˜ao apresentados apenas como contextualizac¸˜ao do tema corrente, por´em o objetivo deste projeto ´e exclusiva-mente a extrac¸˜ao de caracter´ısticas faciais e o reconhecimento de faces.

1.4 ORGANIZAC¸ ˜AO DO TEXTO

Para melhor organizac¸˜ao, este trabalho foi dividido em cap´ıtulos e sec¸˜oes.

• Neste cap´ıtulo foram apresentados a introduc¸˜ao, problematizac¸˜ao e motivac¸˜ao do traba-lho a ser desenvolvido. Foram anunciados tamb´em os objetivos a serem alcanc¸ados no decorrer da execuc¸˜ao do projeto.

• No Cap´ıtulo 2 encontra-se um resumo das t´ecnicas cl´assicas de reconhecimento facial, al´em de alguns trabalhos paralelos, que n˜ao est˜ao ligados ao reconhecimento propria-mente dito, mas contribuem para resultados mais satisfat´orios.

• O Cap´ıtulo 3 apresenta os conceitos das t´ecnicas que comp˜oem o m´etodo proposto. Ser˜ao apresentados os descritores SIFT, SURF e ORB, al´em de conceitos de grafos e redes complexas.

• O Cap´ıtulo 4 apresenta a metodologia proposta, descrevendo passo a passo seu funci-onamento. Al´em disso, ser˜ao apresentados tamb´em os bancos de faces utilizados nos experimentos, bem como as particularidades de cada um deles.

• O Cap´ıtulo 5 apresenta os resultados obtidos pela metodologia proposta. ´E exibido tamb´em uma comparac¸˜ao entre tais resultados com as soluc¸˜oes obtidas pela execuc¸˜ao das t´ecnicas cl´assicas.

(20)

• O Cap´ıtulo 6 apresenta um prot´otipo de fechadura eletrˆonica baseada na metodologia proposta.

• No Cap´ıtulo 7 encontram-se as considerac¸˜oes finais sobre o trabalho.

AdaBoost BRIEF CFS CSV DoG FAST FLD GSM IBK LBP LCD LoG OpenCV ORB PCA RGB-D SIFT SQI SURF SVM USB

(21)

2 T ´ECNICAS DE RECONHECIMENTO DE FACES

As principais t´ecnicas de extrac¸˜ao de caracter´ısticas para reconhecimento de faces s˜ao divididas em duas categorias (ZHAO et al., 2003): an´alise de subespac¸o hol´ıstico e descritores de caracter´ısticas locais. A primeira categoria consiste em representar a aparˆencia global da face humana com projec¸˜oes de subespac¸o. As metodologias desse grupo fazem o uso de des-critores como o Principal Components Analysis (PCA) (HALLINAN, 1994) e Fisher’ s Linear Discriminant (FLD) (FISHER, 1936).

A an´alise de caracter´ısticas locais tem se tornado muito promissora em m´etodos de reconhecimento de faces (HEISELE et al., 2003), (BONNEN et al., 2013). Existem v´arias raz˜oes que contribuem para isso:

• Caracter´ısticas locais podem descrever a face com um n´ıvel de detalhe regional, o que pode ser importante na identificac¸˜ao de atributos pessoais ´unicos.

• Existem v´arias t´ecnicas de caracter´ısticas locais robustas `a iluminac¸˜ao como o SIFT (LOWE, 1999), SURF (BAY et al., 2006) e Local Binary Patterns (LBP) (AHONEN et al., 2004).

• Histogramas de recursos locais s˜ao geralmente utilizados como descritores faciais. • M´etodos locais oferecem mais flexibilidade para reconhecer faces com oclus˜oes parciais.

Este cap´ıtulo apresenta algumas metodologias de reconhecimentos de faces dispon´ıveis na literatura. S˜ao introduzidos algoritmos cl´assicos como EigenFaces (TURK; PENTLAND, 1991a), FisherFaces (BELHUMEUR et al., 1997) e LBPHFaces (AHONEN et al., 2004) que, al´em de estarem presentes em grande parte de aparelhos eletrˆonicos atualmente, serviram de inspirac¸˜ao para o surgimento de novas t´ecnicas e novos modelos. Al´em disso, o cap´ıtulo re-sume algumas metodologias que n˜ao classificam diretamente as faces, mas contribuem para o bom desempenho da classificac¸˜ao, como ´e o caso das t´ecnicas de spoof face e algoritmos de normalizac¸˜ao de imagens.

(22)

2.1 EIGENFACES

Como m´etodos de busca exaustiva possuem alto custo computacional e requerem gran-des quantidagran-des de dados armazenados, ´e natural que t´ecnicas de reduc¸˜ao de dimensionalidade sejam sugeridas. Assim, uma t´ecnica bastante comum para a reduc¸˜ao da dimensionalidade, em particular no processamento de imagens, ´e a Principal Components Analysis (PCA) (HALLI-NAN, 1994), (MURASE; NAYAR, 1995), (SIROVICH; KIRBY, 1987), (TURK; PENTLAND, 1991a), (TURK; PENTLAND, 1991b). T´ecnicas de PCA, tamb´em conhecidos como m´etodos Karhunen-Loeve, utilizam projec¸˜oes lineares de reduc¸˜ao de dimensionalidade que maximiza a difus˜ao de todas as amostras projetadas.

De forma mais formal, considere um conjunto de imagens N = {x1,x2...,xN} com valores em um espac¸o de imagem n-dimensional, assumindo que cada imagem pertence `a uma classe c, tal que {X1,X2...,Xc}. Uma transformac¸˜ao linear resume-se em mapear o espac¸o de imagem original n-dimensional em um espac¸o de caracter´ısticas m-dimensional, onde m < n. O novo vetor de caracter´ısticas yk∈ Rm ´e definido como:

yk=WTxk k = 1,2,...,N (1)

onde W ∈ Rnxm ´e a matriz com colunas ortonormais. Com base esse racioc´ınio, matriz total de dispers˜ao ST ´e definida como:

ST = N

k=1

(xk− µ)(xk− µ)T (2)

onde N ´e o n´umero de exemplares e µ ∈ Rn ´e a imagem m´edia de todas as amostras. Ap´os aplicar a transformac¸˜ao linear WT, a dispers˜ao dos vetores de caracter´ısticas {y

1,y2...,yn} ´e WTS

TW . Na PCA, a projec¸˜ao Wopt atua de forma a maximizar o determinante da matriz total de dispers˜ao ST, isto ´e:

Wopt =argmaxw | WTSTW | ={w1,w2, ..,wm}

(3) onde {wi|i = 1,2,3...,m} ´e o conjunto de autovetores de ST, correspondendo aos m maiores autovalores. Dessa forma, os valores ST passam a ser conhecidos como Eigenpictures (SI-ROVICH; KIRBY, 1987) e EigenFaces (TURK; PENTLAND, 1991a), (TURK; PENTLAND, 1991b), desde que tenham a mesma dimensionalidade que as imagens originais.

A grande vantagem ´e que, uma vez aplicada, a t´ecnica aumenta a dispers˜ao entre as classes do conjunto. Entretanto, a dispers˜ao interna `a classe tamb´em ´e maximizada, o que acaba

(23)

prejudicando a classificac¸˜ao. O principal fator que contribui para variac¸˜oes de imagens seme-lhantes ´e a mudanc¸a na iluminac¸˜ao (MOSES et al., 1994). Assim, se amostras com iluminac¸˜ao vari´avel s˜ao submetidas `a t´ecnica PCA, a matriz de projec¸˜ao Wopt ser´a composta por com-ponentes principais modificados por essa variac¸˜ao. Consequentemente, os pontos no espac¸o projetado n˜ao ser˜ao bem agrupados e poder´a ocorrer interferˆencia entre as classes. Entretanto, descartando os trˆes principais componentes mais significativos da matriz de projec¸˜ao Wopt, a variac¸˜ao devido a iluminac¸˜ao tende a ser reduzida. No entanto, ´e improv´avel que tais compo-nentes correspondem apenas `a variac¸˜ao na iluminac¸˜ao e, como consequˆencia, a informac¸˜ao ´util para a classificac¸˜ao poder´a ser perdida (BELHUMEUR et al., 1997).

2.2 FISHERFACES

A metodologia conhecida como Fisher’ s Linear Discriminant (FLD) (FISHER, 1936) ´e um m´etodo de reduc¸˜ao de dimensionalidade que geralmente produz melhores resultados do que o m´etodo EigenFaces. A principal caracter´ıstica desta t´ecnica ´e que ela foi constru´ıda com o objetivo de “moldar” a dispers˜ao, a fim de tornar os componentes da matriz de projec¸˜ao mais confi´aveis para a classificac¸˜ao. No trabalho apresentado por Chellappa et al. (CHELLAPPA et al., 1995) foi proposto o uso de FLD para maximizar a raz˜ao entre a dispers˜ao entre as classes e a dispers˜ao interna `a classe. Para isso, foi preciso definir as matrizes como:

SB= c

i=1 Ni(µi− µ)(µi− µ)T SW = c

i=1xk∈Xi

(xk− µi)(xk− µi)T (4)

onde SB ´e a dispers˜ao entre as classes, SW ´e a dispers˜ao interna `a classe, µi ´e a imagem m´edia da classe Xi, Ni ´e o n´umero de exemplares de Xi e c ´e total de classes. Se SW n˜ao ´e singular (determinante n˜ao ´e nulo), a projec¸˜ao ideal Wopt ´e definida como a matriz com as colunas ortonormais que maximiza a raz˜ao entre o determinante da matriz SBe o determinante da matriz SW. Wopt=argmaxw | W TS BW | | WTSWW | ={w1,w2, ..,wm} (5) onde {wi|i = 1,2,3...,m} ´e o conjunto de autovetores generalizados de SBe Swcorresponde aos m maiores autovalores generalizados {λi|i = 1,2,3...,m}, isto ´e:

(24)

Note que existe no m´aximo c − 1 autovalores generalizados diferente de zero. Assim um limite superior para m ´e c − 1, onde c ´e o n´umero de classes (DUDA et al., 1973). Em aplicac¸˜oes de reconhecimento de face com o uso da t´ecnica FLD, a matriz de dispers˜ao interna `a classe SW quase sempre ´e singular. Isto acontece pois o grau de SW ´e no m´aximo N − c e, em geral, o n´umero de imagens no conjunto de treinamento N ´e muito menor do que o n´umero de pixels em cada imagem n. Para tentar reduzir este problema, foi proposto por Belhumeur et al. (BELHUMEUR et al., 1997) o m´etodo conhecido como FisherFaces. A t´ecnica resume-se em projetar o conjunto imagem para um espac¸o de baixa dimensionalidade, de forma que a matriz de dispers˜ao interna `a classe SW se torne n˜ao singular. Para isso, primeiramente aplica-se a t´ecnica PCA para reduzir a dimens˜ao do espac¸o de caracter´ısticas de N − c. Em seguida, o m´etodo FLD padr˜ao definido por (DUDA et al., 1973) ´e aplicado para reduzir a dimens˜ao para c − 1. WoptT =Wf ldT WpcaT (7) onde Wpca=argmax w | W TS TW | Wf ld =argmaxw | W TWT pcaSBWpcaW | | WTWpcaT SWWpcaW | (8)

Observe que a otimizac¸˜ao para Wpca´e realizada sobre n x (N −c) matrizes com colunas ortonormais, enquanto a otimizac¸˜ao para Wf ld ´e realizada sobre (N − c) x m matrizes com colunas ortonormais.

Provavelmente, existem outras maneiras de reduzir a dispers˜ao interna `a classe e pre-servar a dispers˜ao entre as classes. Uma segunda t´ecnica seria selecionar W com m´axima dispers˜ao entre as classes depois de reduzir a dispers˜ao interna `a classe. Assim, ´e poss´ıvel maximizar a dispers˜ao entre classe desde que a dispers˜ao interna tendesse `a zero.

Wopt =arg max W ∈Φ| W

TS

BW | (9)

onde Φ ´e o conjunto m x n de matrizes com colunas ortonormais contidas no n´ucleo de SW. 2.3 LBPHFACES

O operador Local Binary Patterns (LBP) (OJALA et al., 1996) ´e um descritor de tex-tura que aplica sobre a imagem uma janela 3x3 para leitex-tura de padr˜oes. Considerando o valor central como limiar L, os demais valores vizinhos que s˜ao maiores ou iguais a L recebem 1 e

(25)

os menores recebem 0. Assim, o pixel analisado poder´a ser representado pelo n´umero bin´ario formado por sua vizinhanc¸a, conforme Figura 1. Anos mais tarde, o autor sugeriu que o ope-rador poderia ter sua an´alise de vizinhanc¸a estendida (OJALA et al., 2002). Aplicando uma m´ascara circular com o processo de interpolac¸˜ao de pixels, ´e poss´ıvel binarizar a vizinhanc¸a do pixel central em qualquer raio desejado. A notac¸˜ao (P,R) indica pontos de amostragem P em um c´ırculo de raio R. A Figura 2 representa a nova vers˜ao do operador LBP.

Figura 1: O operador LBP b´asico.

Fonte: (AHONEN et al., 2004)

Figura 2: A vizinhanc¸a circular (8,2). Os pixels s˜ao interpolados sempre que o ponto n˜ao estiver dentro de um pixel.

Fonte: (AHONEN et al., 2004)

Al´em dessa melhoria, foi sugerido tamb´em o uso dos chamados padr˜oes uniformes. Um padr˜ao ´e chamado de uniforme quando existe no m´aximo duas mudanc¸as entre 0 ou 1 na sequˆencia bin´aria. A Figura 3 representa o processo de identificac¸˜ao deste padr˜ao.

O uso de LPB para reconhecimento de faces proposto por Ahonen et al. (AHONEN et al., 2004) utiliza o operador com a notac¸˜ao LPBu2

P,R, onde a marcac¸˜ao u2 indica que apenas padr˜oes uniformes s˜ao usados. Um histograma da imagem classificada fi(x,y) pode ser definido como:

Hi=

x,yI{ fi

(x,x) = i},i = 0,...,c − 1, (10)

onde c ´e o n´umero de diferentes classes produzidas pelo operador LBP.

(26)

ima-Figura 3: Identificac¸˜ao de padr˜oes uniformes: somente quando h´a no m´aximo duas mudanc¸as na sequˆencia bin´aria.

Fonte: Autoria pr´opria

gem como bordas, pontos e ´areas planas. Entretanto, para uma eficiente representac¸˜ao fa-cial, deve-se manter tamb´em informac¸˜ao espacial. Para isso, a imagem ´e dividida em regi˜oes {R0,R1, ...,Rd−1} onde cada regi˜ao dever´a ter seu pr´oprio histograma particular:

Hi, j =

x,yI{ fi

(x,y) = i}I{(x,y) ∈ Rj},i = 0,...,c − 1, j = 0,...,d − 1 (11)

O conjunto de histogramas permite o acesso `as informac¸˜oes sobre o padr˜ao LBP em termos de pixel e em termos de regi˜ao. Ao concatenar os histogramas de cada regi˜ao ´e poss´ıvel criar um descritor global para a face. A Figura 4 ilustra como a face ´e descrita por meio de operadores LBP.

Figura 4: Representac¸˜ao da face por meio de operadores LBP.

Fonte: (CHANG-YEON, 2008)

Um problema muito comum no reconhecimento facial ´e a existˆencia de uma grande quantidade de classes distintas, uma classe para cada indiv´ıduo a ser reconhecido, e poucas

(27)

amostras por classe para treinamento. Por esta raz˜ao, classificadores mais sofisticados normal-mente n˜ao s˜ao utilizados. O mais comum ´e o uso de classificadores baseados no classificador de vizinhos mais pr´oximos. Como o descritor da face ´e composto por um conjunto de histo-gramas, uma medida de dissimilaridade ser´a necess´aria. Qualquer medida a seguir pode ser utilizada (AHONEN et al., 2004).

• Intersecc¸˜ao de histograma: determina o grau de semelhanc¸a entre dois histogramas S e M, levando em considerac¸˜ao os menores valores entre eles (BARLA et al., 2003). A medida ´e definida conforme a Equac¸˜ao 12.

D(S,M) =

i

min(Si,Mi) (12)

onde Sie Mis˜ao os respectivos valores do bin (unidade) de cada histograma.

• Teste de Log-likelihood: determina a semelhanc¸a entre dois histogramas S e M baseada na estimativa por m´axima verossimilhanc¸a. Este conceito resume-se estimar valores para diferentes parˆametros de um modelo estat´ıstico, de forma a maximizar a probabilidade dos dados observados (CAM, 1990; ALDRICH, 1997; RUPPERT, 2011). A medida ´e definida conforme a Equac¸˜ao 13.

L(S,M) = −

i

SilogMi (13)

onde Sie Mis˜ao os respectivos valores do bin (unidade) de cada histograma.

• Teste de Chi quadrado: determina a semelhanc¸a entre dois histogramas S e M baseada na raz˜ao entre os valores de seus bins. Se S e M s˜ao idˆenticos, ent˜ao o valor retornado pela func¸˜ao ser´a zero. Se S e M s˜ao diferentes, ent˜ao o resultado encontrado ser´a diferente de zero. Quanto mais distante de zero for o resultado, maior a diferenc¸a entre S e M (RYABKO et al., 2004). A medida ´e definida conforme a Equac¸˜ao 14.

χ2(S,M) =

i

(Si− Mi)2

(Si+Mi) (14)

onde Sie Mis˜ao os respectivos valores do bin (unidade) de cada histograma.

Uma vez que a imagem ´e dividida em regi˜oes, ´e prov´avel que algumas delas conte-nham informac¸˜oes mais ´uteis do que outras, no que tange o reconhecimento de pessoas. Por exemplo, a regi˜ao dos olhos podem ter informac¸˜oes mais relevantes do que a regi˜ao dos cabelos (ZHAO et al., 2003), (GONG et al., 2000). Dessa forma, um peso pode ser atribu´ıdo para cada regi˜ao, com base na importˆancia da informac¸˜ao nela contida. Segundo os autores do m´etodo,

(28)

os melhores resultados foram obtidos quando a dissimilaridade foi calculada a partir da me-dida Chi quadrado (AHONEN et al., 2004). Neste caso, a ponderac¸˜ao pode ser adicionada na Equac¸˜ao 14 resultando na Equac¸˜ao 15.

χw2(S,M) =

i, j

wj(Si, j− Mi, j) 2

(Si, j+Mi, j) (15)

onde wj ´e o peso na regi˜ao j.

2.4 M ´ETODOS ATUAIS DE RECONHECIMENTO DE FACES

O reconhecimento de face tem se tornado uma ´area de pesquisa muita ativa durante as ´ultimas duas d´ecadas. Recentemente, in´umeras t´ecnicas foram sugeridas, cada uma ten-tando superar ou simplificar uma proposta anterior (SCHROFF et al., 2015; PARKHI et al., 2015). Atualmente, os m´etodos procuram solucionar problemas cada vez mais espec´ıficos. J´a ´e poss´ıvel encontrar modelos que prometem reconhecer indiv´ıduos com apenas parte da face vis´ıvel (CHAI et al., 2014), (CAO; SCHMID, 2014). Existem tamb´em algoritmos mais gen´ericos, que se prop˜oem a classificar qualquer tipo de objeto (CHAN et al., 2015). Neste caso, o reconhecimento facial ´e apenas uma especializac¸˜ao da metodologia.

Al´em de t´ecnicas baseadas em imagens bidimensionais, existem m´etodos que anali-sam amostras em trˆes dimens˜oes (3D) (ABATE et al., 2007). Apesar do reconhecimento facial 3D ser um conceito j´a estudado h´a alguns anos, muitos modelos est˜ao sendo propostos recen-temente, j´a que equipamentos de captura est˜ao cada vez mais sofisticados (KIM et al., 2016). Os defensores desta tecnologia afirmam a modelagem 3D pode gerar informac¸˜oes completas da textura facial, fornecendo vantagens sobre a tecnologia 2D (GANGULY et al., 2014). ´E o caso do algoritmo proposto por (SMEETS et al., 2013), que utiliza pontos extremos na superf´ıcie 3D para formar o vetor de caracter´ısticas da face. J´a a t´ecnica apresentada por (KIM et al., 2016) consiste realizar um mapeamento da face com o aux´ılio de cˆameras Red, Green, Blue and Depth (RGB-D). Apesar das metodologias 3D serem atrativas, o uso desta tecnologia pode ter algumas desvantagens. A leitura em trˆes dimens˜oes pode ser afetada por problemas de auto-oclus˜oes ou auto-oclus˜oes externas, al´em de algumas imperfeic¸˜oes causadas pela baixa qualidade de alguns equipamentos (DRIRA et al., 2013). Al´em disso, equipamentos mais modernos tamb´em tem custos mais elevados e s´o recentemente est˜ao se tornando mais acess´ıveis.

(29)

2.5 TRABALHOS RELACIONADOS AO RECONHECIMENTO FACIAL

Com o passar dos anos, os estudos do comportamento facial lanc¸aram novos desafios. O aparecimento de novas t´ecnicas fez surgir tamb´em a necessidade de encontrar soluc¸˜oes mais espec´ıficas. Assim, a ´area do reconhecimento de faces foi dividida em setores menores de atuac¸˜ao. Com isso, foram propostas metodologias com prop´ositos exclusivos: localizar a face na imagem, t´ecnicas para detectar fraudes (fotos e impress˜ao no papel) e m´etodos de correc¸˜ao de cor e iluminac¸˜ao s˜ao exemplos de trabalhos paralelos `a classificac¸˜ao de faces. A seguir ser˜ao apresentados alguns desses conceitos.

2.5.1 DETECC¸ ˜AO DE FACES

Exitem v´arios algoritmos de detecc¸˜ao de faces propostos na literatura. Entretanto, um dos expoentes talvez seja a t´ecnica proposta por Paul Viola e Michael Jones (VIOLA; JONES, 2001). Esse m´etodo apresenta como premissa o aprendizado de caracter´ısticas sobre o objeto que dever´a detectar. Para isso, s˜ao utilizados algoritmos de aprendizagem de m´aquina treinados com uma vasta quantidade de imagens, possuindo tanto exemplos do objeto que se deseja de-tectar quanto exemplos de outros objetos. O m´etodo Viola-Jones, como ´e conhecido, ´e baseado nos conceitos de integral de imagem, descritores Haar-like (PAPAGEORGIOU et al., 1998) e treinamento de classificadores em cascata usando Adaptive Boosting (AdaBoost). Resumida-mente, o algoritmo executa uma busca usando uma janela deslizante para localizar um objeto na imagem. Esta janela, conhecida como caracter´ısticas retangulares de Haar-like, possui ta-manho, proporc¸˜ao e localizac¸˜ao que variam durante toda a execuc¸˜ao. A Figura 5 apresenta exemplos do descritor Haar-like utilizado pelo m´etodo. Embora o algoritmo possa ser treinado para reconhecer qualquer objeto, a motivac¸˜ao principal desta abordagem foi a detecc¸˜ao de faces. Figura 5: Exemplos de descritores Haar-like: O valor da caracter´ıstica ´e definido como a diferenc¸a entre a soma dos valores os pixels do lado branco e a soma dos pixels do lado roxo do retˆangulo.

(30)

2.5.2 DETECC¸ ˜AO DE FRAUDES - SPOOF FACES

Com a popularidade das aplicac¸˜oes de reconhecimento facial surgiram tamb´em algu-mas quest˜oes sobre sua confiabilidade. Uma preocupac¸˜ao bastante comum ´e saber se o sistema ´e capaz de distinguir uma face humana de um rosto impresso em papel. Ataques com fotos ou v´ıdeos s˜ao conhecidos como spoof face e consiste em utilizar a face de uma pessoa auto-rizada para acessar recursos ou servic¸os restritos. Atualmente, existe uma grande variedade de m´etodos de detecc¸˜ao de spoof face dispon´ıveis na literatura. Existem t´ecnicas que utilizam diferenc¸as de gaussianas e transformada de Fourier (LI; TAN, 2009). Outras que s˜ao baseadas em descritores com caracter´ısticas de baixo n´ıvel (SCHWARTZ et al., 2011). Uma t´ecnica re-cente proposta por Di Wen et al. (WEN et al., 2015) consiste em detectar fraudes analisando distorc¸˜oes como reflex˜ao especular, suavizac¸˜oes, momento crom´atico e diversidade de cores. Em seguida, um classificador m´ultiplo composto por v´arios classificadores SVM (Support Vec-tor Machine) s˜ao treinados para diferentes tipos de ataques (v´ıdeo ou foto). Apesar de aumentar o custo computacional, o uso dessas t´ecnicas combinadas com os algoritmos de reconhecimento facial s˜ao de extrema importˆancia para construc¸˜ao de soluc¸˜oes seguras e confi´aveis.

2.5.3 T ´ECNICAS DE CORREC¸ ˜AO DE ILUMINAC¸ ˜AO

A aparˆencia facial depende fortemente da iluminac¸˜ao do ambiente. Por isso, realizar a classificac¸˜ao nessas condic¸˜oes ´e um dos desafios mais importantes para sistemas de reco-nhecimento de faces (PHILLIPS et al., 2005). As abordagens tradicionais podem ser clas-sificadas em trˆes categorias: baseadas em aparˆencia, com base em normalizac¸˜ao e m´etodos baseados em caracter´ısticas. As t´ecnicas baseadas na aparˆencia, exemplos de treinamento s˜ao coletados em diferentes condic¸˜oes de iluminac¸˜ao e usados para compor um modelo global das poss´ıveis variac¸˜oes de iluminac¸˜ao (BASRI; JACOBS, 2003), (BELHUMEUR; KRIEGMAN, 1998), (CHEN et al., 2000), (LEE et al., 2005), (ZHANG; SAMARAS, 2003). Este tipo de aprendizagem requer um grande n´umero de imagens de treinamento e um conjunto de recur-sos expressivo. Caso contr´ario, ´e essencial incluir etapas de pr´e-processamento para reduzir as variac¸˜oes de iluminac¸˜ao (TAN; TRIGGS, 2010).

Abordagens baseadas em normalizac¸˜ao reduzem a imagem para uma forma canˆonica, fazendo as variac¸˜oes de iluminac¸˜ao serem suprimidas. A equalizac¸˜ao de histograma ´e um exemplo simples, por´em m´etodos mais sofisticados exploraram o fato das distribuic¸˜oes de iluminac¸˜ao na face possu´ırem baixas frequˆencias espaciais e bordas suaves. Dessa forma, as informac¸˜oes de alta frequˆencia na imagem s˜ao consideradas de forma predominante. Por exem-plo, o m´etodo Multiescala Retinex (JOBSON et al., 1997) reduz boa parte das informac¸˜oes de

(31)

baixa frequˆencia, dividindo a imagem por uma vers˜ao suavizada da mesma. Wang et al. (WANG et al., 2004) usaram uma ideia similar para criar as chamadas Self Quotient Image (SQI). Al-guns anos depois, Chen et al. desenvolveram uma nova vers˜ao das SQI usando uma suavizac¸˜ao logar´ıtmica de variac¸˜ao total (CHEN et al., 2006). Por fim, Gross e Brajovic desenvolveram um m´etodo de suavizac¸˜ao baseado na estimativa iterativa da imagem original (GROSS; BRA-JOVIC, 2003). Estes m´etodos s˜ao bastantes eficazes, por´em s˜ao limitados quando h´a variac¸˜oes espaciais n˜ao uniformes, conforme testes apresentados por Shan et al. (SHAN et al., 2003) e Short et al. (SHORT et al., 2004).

A terceira abordagem ´e baseada em caracter´ısticas de iluminac¸˜ao, diretamente ex-tra´ıdas da imagem de entrada. As informac¸˜oes recuperadas podem ser de natureza geom´etrica (BRUNELLI; POGGIO, 1993) ou de caracter´ısticas derivadas de imagem como mapeamento de bordas (ADINI et al., 1997), LBP (AHONEN et al., 2004), Wavelets Gabor (WISKOTT et al., 1997), (ZHANG et al., 2007) e filtros locais de autocorrelac¸˜ao (GOUDAIL et al., 1996). Embora essas caracter´ısticas oferecem uma melhoria, ainda s˜ao extremamente afetadas por variac¸˜oes de iluminac¸˜ao. Por exemplo, apesar de caracter´ısticas LBP serem completamente invariantes `as transformac¸˜oes monotˆonicas, seu desempenho diminui sob mudanc¸as de direc¸˜ao de iluminac¸˜ao e sombreamento. A mesma suposic¸˜ao pode ser feita para os demais tipos (TAN; TRIGGS, 2010). Sabe-se que t´ecnicas que oferecem completa invariˆancia `a iluminac¸˜ao n˜ao existem. Por isso ´e preciso encontrar representac¸˜oes que s˜ao mais resistentes aos tipos de variac¸˜oes de iluminac¸˜ao mais comuns (CHEN et al., 2000), (TAN; TRIGGS, 2010).

(32)

3 FUNDAMENTAC¸ ˜AO TE ´ORICA

O prop´osito deste cap´ıtulo ´e apresentar as principais t´ecnicas que s˜ao utilizadas para compor o m´etodo proposto, afim de facilitar a compreens˜ao do trabalho. A seguir s˜ao apresen-tados os descritores SIFT, SURF e ORB, al´em dos conceitos de grafos e redes complexas. Por fim, s˜ao apresentados os classificadores adotados e a forma de validac¸˜ao dos experimentos. 3.1 SIFT

A Scale Invariant Feature Transform (SIFT) ´e uma abordagem para a extrac¸˜ao de caracter´ısticas proposta como sendo invariante a mudanc¸as na iluminac¸˜ao, escala, rotac¸˜ao e robusto `a presenc¸a de ru´ıdos. Os descritores SIFT s˜ao baseados na intensidade dos pixels e na orientac¸˜ao de vetores gradientes. Al´em disso, a execuc¸˜ao do algoritmo ´e relativamente r´apida, mesmo que o m´etodo seja executado em tempo real (LOWE, 2004). A Figura 6 representa as etapas de execuc¸˜ao do algoritmo.

Figura 6: Fluxo de execuc¸˜ao das etapas da metodologia SIFT.

Fonte: Autoria pr´opria

Resumidamente, a metodologia SIFT consiste em extrair descritores em pontos mais promissores (pontos chave) em todas as escalas da imagem. Por isso, a primeira etapa consiste em reproduzir c´opias da imagem original em diferentes escalas e aplicar um filtro de suavizac¸˜ao. Assim, ´e poss´ıvel identificar pontos de interesse que s˜ao invariantes a escala. Na pr´oxima etapa, o objetivo ´e localizar os pontos chave em cada imagem processada na etapa anterior. Para cada local candidato, existe um modelo detalhado que possui dados de escala e localizac¸˜ao. Como

(33)

muitos pontos podem ser extra´ıdos, ´e preciso aplicar um processo para descartar os menos promissores. Em seguida, uma ou mais orientac¸˜oes s˜ao atribu´ıdas para cada ponto chave, com base nos valores dos gradientes de cada pixel vizinho. Por fim, o ´ultimo passo consiste em gerar o vetor de caracter´ısticas de cada ponto. Cada gradiente ´e medido na escala selecionada e na regi˜ao em torno de cada ponto chave. Estes gradientes s˜ao utilizados para criar o vetor de atributos que identifica exclusivamente o ponto chave na imagem (LOWE, 2004), (SINHA, 2010).

3.1.1 DETERMINAR O ESPAC¸O DE ESCALA

No mundo real, os objetos s˜ao significativos apenas em uma determinada escala. ´E poss´ıvel identificar uma mac¸˜a sobre uma mesa, por´em ao olhar por todo o sistema solar a mesma mac¸a ser´a totalmente insignificante. O espac¸o de escala tenta aplicar esse mesmo conceito no processamento de imagens digitais.

Al´em da quest˜ao da escala, outro ponto importante ´e o n´ıvel de detalhes dos elementos na imagem. Se o objeto de estudo for uma ´arvore, por exemplo, livrar-se de alguns detalhes como folhas e galhos talvez possa ser interessante. Entretanto, ao aplicar esse conceito, ´e pre-ciso tomar cuidado para n˜ao introduzir dados falsos. Foi demonstrado por Koenderink (KO-ENDERINK, 1984) e Lindeberg (LINDEBERG, 1993), por meio de suposic¸˜oes matem´aticas, que a melhor forma de fazer isso ´e com a suavizac¸˜ao Gaussiana. Dessa forma, para criar um espac¸o de escala basta gerar c´opias da imagem original progressivamente e, a cada c´opia, apli-car a suavizac¸˜ao Gaussiana (GONZALEZ; WOODS, 2006). No SIFT esse processo ´e repetido quatro vezes, formando um conjunto composto por cinco imagens denominado oitava. ´E ne-cess´aria a construc¸˜ao de quatro oitavas onde, a cada oitava, o tamanho da imagem original deve ser reduzido pela metade.

Matematicamente, a suavizac¸˜ao ´e dada pela convoluc¸˜ao do operador Gaussiano e a imagem. O operador Gaussiano possui express˜ao particular que ´e aplicada a cada pixel. O resultado ´e uma imagem suavizada.

L(x,y,σ) = G(x,y,σ) ∗ I(x,y) (16)

onde:

• L representa a imagem suavizada. • G ´e o operador Gaussiano.

(34)

Figura 7: Representac¸˜ao de uma oitava composta por cinco imagens. A suavizac¸˜ao Gaussiana foi aplicada para diminuir os detalhes da figura original.

Fonte: (SINHA, 2010) • I representa a imagem de entrada.

• x e y s˜ao as coordenadas de cada pixel da imagem. • σ representa a escala de suavizac¸˜ao.

• ∗ ´e a operac¸˜ao de convoluc¸˜ao, em x e y.

O operador gaussiano pode ser calculado pela equac¸˜ao: G(x,y,σ) = 1

2πσ2e x2+y2

2σ2 (17)

3.1.2 CALCULAR A APROXIMAC¸ ˜AO DE LOG

Na sec¸˜ao 3.1.1, criou-se o espac¸o de escala da imagem, no qual a ideia ´e suavizar e reduzir uma imagem progressivamente, criando assim uma sequˆencia de imagens conhecidas como oitavas. O pr´oximo passo ´e usar essas imagens para gerar outro conjunto de imagens, por meio de uma t´ecnica denominada Diferenc¸as de Gaussianas (Difference of Gaussians - DoG) (LOWE, 2004), (SINHA, 2010).

Os pontos chave podem ser considerados os pixels que mais se “destacam” entre as escalas. Por isso, ´e preciso preparar o espac¸o de escalas de forma que os pixels mais relevantes sejam identificados. Uma forma de realizar esse procedimento ´e utilizando a t´ecnica Laplaciano de Gaussianas (Laplacian of Gaussian - LoG) (LINDEBERG, 1994), baseada em derivadas de

(35)

segunda ordem. Entretanto, a segunda derivada ´e extremamente sens´ıvel ao ru´ıdo, al´em de ter um custo computacional relativamente elevado. Para contornar esse problema, foi adotada a t´ecnica conhecida como Diferenc¸a de Gaussanas (DoG). Uma imagem DoG ´e o resultado da subtrac¸˜ao das imagens de uma oitava. Assim, um processo que era considerado computacio-nalmente intensivo foi substitu´ıdo por uma subtrac¸˜ao relativamente r´apida e eficiente (LINDE-BERG, 1993), (MIKOLAJCZYK, 2002), como ilustrado na Figura 8.

Figura 8: Representac¸˜ao do processo de obtenc¸˜ao das imagens DoG.

Fonte: (LOWE, 2004)

As imagens resultantes s˜ao uma aproximac¸˜ao da escala que seria obtida pelo Lapla-ciano de Gaussianas. S˜ao invariantes em relac¸˜ao `a escala, o que facilita a detecc¸˜ao de pontos chave.

3.1.3 LOCALIZAR PONTOS CHAVE

Com as imagens DoG processadas, o pr´oximo passo ´e encontrar os pontos chave em potencial. Isso pode ser feito localizando os pontos m´aximos e m´ınimos nas imagens DoG. Basta verificar cada pixel e seus vizinhos na imagem atual e nas imagens das escalas acima e abaixo.

Na Figura 9, o ponto “x” representa o pixel que est´a sendo verificado e os c´ırculos representam seus vizinhos. Neste exemplo, s˜ao realizadas 26 verificac¸˜oes entre o pixel marcado com “x” e seus vizinhos. Caso o pixel “x” tenha maior ou menor intensidade do que todos os seus vizinhos, ele ser´a escolhido pelo m´etodo como um ponto chave. Pontos chave n˜ao s˜ao

(36)

Figura 9: Representac¸˜ao visual da verificac¸˜ao do ponto chave e seus vizinhos em diferentes escalas.

Fonte: (LOWE, 2004)

detectados nas escalas mais inferiores e superiores, pois n˜ao h´a vizinhos suficientes para fazer a comparac¸˜ao. Neste caso, essas regi˜oes de extremos ser˜ao desprezadas pelo algoritmo.

Pontos m´aximos e m´ınimos s˜ao aproximados porque quase sempre se localizam “fora” da posic¸˜ao de um pixel. Como n˜ao ´e poss´ıvel acessar dados que est˜ao “entre” pixels, ´e preciso fazer uma aproximac¸˜ao matem´atica para localizar o respectivo “subpixel”.

Figura 10: Ponto extremo localizado “fora” de um pixel.

Fonte: (SINHA, 2010)

Na Figura 10, os pontos vermelhos representam os pixels que foram detectados como m´ınimos e m´aximos. Entretanto, o ponto extremo real ´e o que aparece destacado em verde. A expans˜ao de Taylor pode ser utilizada para determinar a localizac¸˜ao do subpixel (BROWN; LOWE, 2002), conforme definido na Equac¸˜ao 18.

D(x) = D +∂DT ∂x x + 1 2xT ∂2D ∂x2x (18)

(37)

relac¸˜ao `a x. A func¸˜ao resultante deve ser igualada a zero, conforme a Equac¸˜ao 19. ˆx = −∂2D−1

∂x2 ∂D

xD (19)

Dessa forma, a localizac¸˜ao do ponto chave tornou-se relativa `as demais posic¸˜oes dos vizinhos ao ponto extremo.

3.1.4 ELIMINAR RU´IDOS

Na Sec¸˜ao 3.1.3, os pontos m´aximos e m´ınimos s˜ao identificados nas imagens DoG. Isto foi feito comparando os pixels vizinhos ao ponto na escala atual, na escala acima e na escala abaixo. A pr´oxima etapa ´e rejeitar alguns pontos chave que n˜ao s˜ao ´uteis como caracter´ısticas, como os pontos que n˜ao possuem contraste suficiente ou aqueles que est˜ao localizados distantes de bordas.

Para identificar pontos com baixo contraste, basta verificar a intensidade do pixel per-tencente a ele. Se o valor absoluto da intensidade do pixel for inferior a um determinado limiar, o ponto ent˜ao ´e rejeitado. ´E importante lembrar que muitas vezes pontos chave s˜ao localizados em subpixels. Assim, mais uma vez, ´e necess´ario usar a expans˜ao de Taylor para obter o valor da intensidade nesses locais, como resumidamente apresentado na Sec¸˜ao 3.1.3.

Para detectar caracter´ısticas pr´oximas de bordas, pode ser adotada uma aproximac¸˜ao semelhante ao detector de bordas de Harris (HARRIS; STEPHENS, 1988). ´E um recurso ´util para encontrar caracter´ısticas em imagens, al´em de ser invariante `a rotac¸˜ao, escala e iluminac¸˜ao. Essa metodologia resume-se em utilizar janelas para encontrar grandes variac¸˜oes de textura. A ideia ´e utilizar esse detector para selecionar regi˜oes de bordas, os quais geralmente representam bons pontos chave. Fazendo essa selec¸˜ao, as demais regi˜oes s˜ao descartadas.

Na Figura 11, o quadro azul representa a janela que est´a sendo processada. Ao movi-ment´a-la ao redor da sua posic¸˜ao original, para as posic¸˜oes destacadas em amarelo ou vermelho, n˜ao ser´a encontrada uma variac¸˜ao muito grande, pois o conte´udo das janelas ´e semelhante. J´a a diferenc¸a da intensidade dos pixels entre a janela azul e a verde ´e grande, mas neste caso a janela verde est´a muito distante da sua posic¸˜ao inicial, o que n˜ao ajuda a determinar se ali de fato ´e uma regi˜ao pr´oxima de bordas.

A Figura 12 ilustra uma janela com forte tendˆencia a representar uma borda. ´E impor-tante perceber como um pequeno movimento da janela j´a produz uma diferenc¸a percept´ıvel. A

(38)

Figura 11: Janelas utilizadas no detector de bordas de Harris.

Fonte: Autoria pr´opria

Figura 12: Janela de Harris com pequeno deslocamento sugerindo a presenc¸a de uma borda.

Fonte: Autoria pr´opria representac¸˜ao matem´atica deste processo ´e definida a seguir.

E(u,v) =

x,yw(x,y)[I(x + u,y + v) − I(x,y)]

2, (20)

onde:

• E ´e a diferenc¸a entre o original e a janela deslizante. • u ´e o deslocamento da janela na direc¸˜ao x.

• v ´e o deslocamento da janela na direc¸˜ao y.

(39)

• I ´e a intensidade da imagem de cada uma das posic¸˜oes (x,y). • I(x + u,y + v) ´e a intensidade da janela movida.

• I(x,y) ´e a intensidade do pixel original.

Como o objetivo ´e procurar por janelas com alto valor de E, ´e preciso aumentar os valores dos termos entre colchetes. Para isso, basta aplicar a s´erie de Taylor para representar os termos com base nas suas derivadas.

E(u,v) ≈

x,y

[I(x,y) + uIx+vIy− I(x,y)]2 (21) Veja como I(x + u,y + v) se transformou em I(x,y) + uIx+vIy. Como a s´erie de Taylor tende a infinito, o ´ultimo termo pode ser desprezado. O pr´oximo passo ´e expandir quadrados da func¸˜ao, como definido na Equac¸˜ao 22.

E(u,v) ≈

x,y

u2Ix2+2uvIxIy+v2Iy2 (22) A Equac¸˜ao 22 pode ser refinada sob a forma de uma equac¸˜ao matricial:

E(u,v) ≈ [uv] "

I 2 x IxIy IxIy Iy2 !# u v  (23) Agora, denominado a somat´oria da matriz de M:

M =

W (x,y) Ix2 IxIy IxIy Iy2

!

(24) A equac¸˜ao resume-se em:

E(u,v) ≈ [uv]M u

v 

(25) A partir da Equac¸˜ao 25 ´e poss´ıvel determinar quais janelas produzem variac¸˜oes sig-nificativas quando deslocadas a uma direc¸˜ao pr´oxima da original. Para isso, basta adotar uma pontuac¸˜ao R que ´e calculada a partir do valor pr´oprio, do determinante e do trac¸o da matriz M, definindo a Equac¸˜ao 26. Toda a janela cujo valor R for maior do que um determinado limiar ´e considerada regi˜ao de borda.

R = detM − k(trac¸oM) detM = λ1λ2 trac¸oM = λ1+ λ2

(40)

3.1.5 ATRIBUIR ORIENTAC¸ ˜OES AOS PONTOS CHAVE

A etapa descrita na Sec¸˜ao 3.1.4 ´e importante para descartar pontos chave menos pro-missores. A pr´oxima etapa ´e atribuir orientac¸˜oes aos pontos chave restantes para proporcionar invariˆancia `a rotac¸˜ao. Isso pode ser feito a partir do vetor gradiente ao redor de cada ponto chave. Magnitudes e orientac¸˜oes do vetor gradiente devem ser calculadas para todos os pixels ao redor do ponto chave, utilizando a Equac¸˜ao 27 (SCHMID; MOHR, 1997) . Depois disso, um histograma ´e criado com todas as poss´ıveis orientac¸˜oes (360 graus) divididas em 36 bins.

m(x,y) =q(L(x + 1,y) − L(x − 1,y))2+ (L(x,y + 1) − L(x,y − 1))2

θ (x,y) = tan−1((L(x,y + 1) − L(x,y − 1))/(L(x + 1,y) − L(x − 1,y))) (27) Em outras palavras, suponha que a orientac¸˜ao de um determinado pixel ´e de 32,11 graus. Esse pixel ser´a atribu´ıdo ao quarto bin do histograma, j´a que neste bin est˜ao os pixels que possuem orientac¸˜ao de 30 a 39 graus. Aplicando esse procedimento nos pixels vizinhos do ponto chave, ´e poss´ıvel identificar qual bin possui maior quantidade de pixels. No histograma representado pela Figura 13, o terceiro bin possui o maior pico. Logo a orientac¸˜ao do ponto ser´a calculada como a m´edia das orientac¸˜oes dos pixels desse bin. Al´em disso, qualquer pico com 80% ou mais de ocorrˆencias ser´a convertido para um novo ponto chave, com a mesma localizac¸˜ao e escala do ponto original, por´em com orientac¸˜ao pr´opria.

Figura 13: Histograma utilizado para atribuir a orientac¸˜ao do ponto chave.

(41)

3.1.6 GERAR CARACTER´ISTICAS SIFT

Nesta etapa, os pontos chave selecionados j´a s˜ao invariantes `a escala e rotac¸˜ao. Agora ´e preciso gerar as caracter´ısticas SIFT, que podem ser consideradas uma “impress˜ao digital” de cada ponto. Em geral, um objeto n˜ao ´e exatamente o mesmo em duas imagens distintas. Sempre h´a uma mudanc¸a no ˆangulo de captura das imagens ou na iluminac¸˜ao do ambiente. Essas pequenas diferenc¸as devem ser levadas em considerac¸˜ao ao gerar a “impress˜ao digital” do ponto chave.

Para gerar as caracter´ısticas SIFT, primeiramente ´e necess´ario criar uma janela de 16 x 16 pixels em torno do ponto chave. Esta janela ser´a dividida em dezesseis subjanelas menores, todas com tamanho 4 x 4, conforme Figura 14.

Figura 14: Janelas ao redor do ponto chave, destacado em vermelho. ´Uteis para gerar as carac-ter´ısticas SIFT.

Fonte: (LOWE, 2004)

O vetor de caracter´ısticas SIFT ´e determinado pela orientac¸˜ao dos pixels vizinhos ao redor do ponto chave. Semelhante `a etapa descrita na Sec¸˜ao 3.1.5, ser´a necess´ario criar um his-tograma e distribuir os pixels de acordo com suas orientac¸˜oes. A diferenc¸a ´e que o hishis-tograma para a atual distribuic¸˜ao ser´a constru´ıdo somente com oito bins. Dessa forma, o primeiro bin ir´a compreender todos os pixels com orientac¸˜oes entre 0 a 44 graus, o segundo bin entre 45 a 89 graus e assim por adiante. O n´umero de pixels no bin dever´a ser incrementado de acordo com a distˆancia do pixel at´e o ponto chave. Assim, gradientes que est˜ao muito distantes do ponto ser˜ao adicionados com menor relevˆancia no histograma. Isso ´e feito com uma func¸˜ao de ponderac¸˜ao gaussiana, que retorna um gradiente semelhante uma curva de sino 2D. A magni-tude das orientac¸˜oes dever´a ser multiplicada pelo retorno da func¸˜ao e o resultado ser´a um valor ponderado. Quanto mais longe, menor o valor final.

(42)

Figura 15: Func¸˜ao de ponderac¸˜ao gaussiana atuando como func¸˜ao de sino 2D.

Fonte: (SINHA, 2010)

ser˜ao tratadas e distribu´ıdas entre os bins pr´e-determinados. Repetindo a mesma t´ecnica em todas as dezesseis janelas, o resultado final ser´a um conjunto de 128 valores de magnitude e orientac¸˜oes. Uma vez normalizados, esses 128 valores v˜ao formar o vetor de caracter´ısticas que identifica exclusivamente o ponto chave na imagem. A Figura 14 mostra que o ponto-chave n˜ao se encontra exatamente em um pixel. Por isso, ´e preciso interpolar a imagem para gerar dados de orientac¸˜ao e magnitude “entre” pixels.

O vetor de caracter´ısticas usa orientac¸˜oes do gradiente dos pixels vizinhos em relac¸˜ao ao pixel central da janela e, ao girar a imagem, todas essas orientac¸˜oes podem mudar. Para alcanc¸ar a independˆencia de rotac¸˜ao, basta subtrair a rotac¸˜ao do ponto chave de cada orientac¸˜ao de gradiente. Assim, os valores de orientac¸˜ao de gradiente ser˜ao relativos `a orientac¸˜ao do ponto chave.

O ´ultimo passo ´e tornar o vetor de caracter´ısticas invariante `a iluminac¸˜ao. Isso ´e uma tarefa razoavelmente simples: qualquer valor do vetor que for maior que um determinado limiar deve ser substitu´ıdo pelo valor do limiar. Em outras palavras, trata-se uma limiarizac¸˜ao do vetor por meio de valores correspondentes `a iluminac¸˜ao (LOPES, 2003). Finalmente o vetor de caracter´ısticas est´a pronto para identificar um ponto chave espec´ıfico na imagem.

3.2 SURF

O Speeded Up Robust Features (SURF) (BAY et al., 2008) ´e uma t´ecnica de extrac¸˜ao de descritores capaz de gerar caracter´ısticas em imagens que n˜ao s˜ao de natureza similar. Tornou-se muito popular, pois agrega caracter´ısticas invariantes `as transformac¸˜oes de rotac¸˜ao e escala. Segundo os autores da t´ecnica, o SURF se aproxima ou mesmo supera metodologias propostas anteriormente em relac¸˜ao a distinc¸˜ao e a robustez, mas sua execuc¸˜ao ´e computacionalmente

(43)

mais r´apida do que as metodologias similares. Isto ´e poss´ıvel pois o algoritmo ´e constru´ıdo com base em detectores e descritores bem conhecidos, como a matriz Hessiana (detector) (MI-KOLAJCZYK; SCHMID, 2001) e um descritor baseado em distribuic¸˜ao de frequˆencias. Al´em disso, a metodologia utiliza a t´ecnica de integral de imagem para convoluc¸˜oes, o que torna todo o processo menos custoso computacionalmente.

3.2.1 APROXIMAC¸ ˜AO DE LOG E LOCALIZAC¸ ˜AO DE PONTOS CHAVE

Em seu algoritmo, Lowe aproxima os Laplacianos de Gaussianas (LoG) por meio de uma t´ecnica chamada de Diferenc¸as de Gaussianas (DoG), como resumidamente descrito na sec¸˜ao 3.1.2. Isso ´e feito para que o m´etodo possa encontrar pontos chave em potencial. En-tretanto, o SURF altera este conceito e utiliza uma t´ecnica de aproximac¸˜ao chamada de Box Filter. A vantagem ´e que este m´etodo pode ser facilmente calculado com o uso de integrais de imagens, as quais podem ser realizadas de forma paralela em diferentes escalas. Al´em disso, o Box Filter utiliza uma matriz Hessiana para aproximac¸˜ao das LoG e localizac¸˜ao de pontos chave, conforme definido na Equac¸˜ao 28.

H (x,σ) = Lxx(x,σ) Lxy(x,σ) Lxy(x,σ) Lyy(x,σ)

!

, (28)

onde Lxx(x,σ)´e a convoluc¸˜ao da derivada de segunda ordem da Gaussiana x22g(σ), com ima-gem I no ponto x. O mesmo ´e valido para Lxy(x,σ) e Lyy(x,σ). O resultado da aproximac¸˜ao por Box Filter pode ser visualizado na Figura 16.

Figura 16: Resultado da t´ecnica de Box Filter. As janelas suavizadas s˜ao resultantes da derivada parcial de segunda ordem da func¸˜ao Gaussiana. A partir delas, ´e realizada uma aproximac¸˜ao com a t´ecnica Box Filter.

Fonte: (BAY et al., 2008)

A localizac¸˜ao dos pontos chave ´e definida pelo determinante da matriz Hessiana.

det(Haprox) =Dxx− (ωDxy) (29)

(44)

tamanho da m´ascara do Box Filter (normalmente utilizada 9 x 9) e do valor da constante σ da suavizac¸˜ao Gaussiana (normalmente 1.2).

ω = |Lxyσ|F|Dyy(9)|F

|Lyyσ|F|Dxy(9)|F ≈ 0,9 (30)

3.2.2 INTEGRAL DE IMAGEM

A integral de imagem ´e uma t´ecnica muito ´util, pois permite fazer diversos c´alculos em sub-regi˜oes de uma imagem rapidamente. Com ela, medidas como soma e m´edia podem ser realizadas de maneira muito eficiente (CROW, 1984) (VIOLA; JONES, 2001) (BAY et al., 2008). Para calcular uma integral de imagem, basta somar a cada pixel o valor dos pixels localizados acima e a esquerda. Por motivos computacionais, se a imagem original possui tamanho C x L a integral de imagem dever´a ter dimens˜oes C+1 x L+1, com a primeira linha e a primeira coluna preenchidas com zero (MATTHEW, 2010). A Figura 17 representa o processo para calcular a integral de imagem partir da imagem original.

Figura 17: Exemplo de uma integral de imagem calculada a partir da imagem original.

Fonte: Autoria pr´opria

Matematicamente esse c´alculo ´e definido pela seguinte equac¸˜ao: II(x,y) =

x0≤x y0≤y

I(x,y) (31)

onde II(x,y) ´e a integral de imagem nas coordenadas do pixel (x,y) e I(x,y) ´e a imagem original. 3.2.3 ATRIBUIR ORIENTAC¸ ˜OES AOS PONTOS CHAVE

O SIFT utiliza as magnitudes e orientac¸˜oes do vetor gradiente para definir a orientac¸˜ao do ponto chave. O SURF utiliza outro conceito para essa tarefa. As orientac¸˜oes s˜ao deter-minadas a partir da transformada de Haar (wavelets), com ponderac¸˜ao gaussiana. O c´alculo ´e feito em ambas as direc¸˜oes x e y e os resultados s˜ao distribu´ıdos ao redor do ponto chave. A

(45)

orientac¸˜ao dominante ´e determinada pela soma de todos os pontos dentro de uma janela desli-zante, com ˆangulo de 60 graus.

Figura 18: Uma janela deslizante com raio de 60 graus detecta a orientac¸˜ao dominante ao redor do ponto chave.

Fonte: (BAY et al., 2008)

3.2.4 GERANDO AS CARACTER´ISTICAS SURF

Para gerar as caracter´ısticas SURF, o primeiro passo consiste em construir uma regi˜ao quadr´atica ao redor do ponto chave e orient´a-la de acordo com a orientac¸˜ao definida na sec¸˜ao 3.2.3. O tamanho da janela utilizada ´e 20 x 20, e ser´a dividida em janelas menores com di-mens˜ao de 4 x 4 (BAY et al., 2008). Transformadas de wavelets de Haar s˜ao calculadas nas direc¸˜oes x e y, com base nos pontos de cada sub-regi˜ao, conforme Figura 19. Resumida-mente, as resposta wavelets na direc¸˜ao horizontal s˜ao chamadas de dx e as respostas wavelets na direc¸˜ao vertical s˜ao chamadas de dy. “Horizontal” e “vertical” aqui s˜ao definidos em relac¸˜ao `a orientac¸˜ao do ponto chave em quest˜ao.

Em seguida, as respostas wavelets dx e dy s˜ao sumarizadas em cada sub-regi˜ao. Os resultados das somas v˜ao formar os primeiros componentes do vetor de caracter´ısticas. Em seguida, deve-se somar tamb´em os valores absolutos das respostas |dx| e |dy|. Assim, o vetor de caracter´ısticas de uma janela ser´a definido como:

Referências

Documentos relacionados

nesta nossa modesta obra O sonho e os sonhos analisa- mos o sono e sua importância para o corpo e sobretudo para a alma que, nas horas de repouso da matéria, liberta-se parcialmente

E ele funciona como um elo entre o time e os torcedores, com calçada da fama, uma série de brincadeiras para crianças e até área para pegar autógrafos dos jogadores.. O local

Segundo Éric Laurent, a psicose ordinária se caracteriza pela não resposta aos significantes-mestres tradicionais, manifestando o fim do poder do Nome-do-Pai como

3.3 o Município tem caminhão da coleta seletiva, sendo orientado a providenciar a contratação direta da associação para o recolhimento dos resíduos recicláveis,

O valor da reputação dos pseudônimos é igual a 0,8 devido aos fal- sos positivos do mecanismo auxiliar, que acabam por fazer com que a reputação mesmo dos usuários que enviam

Os valores encontrados para os coeficientes foram de 0,71 e 0,68 para número de adultos vivos e de ovos, respectivamente, na face adaxial e de 0,56 e 0,64, para essas mesmas

Os testes de desequilíbrio de resistência DC dentro de um par e de desequilíbrio de resistência DC entre pares se tornarão uma preocupação ainda maior à medida que mais

Frente ao exposto, este trabalho teve por objetivo avaliar discentes da disciplina de Matemática Discreta nos conteúdos de lógica formal, teoria dos conjuntos e