Fusão de descritores de histogramas de gradientes para a ...‡ÃO... · ria˘c~oes de pose e...

113
Fus˜ ao de descritores de histogramas de gradientes para a detec¸c˜ ao de faces baseado em uma cascata de classificadores Lourdes Ram´ ırez Cerna Universidade Federal de Ouro Preto UNIVERSIDADE FEDERAL DE OURO PRETO Orientador: Guillermo C´ amara Ch´ avez Disserta¸c˜ ao submetida ao Instituto de Ciˆ encias Exatas e Biol´ogicas da Universidade Federal de Ouro Preto para obten¸c˜ ao do t´ ıtulo de Mestre em Ciˆ encia da Computa¸ ao Ouro Preto, Novembro de 2014

Transcript of Fusão de descritores de histogramas de gradientes para a ...‡ÃO... · ria˘c~oes de pose e...

Fusao de descritores de histogramas degradientes para a deteccao de faces

baseado em uma cascata declassificadores

Lourdes Ramırez CernaUniversidade Federal de Ouro Preto

UNIVERSIDADE FEDERAL DE OURO PRETO

Orientador: Guillermo Camara Chavez

Dissertacao submetida ao Instituto de Ciencias

Exatas e Biologicas da Universidade Federal de

Ouro Preto para obtencao do tıtulo de Mestre

em Ciencia da Computacao

Ouro Preto, Novembro de 2014

ii

Fusao de descritores de histogramas degradientes para a deteccao de faces

baseado em uma cascata declassificadores

Lourdes Ramırez CernaUniversidade Federal de Ouro Preto

Orientador: Guillermo Camara Chavez

ii

Catalogação: www.sisbin.ufop.br

R177f Ramírez Cerna, Lourdes. Fusão de descritores de histogramas de gradientes para adetecção de faces baseado em uma cascata de classificadores[manuscrito] / Lourdes Ramírez Cerna. - 2014. 111f.: il.: color; grafs; tabs.

Orientador: Prof. Dr. Guillermo Cámara Chávez.

Dissertação (Mestrado) - Universidade Federal de OuroPreto. Instituto de Ciências Exatas eBiológicas.Departamento de Computação.Programa de Pós-graduaçãoem Ciência da Computação. Área de Concentração Visão Computacional.

1. Computação gráfica. I. Cámara Chávez, Guillermo. II.Universidade Federal de Ouro Preto. III. Titulo.

CDU: 004.92

Dedico este trabalho aos meus pais que sempre me apoiaram na realizacao dos meus

sonhos, mostrando afeto e carinho incondicional durante essa nova etapa da minha

vida. Gracas a eles eu consegui atingir meus objetivos. Ao meu irmao que se encontra

em algum lugar perto de Deus, influenciou espiritualmente para que eu possa continuar

no caminho certo.

v

vi

Fusao de descritores de histogramas de gradientes para

a deteccao de faces baseado em uma cascata de

classificadores

Resumo

O problema de deteccao de faces em imagens ou vıdeos tem sido amplamente estudado

pela comunidade cientıfica. Muitas pesquisas foram desenvolvidas durante decadas desde

as mais simples ate as mais complexas com a finalidade de superar alguns problemas

existentes nas imagens ou vıdeos, por exemplo: oclusao, mudancas de iluminacao, va-

riacoes de pose e escala, entre outros. Neste trabalho e proposto um metodo de deteccao

de faces que concatena o Histograma de Gradientes Orientados (HOG) e o Histograma

de Gradientes Orientados Medios (HAOG) para finalmente classifica-los dados atraves

de uma cascata de classificadores de “uma classe” baseados no modelo convexo mais

proximo. A cascata de classificadores de “uma classe” permitem gerar classificadores

mais simples com uma rejeicao de falsos positivos mais rapida. A fim de reduzir a regiao

de busca e utilizado um algoritmo de deteccao de pele, o que tambem permite diminuir

o numero de falsos positivos, sendo esta caracterıstica a principal contribuicao deste

trabalho. Logo, e gerada uma piramide de imagens com o intuito de detectar faces de

diferentes tamanhos nas regioes configuradas como pele. O metodo proposto conseguiu

uma melhor acuracia e o menor numero de falsos positivos quando foi comparado com

os metodos HOG, HAOG, HOG-LBP (Cevikalp et al. 2013) e (Viola and Jones 2004).

Mostrou-se resultados promissores quando comparados com os metodos do estado da

arte considerados no benchmark da base FDDB (Jain and Learned Miller 2010).

vii

viii

Fusion of histograms of gradients descriptors for face

detection based in a cascade of classifiers

Abstract

Face detection problem in images or videos has been widely studied by scientific commu-

nity. Many researches have been developed in the last decades, from the most simple to

the most complex to overcome some problems related in images or videos, i.e. occlusion,

illuminations changes, pose and scale variations, among others. This thesis proposes a

method for face detection problem, which concatenates Histogram of Oriented Gradi-

ents and Histogram of Averaged Oriented Gradients to classify them through a cascade

of “one class” classifiers based on the nearest convex model. A cascade of “one class”

classifiers generate simples classifiers to reject false positives quickly. To reduce the se-

arch region and the false positives number is used a skin detection algorithm, which is

the principal contribution of this work. Then, we generate a pyramid image to detect

faces with different size in the skin regions. The proposed method achieved the best

accuracy and the fewest false positives number when we compare with HOG, HAOG,

HOG-LBP (Cevikalp et al. 2013) and (Viola and Jones 2004) methods. We reached

promising results when we compared with state-of-the-art methods considered in the

FDDB benchmark (Jain and Learned Miller 2010).

ix

x

Declaracao

Esta dissertacao e resultado de meu proprio trabalho, exceto onde referencia explıcita e

feita ao trabalho de outros, e nao foi submetida para outra qualificacao nesta nem em

outra universidade.

Lourdes Ramırez Cerna

xi

xii

Agradecimentos

Agradeco a Deus por me cuidar durante minha estadia em Ouro Preto.

Aos meus pais e melhores amigos, Briza e Julton, pelo apoio espiritual e carinho

recebido.

A toda minha famılia, pela forca e por sempre acreditar em mim.

Agradeco ao meu orientador Guillermo Camara Chavez e sua esposa Yudy Acosta

Choque pela oportunidade concedida e pelo suporte dado durante o desenvolvimento do

trabalho.

Agradeco a todos os professores do Programa de Pos-graduacao em Ciencias da

Computacao, pelo apoio e conhecimentos recebidos durante o desenvolvimento da minha

pesquisa.

A UFOP pelo apoio recebido no desenvolvimento deste trabalho.

Finalmente, agradeco a todos meus colegas e amigos, que me acompanharam e aju-

daram na realizacao deste trabalho, em especial Emilia Alves, Fernanda Jardim, Isabella

Alves, Istela Cruz, Marco Antonio, Karla Otiniano, Edward Cayllahua, Edwaldo Rodri-

gues e meu noivo Edwin Escobedo que sempre esteve ao meu lado.

xiii

xiv

Sumario

Lista de Figuras xix

Lista de Tabelas xxiii

1 Introducao 1

1.1 Motivacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.2 Problema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.3 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.3.1 Objetivo Geral . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

1.3.2 Objetivos Especıficos . . . . . . . . . . . . . . . . . . . . . . . . . 5

1.4 Contribuicoes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

1.5 Organizacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2 Revisao Bibliografica 7

2.1 Tecnicas Baseadas em Caracterısticas . . . . . . . . . . . . . . . . . . . . 7

2.1.1 Analise de Baixo Nıvel . . . . . . . . . . . . . . . . . . . . . . . . 8

2.1.2 Analise de Caracterısticas . . . . . . . . . . . . . . . . . . . . . . 10

2.1.3 Modelos de Forma Ativa . . . . . . . . . . . . . . . . . . . . . . . 11

2.2 Tecnicas Baseadas em Imagens . . . . . . . . . . . . . . . . . . . . . . . 11

2.2.1 Metodos de Subespacos Lineares . . . . . . . . . . . . . . . . . . . 12

xv

2.2.2 Redes Neuronais . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.2.3 Analise Probabilısticos . . . . . . . . . . . . . . . . . . . . . . . . 13

2.3 Consideracoes Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

3 Referencial Teorico 15

3.1 Descritores de Caracterısticas . . . . . . . . . . . . . . . . . . . . . . . . 15

3.1.1 Descritores Haar-like . . . . . . . . . . . . . . . . . . . . . . . . . 15

3.1.2 Histograma de Gradientes Orientados (HOG) . . . . . . . . . . . 18

3.1.3 Histograma de Gradientes Orientados Medios (HAOG) . . . . . . 20

3.2 Classificacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3.2.1 Maquinas de Vetores de Suporte . . . . . . . . . . . . . . . . . . . 23

3.2.2 Boosting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

3.2.3 Classificador de “uma classe” baseado no Modelo Convexo mais

Proximo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

3.3 Robust Real-Time Face Detection . . . . . . . . . . . . . . . . . . . . . . 35

3.4 Consideracoes Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

4 Metodo Proposto 37

4.1 Deteccao de Pele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

4.2 Piramide de Imagens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

4.3 Fusao dos descritores de caracterısticas . . . . . . . . . . . . . . . . . . . 43

4.4 Classificacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

4.5 Supressao de nao-maximos . . . . . . . . . . . . . . . . . . . . . . . . . . 46

4.6 Consideracoes Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

5 Experimentos 49

5.1 Base de Dados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

xvi

5.2 Definicao de parametros . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

5.3 Consideracoes Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

6 Resultados e Discussao 57

6.1 Base de Dados de Teste . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

6.2 Ferramenta de Avaliacao . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

6.3 Experimentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

6.4 Consideracoes Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

7 Conclusoes e Trabalhos Futuros 77

7.0.1 Trabalhos Futuros . . . . . . . . . . . . . . . . . . . . . . . . . . 78

Referencias Bibliograficas 79

xvii

xviii

Lista de Figuras

1.1 Mercado dos Biometricos1 . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.2 Exemplo do reconhecimento de faces tendo como primeiro passo a de-

teccao deles. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.3 Exemplo de imagens de faces extraıdas da base de treino de (Viola and

Jones 2004). As faces apresentam muitas variacoes de pose, expressao

facial, cor de pele, mudancas de iluminacao, entre outros. . . . . . . . . . 4

2.1 Classificacao das tecnicas de deteccao de faces. . . . . . . . . . . . . . . . 8

2.2 Formas mais comuns das faces das pessoas. . . . . . . . . . . . . . . . . . 9

2.3 Exemplos de eigen faces. . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2.4 Diagrama do sistema de Rowley et al. (1998). . . . . . . . . . . . . . . . 13

3.1 Exemplos das caracterısticas retangulares, parecem ser semelhantes a

uma janela de deteccao. Calcula-se a diferenca da soma dos pixels dos

retangulos brancos com os retangulos cinza. Figura (A) e (B) sao exem-

plos das caracterısticas de dois retangulos. Figura (C), corresponde as ca-

racterısticas de tres retangulos e (D) as caracterısticas de quatro retangulos. 16

3.2 Exemplo do calculo da imagem integral. . . . . . . . . . . . . . . . . . . 17

3.3 Extracao de Caracterısticas. . . . . . . . . . . . . . . . . . . . . . . . . . 18

3.4 Passos da extracao do descritor HOG em uma sub-janela de busca. . . . 19

3.5 Orientacao do histograma e formato das celulas. . . . . . . . . . . . . . . 19

3.6 Passos da extracao do descritor HAOG em uma sub-janela de busca. . . 22

xix

3.7 Classificacao dos exemplos da classe 1 e 2 mediante um hiperplano. . . . 23

3.8 Esquema do Boosting. Cada classificador base ym(x) e treinado utilizando

uma ponderacao do conjunto de treino (setas azuis), onde os pesos w(m)n

dependem da performance do classificador base ym−1(x) (setas verdes).

Uma vez que todos os classificadores base tem sido treinados, eles sao

combinados para formar um classificador final YM(x) (setas vermelhas). . 26

3.9 (a) Dados de entrada: o espaco de caracterısticas dos objetos da classe

positiva e o fundo da classe negativa sao representados como triangulos

azuis e pontos pretos. (b) Na primeira etapa da cascata, usa-se um clas-

sificador linear que utiliza a interseccao de hiperplanos para aproximar a

classe. Exemplos que ficam fora dos hiperplanos sao classificados como

negativos e sao rejeitados. Os exemplos de fundo que sobreviveram a

essa etapa sao mostrados como pontos vermelhos. (c) A segunda etapa e

um classificador de uma classe no espaco linear, que aproxima a regiao da

classe dos objetos com uma hiperesfera delimitadora. A maioria dos falsos

positivos que sobreviveram na primeira etapa sao rejeitados. (d) A etapa

final da cascata e um classificador de uma classe nao linear, que aproxima

a regiao positiva com mais acuracia e toma a decisao final, (Cevikalp and

Triggs 2012). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

3.10 Hiperplano linear que aproxima a classe positiva. . . . . . . . . . . . . . 29

3.11 Hiperesfera linear que aproxima a classe positiva. . . . . . . . . . . . . . 31

3.12 Hiperesfera nao linear que aproxima a classe positiva. . . . . . . . . . . . 34

4.1 Metodo proposto para Deteccao de faces. . . . . . . . . . . . . . . . . . . 38

4.2 Exemplos dos diferentes tipos de problemas em uma imagem. . . . . . . . 38

4.3 Diagrama de blocos de deteccao de pele. . . . . . . . . . . . . . . . . . . 40

4.4 Deteccao de pele. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

4.5 Piramide de Imagens. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

4.6 Imagem com faces de diferentes tamanhos. . . . . . . . . . . . . . . . . . 42

4.7 Imagem das texturas com alto contrastes enfatizadas. . . . . . . . . . . . 44

xx

4.8 Exemplo do descritor HAOG. . . . . . . . . . . . . . . . . . . . . . . . . 44

4.9 Vetor de caracterısticas dos descritores HOG e HAOG concatenados. . . 45

4.10 Exemplo de multiplas janelas detectadas para uma unica face. . . . . . . 46

5.1 Exemplos das imagens da base de treino. . . . . . . . . . . . . . . . . . . 50

6.1 Exemplos das imagens da base FDDB. . . . . . . . . . . . . . . . . . . . 58

6.2 Exemplos das imagens da base AFW. . . . . . . . . . . . . . . . . . . . . 58

6.3 Essa imagem e um exemplo do casamento entre as deteccoes (retangulos)

e as anotacoes (elipses). A segunda face a esquerda tem duas deteccoes

sobrepostas, portanto seleciona-se aquela com maior porcentagem de ca-

samento com a elipse. O segundo retangulo amarelo e um falso positivo. . 59

6.4 Exemplo do emparelhamento de peso maximo em um grafo bipartido.

Gera-se um mapeamento injetivo do conjunto das regioes detectadas di

ao conjunto das anotacoes li. A propriedade do mapeamento resultante

e maximizar a semelhanca cumulativa ponderada de todas as regioes de-

tectadas na imagem. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

6.5 Espaco ROC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

6.6 Curvas ROC discretas sobre a base FDDB. . . . . . . . . . . . . . . . . . 63

6.7 Curvas ROC contınuas sobre a base FDDB. . . . . . . . . . . . . . . . . 63

6.8 Curvas ROC discretas normalizadas sobre a base FDDB. . . . . . . . . . 64

6.9 Curvas ROC contınuas normalizadas sobre a base FDDB. . . . . . . . . . 65

6.10 Curvas ROC discretas do metodo proposto; usando so um SVM linear;

sem usar o detector de pele e a cascata modificada sobre a base FDDB. . 66

6.11 Curvas ROC contınuas do metodo proposto; usando so um SVM linear;

sem usar o detector de pele e a cascata modificada sobre a base FDDB. . 66

6.12 Curvas ROC discretas normalizadas de alguns metodos do estado da arte. 68

6.13 Curvas ROC contınuas normalizadas de alguns metodo do estado da arte. 68

xxi

6.14 Curvas ROC discretas do metodo proposto; usando so um SVM linear;

sem usar o detector de pele e a cascata modificada sobre a base AFW. . 70

6.15 Curvas ROC contınuas do metodo proposto; usando so um SVM linear;

sem usar o detector de pele e a cascata modificada sobre a base AFW. . 70

6.16 Curvas ROC discretas sobre a base AFW. . . . . . . . . . . . . . . . . . 72

6.17 Curvas ROC contınuas sobre a base AFW . . . . . . . . . . . . . . . . . 72

6.18 Curvas ROC discretas normalizadas sobre a base AFW. . . . . . . . . . . 73

6.19 Curvas ROC contınuas normalizadas sobre a base AFW. . . . . . . . . . 74

xxii

Lista de Tabelas

5.1 Resultados da Acuracia Media, Desvio Padrao e o F-score de cada parametro

do descritor HOG: [bloco, celula, bin]. . . . . . . . . . . . . . . . . . . . . 52

5.2 Resultados da Acuracia Media, Desvio Padrao e o F-score obtidos para

cada configuracao do descritor HAOG: [bloco, celula, bin]. . . . . . . . . 53

5.3 Resultados da Acuracia Media, Desvio Padrao e o F-score obtidos para

cada configuracao dos descritores HOG-HAOG: [bloco, celula, bin]. . . . 54

5.4 Resultados da Acuracia Media, Desvio Padrao e o F-score dos descritores

HOG-HAOG nas imagens de 50× 50 pixels e 64× 64 pixels. . . . . . . . 54

5.5 Parametros C+ e C−, controlam o peso dos erros associados com a classe

positiva e negativa. O valor da constante Delta esta no intervalo de [0 a

1] e restringe os exemplos positivos dentro de dois hiperplanos paralelos. 55

6.1 Resultados da taxa de Verdadeiros Positivos e Numero de Falsos Positivos

de cada metodo sobre a base FDDB. . . . . . . . . . . . . . . . . . . . . 64

6.2 Resultados da AUC discreta e contınua de cada metodo sobre a base FDDB. 65

6.3 Resultados da AUC discreta e contınua dos experimentos realizados sobre

o metodo proposto HOG-HAOG. . . . . . . . . . . . . . . . . . . . . . . 67

6.4 Resultados da Taxa de Verdadeiros Positivos e o Numero de Falsos Posi-

tivos dos experimentos realizados sobre o metodo proposto HOG-HAOG. 67

6.5 Resultados da AUC discreta e contınua de cada metodo sobre a base FDDB. 69

6.6 Resultados da AUC discreta e contınua dos experimentos realizados sobre

o metodo proposto HOG-HAOG. . . . . . . . . . . . . . . . . . . . . . . 71

xxiii

6.7 Resultados da Taxa de Verdadeiros Positivos e o Numero de Falsos Posi-

tivos dos experimentos realizados sobre o metodo proposto HOG-HAOG. 71

6.8 Resultados da taxa de Verdadeiros Positivos e numero de Falsos Positivos

de cada metodo sobre a base AFW. . . . . . . . . . . . . . . . . . . . . . 73

6.9 Resultados da AUC discreta e contınua de cada metodo sobre a base AFW. 74

xxiv

“A imaginacao e mais importante que a ciencia, porque a ciencia e limitada, ao passo

que a imaginacao abrange o mundo inteiro.”

— Albert Einstein

xxv

xxvi

Capıtulo 1

Introducao

1.1 Motivacao

Com o rapido avanco do poder computacional, os equipamentos renderizados e as tec-

nologias, os computadores tornaram-se mais complexos. Muitos projetos de pesquisa e

produtos comerciais tem mostrado a capacidade dos computadores de interagir com os

humanos de forma natural, por exemplo: vigiar o acesso das pessoas atraves de cameras,

processar e entender o que as pessoas falam atraves de microfones, entre outros.

A medida que a internet e o comercio eletronico vem crescendo, precisam de maior

seguranca. Para atingir um nıvel maior de seguranca, utiliza-se as tecnologias de re-

conhecimento que dependem das caracterısticas biologicas das pessoas, por exemplo: a

face; impressao digital; os padroes da ıris; a assinatura manuscrita (Guest and Henniger

2013). Esses atributos humanos sao unicos e nao podem ser duplicados, esquecidos ou

roubados.

A Figura 1.1 mostra um grafico comparativo dos principais biometricos utilizados

no mercado. Segundo a uma nova pesquisa do mercado de tecnologias biometricas

Next Generation Biometric Market (Jain and Learned Miller 2014-2020), o mercado

de biometricos valera 23, 54 bilhoes de dolares em 2020 com uma taxa composta de

crescimento anual de 17.6%. Isso significa que as tecnologias de biometricos como: face,

impressao digital, ıris, voz, assinatura, DNA e a palma da mao, estao sendo utilizadas

em diferentes aplicacoes. De todos os tipos citados, a face, a impressao digital e ıris

sao comumente usados na maioria das aplicacoes de reconhecimento, sendo a impressao

digital o mais antigo.

1

2 Introducao

Figura 1.1: Mercado dos Biometricos1

Os mercados brasileiros mostram muito interesse no uso das aplicacoes biometricas,

isso e um bom indicador das tendencias futuras no uso dessa tecnologia. Por exemplo,

as redes bancarias brasileiras estao implantando caixas eletronicos com sistemas de au-

tenticacao biometrica para fornecer maior seguranca e comodidade aos consumidores; os

dispositivos moveis tambem introduziram autenticacao biometrica para que possam “re-

conhecer seu donos” e proteger seus dados antes que os usuarios estejam mais inclinados

em bloquear seus celulares; as redes sociais (Facebook) utilizam aplicacoes biometricas

como deteccao de faces nas fotografias e reconhecimento para marcar os seus amigos.

No caso dos sistemas de seguranca, anteriormente requeriam uma constante supervisao

humana. Com o desenvolvimento dos sistemas automaticos de seguranca combinando

diferentes biometricos, pode-se detectar e reconhecer pessoas para ingressar em um de-

terminado estabelecimento.

O reconhecimento de pessoas e uma area de muito interesse dos pesquisadores, se-

gundo os motivos explicados acima. Porem, o primeiro passo do reconhecimento e a

deteccao de faces, porque se quisermos reconhecer uma determinada pessoa, primeira-

mente devemos saber onde ela se encontra, por exemplo em uma fotografia ou vıdeo,

ver Figura 1.2. Alem disso, localizar faces nos diferentes cenarios nao e uma tarefa

facil porque surgem problemas que podem dificultar a deteccao de faces, por exemplo:

a iluminacao do cenario complexo, as diferentes posicoes e escala das faces, imagens

mal focadas, expressoes faciais, cor de pele, entre outros. Os pesquisadores tambem

1Fonte: International Biometric Group, http://www.penpower.net/brand_en/3_0technology/3_7technology.html.

Introducao 3

mostraram preocupacao em desenvolver diferentes algoritmos robustos para detectar fa-

ces ja que podem ser utilizados em varias aplicacoes: identificacao de expressao facial,

rastreamento, sistemas de seguranca, interacao humano-computador, etc.

Figura 1.2: Exemplo do reconhecimento de faces tendo como primeiro passo a deteccaodeles.

1.2 Problema

A deteccao de faces e uma tarefa muito importante no reconhecimento das pessoas.

Muitos algoritmos foram desenvolvidos para tornar essa tarefa mais facil, mas no cenario

do mundo real (imagens ou vıdeos) e complexa pois as faces sao objetos dinamicos

com formas diversas, cores e textura. Alem disso, as faces apresentam variacoes de

escala, pose, oclusao, mudancas de iluminacao, diferentes expressoes faciais, entre outros

(Figura 1.3). A alta variabilidade da aparencia das faces afeta mais a deteccao do que

a identidade deles, no caso do reconhecimento.

Outra dificuldade existente na deteccao de faces e a falta de imagens com esses tipos

de problemas na fase de treinamento. Entao, a pouca informacao disponıvel nao e

suficiente para cobrir a variabilidade da aparencia e pode apresentar problemas na fase

de teste, pois utiliza imagens ou vıdeos do mundo real. Portanto, o desempenho de um

sistema automatico de reconhecimento facial depende do resultado das deteccoes das

faces.

Na ultima decada, a deteccao de faces tem feito um progresso significativo com a

4 Introducao

Figura 1.3: Exemplo de imagens de faces extraıdas da base de treino de (Viola andJones 2004). As faces apresentam muitas variacoes de pose, expressao facial, cor depele, mudancas de iluminacao, entre outros.

publicacao do trabalho de Viola and Jones (2004). O framework apresenta problemas

quando detecta faces em cenarios complexos e o tempo de processamento para extrair

e selecionar as caracterısticas durante o treinamento e muito longo, de acordo com

as dimensoes das imagens de treino. Porem, a deteccao e rapida ja que utiliza um

conjunto de caracterısticas discriminatorias selecionadas no treino. Alem disso, varias

abordagens no estado da arte, utilizaram esse trabalho como base para combina-lo com

outros metodos para melhorar o desempenho da deteccao de faces.

1.3 Objetivos

Nesta secao, o objetivo geral e os objetivos especıficos perseguidos nesta dissertacao

serao apresentados.

Introducao 5

1.3.1 Objetivo Geral

Propor um metodo para a deteccao de faces em imagens digitais a partir da fusao dos

descritores de Histograma de Gradientes Orientados (HOG) e Histograma de Gradientes

Orientados Medios (HAOG) baseados em uma cascata de classificadores.

1.3.2 Objetivos Especıficos

Considerando o objetivo principal deste trabalho, foram selecionados os seguintes obje-

tivos especıficos:

1. Analisar a importancia da fusao dos descritores de Histograma de Gradientes Ori-

entados e Histograma de Gradientes Orientados Medios.

2. Avaliar a importancia da deteccao da pele na diminuicao do numero de janelas de

busca nas imagens.

3. Analisar a utilizacao de uma cascata de classificadores em comparacao com outros

metodos de classificacao.

4. Avaliar os resultados a partir dos resultados obtidos por outros metodos.

1.4 Contribuicoes

Existem muitas abordagens no estado da arte sobre deteccao de faces, ja que apresen-

tam diferentes algoritmos e metodos com a finalidade de atingir os melhores resultados

quando sao testados com diferentes bases de imagens criadas para desafiar a robustez

de cada um.

As contribuicoes deste trabalho sao as seguintes:

• Inicialmente foi desenvolvido um metodo para detectar faces utilizando o descri-

tor de Histograma de Gradientes Orientados junto com dicionarios de palavras,

publicado no IPCV’13, (Cerna et al. 2013).

• A segmentacao da pele nas imagens remove informacoes nao relevantes, como

o fundo da imagem e partes do corpo que ajudam a reduzir os possıveis falsos

6 Introducao

positivos encontrados. Porem, quando a pele das pessoas e escura, o algoritmo de

deteccao de pele falha.

• A geracao da piramide de imagens facilita a deteccao das faces de diferentes ta-

manhos.

• A fusao dos descritores baseados nas orientacoes dos gradientes fortes e fracos das

faces, conseguem fornecer uma maior robustez na extracao de caracterısticas antes

de utiliza-los separadamente.

• A utilizacao da cascata de classificadores rejeita o maior numero de falsos positivos,

devido aos tres estagios (Cevikalp et al. 2013): hiperplano linear, hiperesfera linear

e hiperesfera nao linear. Portanto, consegue-se melhorar a eficacia do metodo

proposto ao diminuir a quantidade de falsos positivos.

• A reducao do numero de falsos positivos detectados nas imagens, e a principal

contribuicao deste trabalho.

• Finalmente, depois de realizar os experimentos nas diferentes bases de teste, os

resultados obtidos superaram alguns metodos, alcancando um bom desempenho.

1.5 Organizacao

Os demais capıtulos deste trabalho estao organizados da seguinte forma. O Capıtulo 2

apresenta uma revisao bibliografica do problema encontrado na literatura. O Capıtulo

3 explica os metodos utilizados. O Capıtulo 4 explica a metodologia desenvolvida do

modelo proposto deste trabalho. O Capıtulo 5 apresenta a avaliacao do metodo atraves

de experimentos. O Capıtulo 6 mostra os resultados obtidos e suas consideracoes para

o problema. Finalmente, o Capıtulo 7 apresenta as consideracoes finais e os trabalhos

futuros.

Capıtulo 2

Revisao Bibliografica

Um sistema de reconhecimento de pessoas primeiro deve localizar e extrair a regiao

da face do fundo de uma imagem ou vıdeo. Existem diferentes tipos de problemas nas

imagens do mundo real, por exemplo, variacoes em escala, pose, mudancas de iluminacao,

entre outros. Portanto, muitos algoritmos foram desenvolvidos para tornar essa tarefa

mais facil (Kienzle et al. 2004, Li et al. 2011, Li and Zhang 2013, Mikolajczyk et al.

2004).

No inıcio dos anos 70, as tecnicas de deteccao de faces eram muito simples, porque

as faces (frontais) encontravam-se em ambientes controlados similares as fotos dos docu-

mentos. No comeco dos anos 90, foram feitas pesquisas mais complexas para desenvolver

algoritmos mais precisos.

Atualmente, existem varias abordagens de deteccao de faces utilizando diferentes

criterios. Modi and Macwan (2014) fizeram uma modelagem para classifica-las em duas

categorias: baseados em caracterısticas (procura encontrar caracterısticas mais impor-

tantes nas faces) e baseados em imagens (gera um modelo a partir de um conjunto de

imagens de treinamento). A classificacao das tecnicas de deteccao de faces apresentam-se

na Figura 2.1.

2.1 Tecnicas Baseadas em Caracterısticas

Utilizam a geometria da face como caracterısticas faciais, i.e. a posicao dos orgaos

faciais, a simetria e a forma da face, para localizar facilmente as faces nas imagens e

7

8 Revisao Bibliografica

Figura 2.1: Classificacao das tecnicas de deteccao de faces.

reduzir as ambiguidades entre as caracterısticas (Lu et al. 2003).

2.1.1 Analise de Baixo Nıvel

Essa tecnica trabalha diretamente com os pixels das imagens e estao baseadas nas ca-

racterısticas visuais como: cor, intensidade dos pixels, bordas, movimento, etc. Consi-

deramos as seguintes:

1. Cor de pele: A informacao de cor de uma imagem permite diferenciar as aparencias

dos objetos e e mais facil de processa-la do que usar as caracterısticas faciais (Modi

and Macwan 2014). Porem, a cor e variante as mudancas de iluminacao e apresenta

muitos problemas quando for usado para detectar e rastrear faces humanas.

Na deteccao de faces utilizam os espacos de cor RGB, YCbCr e HIS, a imple-

mentacao dos algoritmos geralmente seguem os seguintes passos: classificar a regiao

Revisao Bibliografica 9

de pele no espaco de cor escolhido, aplicar um limiar na mascara na regiao da pele

e desenhar um retangulo na regiao que corresponde a face detectada.

Hsu et al. (2002), Zhu et al. (2012), Conaire et al. (2007), Siqueira et al. (2013)

aplicaram-se deteccao na pele para facilitar a localizacao das faces nas imagens,

mas quando o cenario e complexo a tarefa de deteccao torna-se difıcil.

2. Movimento: A informacao de movimento e utilizada para localizar objetos efici-

entemente em uma sequencia de vıdeo, analisando os diferentes frames.

Graf et al. (1996), Reinders et al. (1995), van Beek et al. (1992) aplicaram um

limiar nas acumulacoes das diferencas dos frames para extrair as partes do corpo

ou faces. Em outros trabalhos, tambem utilizaram essas diferencas para localizar

as caracterısticas faciais.

3. Tons de Cinza: A informacao da intensidade em tons de cinza dos pixels dentro

da regiao da face pode ser considerada como caracterısticas importantes (Modi

and Macwan 2014). As caracterısticas faciais como sobrancelhas, pupilas e labios

sao as partes mais escuras de uma face e podem diferenciar-se das outras (Hjelmas

and Low 2001).

Graf et al. (1996), van Beek et al. (1992) criaram algoritmos para extrair as ca-

racterısticas faciais baseadas na busca de um mınimo tom de cinza local dentro

das regioes faciais segmentadas. Primeiro, melhoravam as imagens mediante o

contrast-stretching para aperfeicoar as partes locais escuras e detectar facilmente

as faces.

4. Baseados em Bordas: A deteccao de faces baseada em bordas foi introduzida

por Sakai et al. (1972). O trabalho deles esteve baseado no analise das linhas

dos contornos das faces de fotografias para localizar as caracterısticas faciais. A

Figura 2.2, apresenta-se as formas mais comuns das faces .

Figura 2.2: Formas mais comuns das faces das pessoas.

10 Revisao Bibliografica

Diferentes tipos de operadores de bordas sao aplicados na deteccao de faces, por

exemplo, operador de Sobel (Jacquin and Eleftheriadis 1995, Jeng et al. 1998, Jovic

et al. 2012, Kawaguchi et al. 2000, Li and Roeder 1995, Saha and Bandyopadhyay

2007), operador Marr-Hildreth (Govindaraju 1996, Huang et al. 1996, Marr and

Hildreth 1980), a primeira e segunda derivada Gaussiana (Laplaciano), entre otros.

2.1.2 Analise de Caracterısticas

Esses algoritmos procuram estruturas de caracterısticas que ainda existem quando a

posicao das faces e a iluminacao variam. Essas caracterısticas sao usadas para localizar

as faces.

1. Busca de Caracterısticas: Procuram ordenadamente os tracos caracterısticos

de uma face, baseados na orientacao e pose do mesmo. Por exemplo, primeiro

procura a testa, apos os olhos, em seguida o nariz, etc. Apresenta falhas quando

a imagem esta rotacionada e mal focada.

Existem algoritmos que utilizam heurısticas. Geralmente os olhos sao as carac-

terısticas mais utilizadas como referencia devido a localizacao dos mesmos (Hjelmas

and Low 2001). Viola and Jones (2004) apresentou uma abordagem para detectar

faces rapidamente atingindo uma acuracia alta. As caracterısticas Haar-like sao

usadas para localizar as faces e sao rapidas na deteccao, porque sao extraıdas sobre

a imagem integral. Para treinar as caracterısticas usam o algoritmo de Boosting,

chamado Adaboost. Sharif et al. (2011) propuseram um algoritmo Elastic Bunch

Graph Map para detectar faces usando filtros de Gabor. O sistema proposto aplica

40 filtros de Gabor na imagem, cujo resultado sao 40 imagens com angulos e ori-

entacoes diferentes. Depois, calculam a intensidade maxima dos pontos em cada

imagem filtrada e sao marcados como pontos fiduciarios. O sistema reduz a quanti-

dade dos pontos de acordo com a distancia entre eles, para finalmente compara-los

com a base de dados, se existe um casamento significa que a face foi detectada.

2. Analise de Pontos Caracterısticos: Estao baseados em uma analise proba-

bilıstico da localizacao de alguns pontos caracterısticos de uma face. O trabalho

de Maio and Maltoni (2000) e um exemplo desta abordagem, onde sao detecta-

das as faces utilizando a transformada de Hough e templates com varios pontos

caracterısticos das faces.

Revisao Bibliografica 11

2.1.3 Modelos de Forma Ativa

Os modelos de forma ativa localizam automaticamente os pontos fiduciarios das faces que

definem a forma de qualquer objeto (olho, boca, nariz, labios e sobrancelhas) modelado

estatısticamente na imagem (Modi and Macwan 2014). Treinar um modelo de forma

ativa envolve construir um modelo facial estatıstico de um conjunto de treino, cujos

landmarks ou pontos fiduciarios das imagens sao rotulados manualmente. Os modelos de

forma ativa estao classificados em tres grupos: Contornos Ativos, Padroes Deformaveis

e Modelos de Pontos Distribuıdos (MPD).

1. Contornos Ativos ou Snakes : Utilizados para localizar os contornos das faces,

inicializam-se perto dos limites da face fechando as bordas proximas ate torna-los

uma cabeca. Estao baseados na minimizacao de uma funcao de energia para

adaptar o modelo. Essa tecnica aplicou-se nos seguintes trabalhos (Gunn and

Nixon 1994, Huang and Chen 1992, Lam and Yan 1996, Nikolaidis and Pitas

2000).

2. Padroes Deformaveis: Utilizam os contornos ou snakes para encontrar mais

tracos faciais alem do contorno da face. Em Yuille et al. (1992) encontraram os

olhos utilizando os snakes como um mecanismo de deformacao que inclui o calculo

dos gradientes de uma funcao de energia.

3. Modelos de Pontos Distribuıdos (MPD): Representam parametricamente

as formas buscadas discretizando o contorno em diferentes pontos rotulados, as

variacoes possıveis sao utilizadas para ir formando um modelo estatıstico.

Lanitis et al. (1997) desenvolveram o primeiro Modelo de Pontos Distribuıdos

para faces, o qual representa a aparencia global de uma face. Para gerar o modelo

MPD, o modelo medio e colocado perto das faces movendo cada ponto a seu

correspondente ponto de fronteira. Durante a deformacao, a forma muda de acordo

com o modelo treinado.

2.2 Tecnicas Baseadas em Imagens

As tecnicas apresentadas anteriormente mostraram problemas em detectar multiplas

faces em cenarios complexos com muitas variacoes, devido ao limitado conhecimento

previo das caracterısticas de uma face (geometria). Por outro lado, a deteccao de faces e

12 Revisao Bibliografica

considerada um problema de reconhecimento de padroes, onde se tem duas classes: faces

e nao faces. As tecnicas baseadas em imagens se dividem em 3 sub-categorias: Metodos

de Subespacos Lineares, Redes Neurais e Analise Probabilısticos.

2.2.1 Metodos de Subespacos Lineares

Um exemplo e o metodo eigen faces utilizado para reconhecer faces (Kohonen 1988), usa

uma rede neural simples para realizar o reconhecimento de faces alinhadas e normalizadas

nas imagens.

Kirby and Sirovich (1990) sugeriram que as imagens de faces podem ser codificadas

linearmente usando um numero suficiente de imagens base. A ideia foi primeiramente

proposta por Pearson (1901) e em seguida por Hotelling (1933). Dada uma colecao de

m×n imagens de treino representadas por um vetor de tamanho m×n, os vetores base

abrangem um sub-espaco ideal determinados pela minimizacao do erro quadrado medio

entre a projecao das imagens de treino nesse sub-espaco e as imagens originais. Eles

chamam ao conjunto otimo de vetores base como eigen images, se eles sao simplesmente

os autovetores da matriz de covariancia calculados a partir das imagens de faces vetori-

zadas no conjunto de treino. Experimentos com um conjunto de 100 imagens de treino,

mostraram que uma imagem de face de 91× 50 pixels pode ser efetivamente codificadas

so com 50 eigen images.

Figura 2.3: Exemplos de eigen faces.

Revisao Bibliografica 13

2.2.2 Redes Neuronais

Surgiram com a intencao de simular o comportamento do sistema nervoso humano.

Estao baseadas nas conexoes entre as pequenas e estruturas simples (neuronios). Nos

ultimos anos, muitos trabalhos de reconhecimento de padroes as utilizaram, por exem-

plo: reconhecimento optico de caracteres, reconhecimento de objetos, conducao robo

autonomo, deteccao de faces, etc. A vantagem de utilizar redes neuronais na deteccao

de faces e a viabilidade de treinar um sistema para capturar as classes complexas dos

padroes de faces (Yang et al. 2002).

As Redes Neuronais requerem de uma fase inicial de aprendizagem de um conjunto

de dados representativos de treino. Existem varios modelos de redes de distinta comple-

xidade (tipo e numero de neuronios, numero de camadas e conexoes entre neuronios).

Rowley et al. (1998) utilizaram uma rede neural multicamada para aprender padroes

de faces e nao faces das imagens de treino. Por exemplo, na Figura 2.4 observa-se o

diagrama do sistema, onde cada face e preprocessada antes de entrar dentro da rede

neural. Varios metodos arbitrarios sao utilizados para determinar se a saıda da rede

corresponde a uma face.

Figura 2.4: Diagrama do sistema de Rowley et al. (1998).

2.2.3 Analise Probabilısticos

Estao baseados nos princıpios fundamentais do reconhecimento de padroes, tais como

o princıpio da maxima verossimilhanca ou a distancia de Kullback-Leibler que procura

estimar as distribuicoes de probabilidade mediante histogramas que sao comparados com

14 Revisao Bibliografica

histogramas medios aprendidos estatısticamente com imagens de faces. Existem varias

abordagens estatısticas na deteccao de faces, por exemplo: sistemas baseados na teoria

de informacao, maquinas de suporte vetorial, regras de decisao de Bayes (Hjelmas and

Low 2001).

Osuna et al. (1997) desenvolveu um metodo eficiente para treinar maquinas de vetores

de suporte para problemas de grande escala, aplicados na deteccao de faces. Baseado em

dois conjuntos de teste de 10, 000, 000 padroes de 19× 19 pixels, o sistema apresentou

baixas taxas de erros e foi aproximadamente 30 vezes mais rapido do que o sistema de

Sung and Poggio (1998). Os SVMs tambem foram utilizadas para detectar pedestres.

O PCA (Principal Component Analysis, em protugues Analise de Componentes Prin-

cipais) e uma tecnica baseada no conceito de eigen faces, introduzido por Kirby and

Sirovich (1990). Turk and Pentland (1991) propuseram PCA para reconhecer e detectar

faces. PCA em um conjunto de imagens e calculada para gerar eigen faces, as imagens

das faces e nao faces sao projetadas e agrupadas sobre um mesmo sub-espaco. Para

detectar faces em uma cena, a distancia entre a regiao da imagem e o espaco de faces e

calculada para todas as localizacoes na imagem. O resultado do calculo da distancia do

espaco da face e o mapa de faces (Modi and Macwan 2014).

2.3 Consideracoes Finais

Este capıtulo apresentou uma revisao bibliografica das diferentes abordagens sobre de-

teccao de faces, desde o inıcio dos anos 70 com tecnicas de deteccao simples ate atu-

almente com pesquisas avancadas para desenvolver algoritmos mais precisos. A clas-

sificacao das tecnicas de deteccao de faces foi feita por Modi and Macwan (2014),

separando-as em duas categorias: baseados em caracterısticas e em imagens. A clas-

sificacao das tecnicas de deteccao de faces mostram como foi evoluindo as diferentes

abordagens atraves do tempo, tomando como base os primeiros trabalhos e criando

novos criterios que contribuem no desenvolvimento de algoritmos mais precisos para de-

tectar faces, considerando as caracterısticas faciais das faces para diferencia-las do fundo

das imagens.

Capıtulo 3

Referencial Teorico

Para facilitar o entendimento da descricao do metodo proposto, sao descritos os conceitos

pertinentes aos descritores de caracterısticas, diferentes tipos de classificadores e alguns

metodos de deteccao de faces nas secoes seguintes.

3.1 Descritores de Caracterısticas

Geralmente, as aplicacoes de visao computacional envolvem tarefas computacionalmente

complexas i.e. rastreamento de objetos, identificacao de objetos, fluxo optico, entre ou-

tros. Os primeiros passos de todas essas aplicacoes sao a deteccao, descricao e casamento

das caracterısticas de altas qualidades, sendo os descritores os mais complicados e len-

tos. Os descritores concentram-se em abstrair as informacoes das imagens que estao

associadas com os pontos de interesse detectados pelo detector de caracterısticas, porem

os descritores deveriam evitar ser complexos ou usar muitas operacoes matematicas.

Um descritor de caracterısticas de alta qualidade unicamente descreve um ponto carac-

terıstico, identificando-o corretamente nas imagens subsequentes (Desai et al. 2014).

3.1.1 Descritores Haar-like

Viola and Jones (2004) motivados pelo trabalho de (Papageorgiou et al. 1998), utilizaram

um conjunto de caracterısticas que nao trabalham diretamente com as intensidades da

imagem.

15

16 Referencial Teorico

Viola and Jones (2004) utilizaram tres tipos de caracterısticas (ver Figura 3.1):

• Caracterıstica de dois retangulos: e o resultado da diferenca entre a soma

dos pixels dentro de duas regioes retangulares. As regioes tem o mesmo tamanho

e forma, alem disso, sao adjacentes horizontal e verticalmente.

• Caracterıstica de tres retangulos: calcula a diferenca da soma dos retangulos

extremos com a soma do retangulo central.

• Caracterıstica de quatro retangulos: calcula a diferenca entre os pares de

retangulos diagonais.

Figura 3.1: Exemplos das caracterısticas retangulares, parecem ser semelhantes a umajanela de deteccao. Calcula-se a diferenca da soma dos pixels dos retangulos brancos comos retangulos cinza. Figura (A) e (B) sao exemplos das caracterısticas de dois retangulos.Figura (C), corresponde as caracterısticas de tres retangulos e (D) as caracterısticas dequatro retangulos.

O tamanho da janela base do detector e 24× 24 pixels e o tamanho do conjunto das

caracterısticas retangulares e 160, 000. A diferenca das funcoes baseHaar , esse conjunto

e sobre completo (overcomplete).

As caracterısticas retangulares podem ser rapidamente calculadas mediante o uso

de uma representacao intermediaria da imagem, chamada imagem integral. A imagem

integral em um determinado x, y contem a soma dos pixels acima e a esquerda de x e

y, Equacao 3.1:

II(x, y) =∑

x′≤x,y′≤y

I(x′, y′) (3.1)

Referencial Teorico 17

onde II(x, y) e a imagem integral e I(x, y) e a imagem original (ver Figura ??). Alem

disso, utiliza-se as seguintes recorrencias:

S(x, y) = S(x, y − 1) + I(x, y) (3.2)

II(x, y) = II(x− 1, y) + S(x, y) (3.3)

onde S(x, y) e a linha da soma cumulativa, S(x,−1) = 0 e II(−1, y) = 0. A imagem

integral pode ser calculada em uma passagem sobre a imagem original. Utilizando essa

representacao qualquer soma dos pixels dentro de uma caracterıstica retangular pode

ser calculada a partir de 4 referencias (ver Figura 3.2). Entao, a diferenca entre dois

retangulos calcula-se a partir de 8 referencias. Se os dois retangulos sao adjacentes,

podem ser calculados so com 6 referencias e 9 no caso de tres retangulos.

Figura 3.2: Exemplo do calculo da imagem integral.

A Figura 3.2, representa o calculo da soma dos pixels utilizando a imagem integral.

II(P8) e a soma dos pixels dentro do retangulo formado por P0, P2, P6 e P8. II(P5)

e a soma do retangulo formado por P0, P2, P3 e P5. II(P7) e a soma do retangulo

formado por P0, P1, P6 e P7. II(P4) e a soma do retangulo formado por P0, P1, P3 e P4.

Finalmente, a soma do retangulo A e dado por: II(P8)− II(P5)− II(P7) + II(P4).

O calculo das caracterısticas retangulares e mais simples e rapido, gracas a imagem

integral. Portanto, as utilizaram no trabalho de (Viola and Jones 2004) para detectar

faces em vıdeos de tempo real, conseguindo procesar 15 frames por segundo.

18 Referencial Teorico

3.1.2 Histograma de Gradientes Orientados (HOG)

O Histograma de Gradientes Orientados foi proposto por Dalal and Triggs (2005), geral-

mente utilizado em reconhecimento de padroes e processamento de imagens para detectar

ou reconhecer objetos, em nosso caso os objetos serao representados por faces, ver Figura

3.3. Utiliza-se pois e preciso ter um conjunto robusto de caracterısticas para discriminar

e localizar as faces nas imagens com variacao de iluminacao, pose, etc. O calculo desse

descritor e computacionalmente complexo, onde a imagem e dividida em celulas (janelas

de tamanho pequeno) nao sobrepostas e para cada celula e calculado o histograma de

gradientes orientados, neste trabalho somente foram usadas as celulas que possuem pele,

detectadas na primeira etapa.

Figura 3.3: Extracao de Caracterısticas.

A extracao do descritor HOG consiste dos seguintes passos (Figura 3.4):

1. Calcula-se os gradientes da imagem de entrada aplicando o detector de bordas

Sobel, cuja mascara em x e y e de [−1, 0, 1] e [−1, 0, 1]T , respectivamente.

2. Constroi-se os histogramas das orientacoes dos gradientes dividindo a imagem em

regioes pequenas conectadas, chamadas celulas (por exemplo, de tamanho 8 pixels),

e esses histogramas sao calculados em cada celula, o numero de histogramas de

cada celula dependera do numero de blocos (estao formados a partir de celulas

sobrepostas) ao que pertence a celula. Dependendo se o gradiente e considerado

com ou sem sinal, os canais do histograma sao propagados desde 0◦-360◦ ou 0◦-180◦,

respectivamente (Figura 3.5).

3. Como existem problemas de iluminacao, nas imagens do mundo real, e pertinente

normalizar os histogramas usando a normalizacao de contraste local. Para executar

Referencial Teorico 19

Figura 3.4: Passos da extracao do descritor HOG em uma sub-janela de busca.

Figura 3.5: Orientacao do histograma e formato das celulas.

a normalizacao, as celulas sao agrupadas em blocos e cada bloco e normalizado de

forma separada. O descritor final consiste em um vetor com todos os componentes

normalizados das celulas de todos os blocos. A normalizacao e executada utilizando

a regra L2-Hys que limita os valores maximos do vetor a 0.2 depois ter calculado

a regra L2-norm, equacao 3.4:

L2− norm : υ → υ/√||υ||22 + ε2 (3.4)

20 Referencial Teorico

onde, υ e o vetor de caracterısticas nao normalizado, ||υ||k e a k-norm utilizada

para k = 1, 2 e ε e uma constante pequena.

3.1.3 Histograma de Gradientes Orientados Medios (HAOG)

Galoogahi and Sim (2012) propoem um novo descritor de faces baseados nas orientacoes

dos gradientes. Os Histogramas de Gradientes Orientados Medios sao inspirados pelo

fato de que as orientacoes dos gradientes dos componentes faciais com alto contraste

(olhos, sobrancelhas, orelhas, boca e nariz) sao mais invariantes do que os gradientes

mais fracos (texturas finas, rugas e sombras com baixo contraste). Entao, esse descritor

diferenca-se do HOG porque os dados sao extraıdos a partir dos gradientes com alto

contraste (grossas) das imagens, enquanto o HOG utiliza ambos tipos de gradientes.

Neste trabalho, propoe-se o uso deste descritor, ja que devem ser detectados faces

de diferentes tamanhos e elas podem apresentar problemas de iluminacao ou imagens

borradas. Portanto, essas imagens nao tem uma boa caracterizacao das faces, pois as

texturas finas podem ficar ausentes.

Durante a extracao de caracterısticas considera-se ambas texturas: grossas e finas,

enfatizando mais as texturas grossas quando calcula a orientacao das caracterısticas, pois

elas tem maior magnitude devido ao alto contraste. Alem disso, elas podem ser calcula-

das mediante a votacao dos quadrados das magnitudes do gradiente em um histograma

de orientacoes. Dada uma imagem em tons de cinza I(x,y), os vetores do gradiente sao

calculados utilizando as derivadas parciais da intensidade da imagem nas coordenadas

cartesianas, Equacao 3.5:

gx(x, y)

gy(x, y)

=

δI(x,y)δx

δI(x,y)δy

(3.5)

Para vetores de gradientes [gx, gy]T , a magnitude ρ e orientacao φ ∈ [−π, π), e definido

como:

Referencial Teorico 21

ρ = (g2x + g2y)0.5 (3.6)

φ = tan−1(gygx

)(3.7)

Como os gradientes locais ao redor de cada pixel podem ser opostos entre si (gra-

dientes situados em ambos lados de uma borda), nao consegue-se calcular a media dos

gradientes orientados φ atraves da media das orientacoes dos angulos da vizinhanca local

de cada pixel. Para solucionar esse problema, os autores utilizaram a ideia de (Kass and

Witkin 1987) e duplicaram os angulos dos gradientes antes de calcular a media. Se φ e

(φ+ π) sao duas orientacoes opostas (depois de duplica-las), 2φ e (2φ+ 2π) = 2φ apon-

tam a mesma direcao, entao 2φ e a orientacao do quadrado do vetor gradiente [gsx, gsy]T

com magnitude ρ2. Aplicando identidades trigonometricas, calcula-se:

gsx

gsy

=

ρ2 cos 2φ

ρ2 sin 2φ

=

ρ2(cos2 φ− sin2 φ)

ρ2(2 sinφ cosφ)

=

g2x − g2y2gygx

(3.8)

Logo, determina-se a media do quadrado do gradiente para cada pixel em uma vizi-

nhanca local em uma janela de tamanho W , Equacao 3.9:

gsx

gsy

=

∑W gsx∑W gsy

=

∑W (g2x − g2y)∑W 2gygx

(3.9)

A media da orientacao do quadrado do gradiente e o quadrado da magnitude de cada

pixel, calcula-se na Equacao 3.10:

φ = tan−1(gsy

gsx

), φ ∈ [−π, π)

ρ =∑W

(g2sy + g2sx)0.5 =

∑W

ρ2 (3.10)

22 Referencial Teorico

A extracao do descritor HAOG em uma imagem em tons de cinza consiste dos se-

guintes passos (Figura 3.6):

Figura 3.6: Passos da extracao do descritor HAOG em uma sub-janela de busca.

1. A imagem e dividida em varias sub-janelas sobrepostas mediante uma janela desli-

zante de tamanho s× s, por exemplo: 6× 6, 8× 8, 10× 10, e com um deslocamento

de δ pixels (em alguns casos a metade do valor de s).

2. Para cada pixel que pertence a uma sub-janela, calcula-se a orientacao e magnitude

media utilizando as formulas citadas anteriormente (Equacao 3.5 - 3.10).

3. Quantiza-se em b bins (por exemplo: 6, 7, 8, 9 bins) o intervalo das orientacoes

medias [−π, π).

4. Calcula-se os histogramas de orientacoes medias em cada sub-janela, acumulando

as medias das magnitudes ρ dos pixels cujas orientacoes medias encontram-se den-

tro de cada possıvel bin, ou seja, dentro do intervalo de orientacoes que corresponde

a cada respectivo bin.

5. Finalmente, concatena-se os histogramas normalizados pela norma L2 para formar

o descritor HAOG.

Referencial Teorico 23

3.2 Classificacao

A tarefa de classificacao usualmente envolve separar dados em conjuntos de treino e

teste. Cada instancia do conjunto de treinamento esta rotulada e contem varios atri-

butos (caracterısticas) para treinar um classificador e gerar um modelo capaz de prever

as classes de um conjunto de dados desconhecidos, (Witten and Frank 2005). A conti-

nuacao apresenta-se alguns classificadores que serao comparados e utilizados no metodo

proposto:

3.2.1 Maquinas de Vetores de Suporte

As Maquinas de Vetores de Suporte (do ingles Suport Vector Machines - SVM) sao

usadas na literatura na fase de classificacao dos dados de treino, porem se o usuario nao

sabe a teoria e o funcionamento dos SVMs a classificacao dos dados pode ser ruim.

Os SVMs mapeiam as caracterısticas do conjunto de dados de entrada a um espaco di-

mensional (representados como pontos), (Cortes and Vapnik 1995). Portanto, e tracado

um hiperplano que separa os pontos atraves de margens associadas (linhas paralelas)

que determinam a qual lado ou classe cada ponto pertence, esse processo e chamado

de separacao ou classificacao linear. Os pontos no limite encontrados sobre ou bem

proximos as margens entre as classes, sao chamados vetores de suporte ( ver Figura 3.7).

Figura 3.7: Classificacao dos exemplos da classe 1 e 2 mediante um hiperplano.

O objetivo e encontrar o hiperplano de separacao otima que minimiza o erro de

classificacao e generaliza o conjunto de teste (dados desconhecidos), maximizando a

distancia entre as margens e os pontos de cada classe. Quando os dados nao sao line-

24 Referencial Teorico

armente separaveis, o hiperplano com margem maxima nao pode ser encontrado, nesse

caso utiliza-se uma funcao kernel que calcula os vetores de suporte para cada ponto e em

seguida os proteja a um espaco de dimensoes superiores, onde os dados sao linearmente

separaveis. Depois, o processo mapeia no mesmo espaco os pontos do conjunto de teste

utilizando a funcao de decisao, mostrada na Equacao 3.11, que encontra o hiperplano

com margem maxima e mapeia o novo ponto no espaco correspondente a classe que

pertence:

f(XT ) =l∑

i=1

yiαiK(Xi, Xj) + b (3.11)

onde, XT e um dado do conjunto de teste, l e o numero de vetores de suporte, yi e o

rotulo da classe do vetor de suporte, αi e b sao os parametros encontrados durante o

treinamento, e K(Xi, Xj) e a funcao kernel que calcula o produto do dado do conjunto

de teste para cada um dos vetores de suporte.

As funcoes kernel retornam o produto interno entre dois pontos em um determinado

espaco de caracterısticas, definindo assim uma nocao de similaridade com pouco custo

computacional, mesmo em espacos de dimensoes superiores. Os kernels sao comumente

utilizados com os SVMs, considera-se os seguintes:

• Kernel Linear, e a funcao kernel mais simples, dado pelo produto interno de

< x, y > e uma constante c.

K(x, y) = xTy + c (3.12)

• Kernel gaussiano: e um exemplo da funcao de kernel de base radial.

K(x, y) = exp(−‖x− y‖2

2σ2) (3.13)

Alternativamente, tambem pode ser implementado usando:

K(x, y) = exp(−σ‖x− y‖2) (3.14)

O parametro σ e ajustavel e desempenha uma funcao importante no desempe-

Referencial Teorico 25

nho do kernel, portanto deve ser cuidadosamente ajustado para o problema em

questao. Se for superestimada, o exponencial vai se comportar quase linearmente

e a projecao da dimensao superior vai comecar a perder o seu poder nao linear. Por

outro lado, se for subestimada, a funcao apresentara uma falta de regularizacao e

a fronteira de decisao sera altamente sensıvel ao ruıdo dos dados de treino.

• Funcao Kernel Polinomial: sao adequadas para problemas cujos dados de

treinamento estao normalizados.

K(x, y) = (αxTy + c)d, c > 0 (3.15)

os parametros α, a constante c e o polinomio de grau d sao ajustaveis.

• Funcao Kernel Sigmoide:

K(x, y) = tanh(γxTy + γ) (3.16)

• Kernel chi-quadrado: ele vem da distribuicao chi-quadrado:

K(x, y) = 1−n∑

i=1

(xi − yi)212(xi + yi)

(3.17)

3.2.2 Boosting

Boosting e uma tecnica para combinar multiplos classificadores base para formar um co-

mite, cujo desempenho seja significativamente melhor do que qualquer um deles, (Bishop

and Nasrabadi 2007). Boosting pode fornecer bons resultados inclusive quando a eficacia

dos classificadores base nao seja a melhor, eles sao conhecidos como classificadores fra-

cos. Originalmente o boosting foi desenhado para solucionar problemas de classificacao

e depois foi estendido para regressao, (Hastie et al. 2001).

No boosting, os classificadores base sao treinados em sequencia adicionando pesos no

conjunto de dados, onde o coeficiente de ponderacao esta associado a cada valor do vetor

de caracterısticas dos dados, dependendo da performance do classificador anterior. Se

um dos vetores de caracterısticas e classificado erroneamente por um classificador base,

outorga-se um peso maior para ser utilizado pelo proximo classificador da sequencia.

26 Referencial Teorico

Uma vez que todos os classificadores tem sido treinados, suas predicoes sao combinadas

mediante um esquema de voto majoritario, ver Figura 3.8.

Figura 3.8: Esquema do Boosting. Cada classificador base ym(x) e treinado utilizando

uma ponderacao do conjunto de treino (setas azuis), onde os pesos w(m)n dependem

da performance do classificador base ym−1(x) (setas verdes). Uma vez que todos osclassificadores base tem sido treinados, eles sao combinados para formar um classificadorfinal YM(x) (setas vermelhas).

Considerando um problema de classificacao de duas classes, cujos dados de treino sao

os vetores de entrada x1, ..., xN com suas correspondentes variaveis binarias rotuladas

t1, ..., tN , onde tN ∈ −1, 1. Cada ponto do vetor de caracterısticas esta associado com um

parametro de peso wn, o qual inicialmente e 1/N para todos os dados. Presume-se que

temos um procedimento disponıvel para treinar um classificador base com dados ponde-

rados para uma funcao y(x) ∈ {−1, 1}. Em cada etapa do algoritmo Adaboost, treina-se

um novo classificador utilizando um conjunto de dados cujos coeficientes ponderados

ajustam-se de acordo com a performance do classificador anterior, entao outorga-se pe-

sos altos para aqueles dados que sao classificados erroneamente. Finalmente, quando o

numero desejado de classificadores base tem sido treinados, eles sao combinados para

formar um comite utilizando os coeficientes que outorgam diferentes pesos a diferentes

classificadores base.

Referencial Teorico 27

3.2.3 Classificador de “uma classe” baseado no Modelo Convexo

mais Proximo

Geralmente, para detectar objetos de diferentes classes em imagens com cenarios comple-

xos utiliza-se diferentes abordagens de classificadores, por exemplo: Adaboost, Random

Forest, maquinas de aprendizagem baseados em discriminantes como o SVM, entre ou-

tros. Adota-se o classificador em cascata de “uma classe” devido a rapida rejeicao dos

exemplos negativos porque centra-se em modelar so a classe positiva. Por isso, chama-se

metodos de uma unica classe, ja que sao classificadores simples e rapidos nas primei-

ras etapas da cascata e nas ultimas decidem se o exemplo pertence a classe positiva

ou negativa, portanto reduz significativamente a complexidade do classificador (quando

treinado com bases complexas, o modelo sera eficiente e nao sera tao complexo como

um classificador forte bem correlacionado com a classe verdadeira).

A cascata consiste em tres etapas (Figura 3.9) (Cevikalp et al. 2013): a primeira

utiliza um classificador de “uma classe” que aproxima a regiao ocupada pelos vetores de

caracterısticas da classe positiva afastando-os da classe negativa mediante a distancia

linear a um hiperplano, a segunda etapa e um classificador de Support Vector Data

Descriptor, (Tax and Duin 2004), que esta baseado em um modelo de uma hiperesfera

linear no espaco de caracterısticas de entrada. A ultima etapa toma a decisao de qual

classe o objeto de entrada pertence, utilizando um modelo de hiperesfera nao linear

que aproxima as classes dos objetos. O classificador de modelo convexo mais proximo

atinge um desempenho competitivo em relacao aos algoritmos do estado da arte, por

exemplo: os classificadores lineares utilizados nas primeiras etapas sao simples, rapidos,

tem menos restricoes de tempo e menor numero de vetores de suporte a diferenca dos

classificadores discriminativos linear e nao linear (maior complexidade computacional),

(Cevikalp and Triggs 2012).

Geralmente, o espaco de caracterısticas da classe positiva encontra-se em regioes es-

pecıficas dentro do modelo e os exemplos negativos (outliers) encontra-se dispersos no

espaco. Para classificar os exemplos como positivos ou negativos determina-se um limiar

a partir do resultado das distancias do espaco de caracterısticas ao modelo convexo. O

problema de classificacao do modelo convexo mais proximo segue a propriedade de qual-

quer conjunto convexo, onde todos os elementos devem encontrar-se envolvidos dentro

da regiao limitada.

A cascata do classificador esta formada por tres etapas: hiperplano linear, hiperesfera

28 Referencial Teorico

Figura 3.9: (a) Dados de entrada: o espaco de caracterısticas dos objetos da classepositiva e o fundo da classe negativa sao representados como triangulos azuis e pontospretos. (b) Na primeira etapa da cascata, usa-se um classificador linear que utilizaa interseccao de hiperplanos para aproximar a classe. Exemplos que ficam fora doshiperplanos sao classificados como negativos e sao rejeitados. Os exemplos de fundoque sobreviveram a essa etapa sao mostrados como pontos vermelhos. (c) A segundaetapa e um classificador de uma classe no espaco linear, que aproxima a regiao daclasse dos objetos com uma hiperesfera delimitadora. A maioria dos falsos positivosque sobreviveram na primeira etapa sao rejeitados. (d) A etapa final da cascata e umclassificador de uma classe nao linear, que aproxima a regiao positiva com mais acuraciae toma a decisao final, (Cevikalp and Triggs 2012).

linear e hiperesfera nao linear.

1. Aproximacao do hiperplano linear

A primeira etapa do classificador em cascata utiliza um classificador de uma classe,

pois tenta aproximar a classe positiva mediante o calculo da distancia dos vetores

de caracterısticas a cada hiperplano, um a um (ver Figura 3.10). Se essa distancia

encontra-se entre alguns limiares predefinidos (determinados durante o treina-

mento) e considerado face, caso contrario e rejeitado (Cevikalp et al. 2013), ou

seja a diferenca do SVM os vetores de caracterısticas da classe positiva encontram-

se dentro das margens do hiperplano afastando-os dos exemplos negativos. Seja

Referencial Teorico 29

x o vetor de caracterısticas e wTx + b = 0 a equacao do hiperplano. Entao para

encontrar o hiperplano que melhor se ajusta ao problema, formula-se a seguinte

Equacao 3.18:

Figura 3.10: Hiperplano linear que aproxima a classe positiva.

arg minw,ε>=0

1

2‖w‖2 + C+

∑i

(εi + ε∗i ) + C−∑j

εj (3.18)

tais que:

wTxi + b ≤ ∆ + εi,

wTxi + b ≥ −∆− ε∗i ,

wTxj + b ≥ ∆ + 1− εj, i ∈ I+, j ∈ I−

Onde C+(C−) e o parametro definido pelo usuario que controla o peso dos erros

associados com os exemplos positivos (negativos), I+(I−) e o conjunto dos ındices

dos exemplos positivos (negativos), ∆ e um parametro de restricao entre 0 e 1.

Mediante essa formula, restringimos os vetores de caracterısticas dos exemplos

positivos que fiquem dentro de dois hiperplanos paralelos wTx+b = ∆ e wTx+b =

−∆. Os exemplos negativos ficam do lado direito do hiperplano wTx+ b = 1 + ∆

separados dos exemplos positivos por um margem mınima 1/‖w‖. As variaveis de

folga positivas εi, ε∗i , εj sao introduzidas para aqueles exemplos que nao cumprem

com as restricoes. Esse e um problema de programacao quadratica convexa que

30 Referencial Teorico

pode ser resolvido por qualquer algoritmo de programacao quadratica. Em espacos

de altas dimensoes, essa formula e mais robusta e ajusta-se melhor comparada com

a formula dos mınimos quadrados, (Cevikalp et al. 2013).

Na pratica, utilizamos Optimized Cutting Plane Algorithm (OCAS, em portugues

Algoritmo de Corte de Plano Otimizado) para treinar a primeira etapa do classi-

ficador em cascata. Vojtech and Soeren (2008) desenvolveram uma nova maquina

de suporte vetorial linear que supera significativamente os SVMs atuais, como:

SVM light , SVM perf e BMRM de (Teo et al. 2007), obtendo a mesma solucao

precisa, mostrando uma rapida convergencia e quando paraleliza-se efetivamente o

OCAS pode treinar base de dados de tamanho de 15 milhoes de exemplos em 671

segundos.

A equacao 3.19 centra-se em encontrar solucoes do problema primal sem restricoes

do SVM linear:

w∗ = arg minw∈Rn

F (w) :=1

2‖w‖2 + CR(w) (3.19)

onde o w denota o vetor de parametros a ser aprendido, 12‖w‖2 e o termo de

regularizacao, C > 0 e uma constante fixa e R e um risco convexo que aproxima

o erro do treino. Entre os algoritmos mais eficientes para resolver o problema

primal (Equacao3.19), encontra-se o Cutting Plane Algorithm (CPA, em portugues

Algoritmo de Plano de Corte). A ideia do CPA e aproximar por partes o risco

R mediante uma funcao linear maxima sobre um conjunto de planos de corte

proximos do mınimo valor de w∗. Vojtech and Soeren (2008) mostraram que se

precisa o menor numero de planos de corte para aproximar a Equacao 3.19 e nao

depende do numero dos exemplos de treino (dimensao).

A ineficiencia desse algoritmo esta no numero de iteracoes na selecao do plano de

corte no problema reduzido da Equacao 3.19, ou seja, converge arbitrariamente em

um mınimo local que nao esta necessariamente na vizinhanca de w∗. Isso acontece

porque em cada iteracao o CPA seleciona um plano de corte que perfeitamente

aproxima-se ao objetivo do problema primal na solucao atual. Enquanto, isso

nao garante que o plano de corte seja uma restricao ativa na vizinhanca do valor

otimo de w∗. Resulta que varios planos de cortes selecionados nao contribuem

a aproximacao do objetivo do problema primal perto do valor otimo, portanto

aumenta o numero de iteracoes. Para acelerar a convergencia do CPA, otimiza-

Referencial Teorico 31

se o algoritmo de plano de corte (em ingles Optimized Cutting Plane Algorithm,

OCA), onde seleciona-se o plano que tenha a maior oportunidade de ativamente

contribuir a aproximacao da funcao objetivo do problema primal perto do valor

otimo de w∗. Assim, foi desenvolvido eficientemente o OCA para SVM linear

binario e multiclasse. Vojtech and Soeren (2008), mostraram que o procedimento

de linha de busca requerido para resolver exatamente os problemas binarios e

multiclasses e de O(mlogm) e O(m.Y 2 +m.Y log(m.Y )), respectivamente, onde m

e o numero de exemplos e Y o numero de classes.

2. Aproximacao da hiperesfera linear

A segunda etapa da cascata e um classificador de Vetores de Suporte de Descricao

de Dados Linear (SVDD do ingles Support Vector Data Description), baseado

em um modelo de hiperesfera linear no espaco de caracterısticas de entrada. E

computacionalmente eficiente, ja que aceita quase todos os exemplos positivos

(faces) e rejeita alguns exemplos negativos (fundo da imagem) que foram aceitos

pelo primeiro estagio (hiperplano linear). Esse classificador e mais custoso do que

o anterior porque para treinar utiliza uma formulacao de margem maxima antes

de um ajuste linear simples (ver Figura 3.11).

Figura 3.11: Hiperesfera linear que aproxima a classe positiva.

Essa hiperesfera delimitadora de um conjunto de pontos: xi|i = 1....n e caracte-

rizada pelo centro c e raio r. Isso pode ser resolvido mediante um problema de

programacao quadratica, 3.20.

32 Referencial Teorico

arg minc,r≥0,ε≥0

(r2 + γ

∑i

εi

)(3.20)

tais que:

‖xi − c‖2 ≤ r2 + εi, i = 1, ..., n

Ou seu dual

argminα

(∑i,j

αiαj 〈xi, xj〉 −∑i

αi‖xi‖2)

(3.21)

tais que: ∑i

αi = 1,∀i 0 ≤ αi ≤ γ,

onde 〈.〉 representa o produto escalar (possivelmente nao linear), αi sao os multipli-

cadores de Lagrange e γ ∈ [1/n, 1] e um parametro limite que pode ser configurado

a um valor menor do que 1 para reduzir a influencia dos outliers . Tratando-se

de um problema convexo, o mınimo global pode ser determinado eficientemente

atraves de um solucionador de problemas quadraticos. No caso de mapear o espaco

de caracterısticas com uma funcao kernel, a informacao dual fica dentro de uma

solucao espalhada em termos de vetores de suporte (ou seja, os exemplos ficam

exatamente na hiperesfera), isso faz com que o modelo seja mais eficiente e nao

precise de modelar a distribuicao completa dos dados de entrada pois e mais flexıvel

utilizando funcoes de kernel.

Os exemplos negativos sao utilizados para aperfeicoar o modelo, forcando-os ficar

fora dos limites da hiperesfera (diminui o volume da hiperesfera para evitar os

outliers ou exemplos negativos). Suponha que temos n1 exemplos positivos de

treino enumerados pelos ındices i, j e n2 exemplos negativos enumerados por l,m.

A hiperesfera mais compacta que inclui os exemplos positivos e exclui os exemplos

negativos, pode ser encontrada mediante um problema de programacao quadratica,

3.22:

Referencial Teorico 33

arg minc,r≥0,ε≥0

(r2 + γi

∑i

εi + γ2∑l

εl

)(3.22)

tais que:

‖xi − c‖2 ≤ r2 + εi, i = 1, ..., n1

‖xl − c‖2 ≥ r2 + εl, l = 1, ..., n2

Ou seu dual

argminα

∑i,j

αiαj 〈xi, xj〉+∑l,m

αlαm 〈xl, xm〉−

2∑l,j

αlαj 〈xl, xj〉+ (∑l

αl‖xj‖2 −∑i

αi‖xi‖2)(3.23)

tais que: ∑i

αi −∑l

αl = 1, ∀i, j 0 ≤ αi ≤ γl, 0 ≤ αl ≤ γ2

Esse problema tambem e convexo e pode ser solucionado mediante algoritmos de

programacao quadratica. Dados os coeficientes de Lagrange otimos αi, o centro da

hiperesfera limitada calcula-se na Equacao 3.24:

c =∑i

αixi −∑l

αlxl (3.24)

A maior parte dos coeficientes sao zeros mas os exemplos daqueles coeficientes

que sao diferentes de zero, chamam-se vetores de suporte, e o maior numero deles

correspondem a classe positiva (exemplos das faces). Alem disso, o numero de

vetores de suporte retornados sao muito menores do que o numero retornado pelo

algoritmo SVM. Uma vez encontrado o centro da hiperesfera, o raio e calculado

mediante as restricoes da Equacao 3.22.

Esse modelo difere de um SVM classico porque encontra uma hiperesfera estreita

circundante a classe dos objetos (positivos), e nao um hiperplano que os separa

dos exemplos negativos. Entao, Cevikalp and Triggs (2012) encontraram que in-

34 Referencial Teorico

cluindo os exemplos negativos significativamente melhora a performance do detec-

tor em cascata. No caso das Equacoes 3.21 e 3.23 sao algoritmos de programacao

quadratica com um mınimo global.

Durante a deteccao de objetos, encontra-se a distancia de cada vetor de carac-

terısticas das sub-janelas ao centro da hiperesfera linear, rejeitando os exemplos

negativos se a distancia for maior do que o raio.

3. Classificador nao linear

A terceira etapa da cascata e um classificador de hiperesfera nao linear que toma

a decisao final (e o mais complexo), porque faz uma discriminacao mais fina das

etapas anteriores pois poucos exemplos conseguiram chegar ate esta etapa (ver

Figura 3.12).

Figura 3.12: Hiperesfera nao linear que aproxima a classe positiva.

O modelo da hiperesfera pode substituir os produtos escalares 〈xi, xj〉 por ava-

liacoes de kernel K(xi, xj) = 〈φ(xi), φ(xj)〉 na Equacao 3.23, onde φ e o espaco de

caracterısticas mapeado pelo kernel. O treinamento e simples mas a avaliacao das

distancias dos exemplos x ao centro da hiperesfera limitada requer de avaliacoes

do kernel K(xi, x), em contra dos vetores de suporte xi. Isso faz que o SVDD

kernelized seja mais complexo do que o linear e o numero de vetores de suporte,

sendo ainda menor do que o numero dos exemplos de treino.

Enquanto na pratica encontraram que o classificador SVDD kernelized tem um

numero menor de vetores de suporte (a maior parte corresponde dos exemplos po-

sitivos), assim sao mais rapidos do que os SVM kernelized, porque eles apresentam

muitos vetores de suporte negativos necessarios para rejeitar os exemplos negati-

Referencial Teorico 35

vos complexos. Portanto, e mais eficiente utilizar esse tipo de classificadores na

cascata do que o SVM kernelized.

3.3 Robust Real-Time Face Detection

Esse metodo foi o primeiro sistema de deteccao de faces em tempo real, proposto por

(Viola and Jones 2004). E capaz de processar imagens extremadamente rapido (15

quadros por segundo), atingindo taxas de deteccao altas. Existem tres contribuicoes

principais:

• Eles introduzem uma nova representacao da imagem, chamada imagem integral.

A qual permite calcular rapidamente as caracterısticas utilizadas pelo detector.

• Constroem um classificador simples e eficiente que utiliza o algoritmo de apren-

dizagem Adaboost para selecionar um pequeno numero de caracterısticas visuais

crıticas de um conjunto grande de caracterısticas potenciais.

• A terceira contribuicao e um metodo para combinar em sequencia classificadores,

que permite rejeitar as regioes do fundo da imagem gastando mais calculo em

regioes semelhantes as faces.

A ideia principal desse metodo e explorar a existencia de faces com uma sub-janela

de tamanho variante sem escalar a imagem original, a diferenca com alguns metodos que

geram uma piramide de imagens. Viola and Jones (2004) criaram um detector de escala

invariante que faz o mesmo numero de operacoes em qualquer escala, mediante uma

nova representacao da imagem: chamada Imagem Integral. Ela e do mesmo tamanho da

imagem original e cada elemento dela na posicao (x, y) contem a soma de todos os pixels

localizados na regiao superior esquerda da imagem original. Permite uma rapida ava-

liacao e uso das caracterısticas Haar-likes, as quais classificam as imagens baseadas no

valor das caracterısticas simples. Alem disso, utiliza um algoritmo de aprendizagem su-

pervisionado baseado em Adaboost que seleciona um numero pequeno de caracterısticas

simples para combina-las e formar um classificador forte extremadamente eficiente. Fi-

nalmente, combina os classificadores em uma cascata que rejeita rapidamente sub-janelas

correspondentes a imagens do fundo, enquanto e lento nas sub-imagens das regioes das

faces.

36 Referencial Teorico

3.4 Consideracoes Finais

Este capıtulo descreveu os conceitos pertinentes aos descritores de caracterısticas que sao

essenciais na identificacao dos pontos caracterısticos nas imagens, porque dependendo

do tipo de descritor escolhido, por exemplo, os descritores Haar-like propostos por Vi-

ola and Jones (2004), Histogramas de gradientes orientados proposto por Dalal and

Triggs (2005), Histogramas de gradientes orientados medios propostos por Galoogahi

and Sim (2012), etc, o sistema apresentara um desempenho bom ou ruim. Alem disso,

descreveu-se alguns metodos supervisionados para classificar os dados: o SVM encontra

um hiperplano de separacao otima que minimiza os erros de classificacao generalizando

dados desconhecidos a partir do modelo treinado; o Boosting que combina multiplos

classificadores base para formar um comite melhorando o desempenho individual; e o

Classificador de “uma classe” baseado no modelo convexo mais proximo que aproxima

os vetores de caracterısticas da classe positiva afastando-os da classe negativa, mediante

uma cascata de classificadores: hiperplano linear, hiperesfera linear e nao linear. Esses

classificadores apresentam diferentes tipos de abordagens que sao importantes e uteis

na construcao de nosso metodo proposto, com a finalidade de melhorar a eficacia do

sistema.

Capıtulo 4

Metodo Proposto

Neste capıtulo apresenta-se o metodo proposto desta dissertacao, o qual consiste de cinco

fases: deteccao da pele, geracao da piramide de imagens, extracao de caracterısticas,

classificacao e supressao de nao-maximos.

A estrutura do metodo proposto apresenta-se na Figura 4.1 e representa o funcio-

namento do sistema de deteccao de faces em uma imagem de entrada. Geralmente, essa

imagem e complexa devido aos diferentes problemas presentes nela (ver Figura 4.2), tais

como: mudancas de iluminacao, pose, oclusao, expressao facial, escala, etc. Portanto,

para detectar faces precisa-se treinar um modelo com uma base de faces e nao faces

semelhantes aos encontrados nas fotografias ou vıdeos do mundo real (consideradas nas

bases de teste), i.e., com todos os problemas citados acima.

A metodologia desenvolvida no metodo proposto neste trabalho e a seguinte: pri-

meiro, na imagem de entrada detecta-se a pele para reduzir a regiao de busca e diminuir

o numero dos falsos positivos. Segundo, como as faces aparecem em diferentes tamanhos

nas fotografias ou vıdeos, gera-se uma piramide de imagens a partir do tamanho original

(escala canonica). No total gera-se 7 escalas, na primeira escala redimensiona-se 1.3 ve-

zes o tamanho da imagem original (escala maior) e o tamanho das imagens nas escalas

subsequentes e redimensionado por 1, 0.71, 0.51, 0.36, 0.26 e 0.18 vezes, diminuindo

o tamanho original. Na ultima escala o tamanho da imagem e proximo ao tamanho

da janela de busca 50× 50 pixels, entao, aquelas faces pequenas serao detectadas nas

escalas maiores ao contrario das faces grandes que serao detectadas nas escalas meno-

res. Terceiro, para extrair o vetor de caracterısticas das sub-imagens (50× 50 pixels)

utiliza-se o descritor HOG (Histogram of Oriented Gradients , em portugues Histograma

37

38 Metodo Proposto

Figura 4.1: Metodo proposto para Deteccao de faces.

Figura 4.2: Exemplos dos diferentes tipos de problemas em uma imagem.

de Gradientes Orientados) que calcula os histogramas das orientacoes do gradiente da

imagem dividida em celulas e os normaliza em blocos de celulas superpostas. Ao mesmo

tempo e extraıdo o descritor HAOG (Histograma de Gradientes Orientados Medios, do

ingles Histogram of Averaged Oriented Gradient) das texturas finas e com alto contraste

das faces, enfatizando mais as texturas grossas quando calcula a orientacao e magnitude

media do gradiente quadrado nos blocos superpostos. Esses dois descritores sao concate-

nados para formar um unico vetor de caracterısticas. A cascata utilizada neste trabalho

consiste de tres estagios (Cevikalp and Triggs 2012): no primeiro estagio, os exemplos

Metodo Proposto 39

positivos sao limitados atraves de hiperplanos; no segundo estagio, a regiao que corres-

ponde ao objeto de interesse e circunscrita atraves de uma hiperesfera; no ultimo estagio,

o classificador toma a decisao final. Depois de classificar os vetores de caracterısticas

correspondentes as faces havera muitas janelas detectadas para uma unica face, entao

precisa-se escolher aquela janela que possua maior valor de probabilidade fornecido pelo

classificador para representar a face detectada. Nas seguintes secoes sao descritas cada

um dos passos do metodo proposto.

4.1 Deteccao de Pele

A deteccao de pele e utilizada nas diferentes aplicacoes de processamento de imagens e

vıdeo na literatura, por exemplo: deteccao de faces, indexacao de imagens, reconheci-

mento de expressoes, rastreamento de faces em tempo real, analises de movimento, entre

outros. O objetivo da deteccao de pele e diferenciar as regioes da pele das regioes que

correspondem ao fundo da imagem.

Existem muitas abordagens sobre deteccao de pele, as quais estao baseadas nas ca-

racterısticas que exploram a informacao de cor, forma e textura da imagem, (De Siqueira

et al. 2013). Porem, alguns metodos nao atingem bons resultados devido as mudancas

de iluminacao e tons da pele nas imagens, e a utilizacao de limiares fixos aplicados no

espaco de cor escolhido.

Os metodos de deteccao de pele agrupam-se segundo De Siqueira et al. (2013), em:

• Metodos baseados em pixels: classifica cada pixel como pele e nao pele in-

dividualmente sem considerar sua vizinhanca. Um exemplo sao os baseados em

espacos de cor.

• Metodos baseados em regioes: exploram a organizacao espacial da vizinhanca

dos pixels da pele para melhorar o processo de deteccao.

Neste trabalho aplica-se a deteccao de pele na imagem de entrada com o intuito de

eliminar as partes que nao correspondem ao corpo das pessoas (bracos, pescoco, cabeca,

manos, etc). No entanto, o metodo nao consegue detectar perfeitamente a pele das

pessoas, detectando tambem algumas partes do fundo da imagem. O processo consiste

das seguintes partes:

40 Metodo Proposto

1. Coletar uma base colorida das partes da pele sobre diferentes condicoes de ilu-

minacao.

2. Escolher um espaco de cor determinado.

3. Treinar um modelo para aprender os parametros do classificador da pele.

O objetivo final da deteccao de pele e construir uma regra de decisao (Bayes) que

discrimine os pixels da pele dos pixels do fundo da imagem. Isto normalmente e atingido

mediante uma metrica que mede a distancia da cor do pixel com a cor da pele. Esse

tipo de metrica e definida a partir do metodo que modela a cor da pele (Shruthi and

Harsha 2013). Neste trabalho foi utilizado histogramas nao parametricos de Conaire

et al. (2007) que modelam a pele, esses histogramas estimam a distribuicao da cor da

pele a partir dos dados de treino. O modelo foi treinado com 14, 985, 845 pixels de pele

e 304, 844, 751 pixels de nao pele.

O diagrama de blocos do detector de pele apresenta-se na Figura 4.3. Onde a

entrada do detector e uma imagem RGB que produz uma matriz da pele com valores de

verossimilhanca normalizados entre [0, 1], aplicando um limiar nesses valores obtemos

um mapa binario de pele, cujos valores sao 1s para os pixels correspondentes a pele e 0s

no caso contrario.

Figura 4.3: Diagrama de blocos de deteccao de pele.

Para criar o modelo de probabilidade da pele e fundo, consideraram-se histogramas

RGB de um determinado tamanho de acordo com o numero de bins em cada canal.

Conaire et al. (2007) utilizaram histogramas de 32× 32× 32 bins, cada bins armazena

um numero inteiro que representa o numero de vezes que um valor de uma determinada

cor ocorreu na base inteira de imagens (pele e nao pele).

Para um determinado bins do histograma (cor do pixel), a probabilidade de ser pele

e calculada usando a Equacao 4.1:

Metodo Proposto 41

Skinlikelihood = logH(r, g, b)

h(r, g, b)(4.1)

onde H(r, g, b) corresponde ao histograma de pele e h(r, g, b) ao histograma de nao pele.

Para uma dada imagem calcula-se a probabilidade de ser pele usando a Equacao 4.1, em

seguida aplica-se um limiar para decidir se cada valor da matriz corresponde a pele ou ao

fundo. Portanto, o resultado obtido e uma imagem binaria, chamada mapa de pele, ver

Figura 4.4. Uma vez calculado o mapa de pele, operacoes de morfologia matematica sao

aplicadas no mapa. A fim de eliminar buracos e incrementar as dimensoes das regioes

que correspondem a pele, aplica-se operacoes de morfologia matematica (dilatacao).

Figura 4.4: Deteccao de pele.

4.2 Piramide de Imagens

Para detectar faces de diferentes tamanhos gera-se uma piramide de imagens (ver Fi-

gura 4.5), porque as faces apresentam diferentes poses que sao difıceis de detecta-las no

tamanho original ou utilizando poucas escalas (Figura 4.6).

Primeiramente, utiliza-se a matriz binaria que representa a deteccao de pele para

extrair os descritores HOG e HAOG so das janelas de busca com 30% dos pixels brancos

dos componentes conexos correspondentes a pele em relacao ao tamanho da imagem

original colorida, porem se a imagem for em tons de cinza utiliza-se todas as janelas

para classifica-las como faces ou nao faces. O objetivo disso e eliminar partes que

correspondem ao corpo das pessoas (maos, bracos, pescoco, etc) ou fundo da imagem.

Para formar a piramide de imagens considera-se o tamanho original desta (largura e

altura) como escala canonica, ora para aumentar ou diminuir o tamanho dela. No total

42 Metodo Proposto

Figura 4.5: Piramide de Imagens.

Figura 4.6: Imagem com faces de diferentes tamanhos.

gera-se 7 escalas, na primeira escala redimensiona-se 1.3 vezes o tamanho da imagem

original (escala maior) e o tamanho das imagens e diminuıdo nas escalas inferiores nos

intervalos de 1, 0.71, 0.51, 0.36, 0.26 e 0.18 vezes o tamanho original. Em todas as escalas

o tamanho da janela de busca e de 50× 50 pixels, as quais sao utilizadas para extrair os

descritores HOG e HAOG que serao fusionados para ser classificados como face ou nao

face. Posteriormente, as janelas classificadas como faces sao redimensionadas de acordo

com o valor do intervalo da escala atual que foi usado para redimensionar o tamanho da

imagem original:

• Na primeira escala (escala maior): o tamanho da janela de busca classificada e

redimensionada a 38× 38 pixels.

• Na segunda escala (escala canonica): o tamanho da janela de busca classificada e

redimensionada a 50× 50 pixels.

• Na terceira escala: o tamanho da janela de busca classificada e redimensionada a

Metodo Proposto 43

69× 69 pixels.

• Na quarta escala: o tamanho da janela de busca classificada e redimensionada a

98× 98 pixels.

• Na quinta escala: o tamanho da janela de busca classificada e redimensionada a

137× 137 pixels.

• Na sexta escala: o tamanho da janela de busca classificada e redimensionada a

192× 192 pixels.

• Na setima escala (ultima): o tamanho da janela de busca classificada e redimensi-

onada a 269× 269 pixels.

Na ultima escala o tamanho da imagem e proximo ao tamanho da janela de busca.

Para determinar o numero de escalas utilizou-se a formula de (Cevikalp and Triggs 2012):

ScaleNum =Se

Snonde Se = min(largura/50, altura/50)

Sn =log(Se)

log(Sr)

Sr = 1.4 e o fator de escala

(4.2)

para calcular o tamanho de uma imagem em uma determinada escala, utilizou-se a

formula de (Cevikalp and Triggs 2012): 1/Sr(SS−1), onde SS indica o numero da escala

atual, entao o resultado sera utilizado para redimensionar a imagem original. O deslo-

camento das janelas de busca utilizadas para extrair o vetor de caracterısticas varia de

acordo com o numero da escala atual. Por exemplo, considera-se 3 valores diferentes de

deslocamento, o primeiro sera utilizado quando as escalas sao maiores, o segundo para

escalas intermediarias e o ultimo para a menor escala.

4.3 Fusao dos descritores de caracterısticas

Para extrair as caracterısticas nas janelas de busca de tamanho de 50× 50 pixels,

concatena-se dois descritores que calculam os histogramas dos gradientes das imagens

44 Metodo Proposto

divididas em celulas espacadas, e para evitar problemas de iluminacao os histogra-

mas sao normalizados em blocos superpostos de celulas. Os descritores HOG e HAOG

diferenciam-se no calculo dos histogramas nos gradientes das texturas finas e com alto

contraste das faces, ou seja o descritor HAOG enfatiza as texturas com alto contraste

(ver Figura 4.7) quando calcula as orientacoes e magnitudes medias dos gradientes

quadrados (ver Figura 4.8).

Figura 4.7: Imagem das texturas com alto contrastes enfatizadas.

Figura 4.8: Exemplo do descritor HAOG.

Esses dois descritores sao concatenados para formar um unico vetor de caracterısticas

robusto (ver Figura 4.9), util para detectar faces borradas e com problemas de ilu-

minacao, que sao introduzidos na cascata de classificadores, afim de rejeitar os exemplos

negativos e aceitar os positivos. No caso das imagens coloridas os descritores serao ex-

traıdos so das janelas que contenham 30% de pele, porem, nas imagens em tons de cinza

serao extraıdos de todas as janelas de busca.

4.4 Classificacao

Geralmente, na fase de classificacao separa-se os vetores de caracterısticas dos dados em

duas classes face e nao face. Na literatura, encontra-se diferentes tipos de classificadores:

Metodo Proposto 45

Figura 4.9: Vetor de caracterısticas dos descritores HOG e HAOG concatenados.

Adaboost, Random Forest, maquinas de aprendizagem, entre outros, que generalizam o

modelo treinado com uma base para prever as classes de dados desconhecidos. Em

nosso caso, a base de teste sao fotografias de distintos tamanhos a diferenca da base

de treino que sao imagens de 50× 50 pixels (cross-dataset). Neste trabalho, adota-

se o classificador em cascata de “uma classe” devido a rapida rejeicao dos exemplos

negativos porque centra-se em modelar so a classe positiva como se fosse um convex

hull, onde todos os elementos encontram-se envolvidos dentro da regiao limitada. Por

isso, chama-se metodos de uma unica classe, ja que sao classificadores simples e rapidos

nas primeiras etapas da cascata e nas ultimas decidem se o exemplo pertence a classe

positiva ou negativa.

A cascata consiste em tres etapas (Figura 3.9) (Cevikalp et al. 2013): a primeira

utiliza um classificador de “uma classe” que aproxima a regiao ocupada pelos vetores de

caracterısticas da classe positiva afastando-os da classe negativa mediante a distancia a

um hiperplano linear, ou seja os vetores de caracterısticas da classe positiva ficam dentro

das margens do hiperplano que os separa da classe negativa. Ao mesmo tempo, utiliza-se

uma nova maquina de vetores de suporte linear que supera significativamente os SVMs

atuais, chamada Optimized Cutting Plane Algorithm (OCAS, em portugues Algoritmo

de Plano de Corte Otimizado) que procura um hiperplano de separacao dos exemplos

positivos e negativos. O hiperplano encontrado durante o treinamento, e trasladado

perto do espaco das caracterısticas da classe negativa com a finalidade de aceitar a maior

quantidade dos exemplos positivos, os quais serao classificados nas seguintes etapas da

cascata. A segunda etapa e um classificador de Support Vector Data Descriptor, (Tax and

46 Metodo Proposto

Duin 2004), que esta baseado em um modelo de uma hiperesfera linear que aproxima o

espaco de caracterısticas da classe positiva e considera como outliers a classe negativa, ou

seja durante o treinamento os vetores de suporte da classe positiva serao utilizados para

limitar a regiao da classe positiva mediante o centro e o raio da hiperesfera encontrada,

assim os exemplos negativos ficarao fora da hiperesfera. A ultima etapa toma a decisao

final de qual classe o objeto de entrada pertence, utiliza funcoes de kernel para projetar

os dados a dimensoes superiores no modelo da hiperesfera que aproxima as classes dos

exemplos positivos.

4.5 Supressao de nao-maximos

Devido a analise em multiplas escalas utilizando janelas deslizantes, e comum que varias

janelas vizinhas cobram a mesma regiao da face (Figura 4.10), ja que costumam ser

todas classificadas como face. Entao, multiplas deteccoes de um mesmo objeto sao des-

necessarias porque so deve-se considerar aquela que apresenta um melhor casamento com

o objeto a ser detectado, eliminando as demais. Uma forma de inferir essa informacao

e empregando a resposta do classificador (probabilidade) e assim as janelas com maior

probabilidade sao assumidas como as de maior casamento e as de menor probabilidade,

o contrario.

Figura 4.10: Exemplo de multiplas janelas detectadas para uma unica face.

A forma de calcular o quanto essas regioes se sobrepoem e importante no processo

de supressao. Neste caso, utiliza-se o coeficiente de jaccard para calcular o casamento

entre duas regioes A e B, Equacao 4.3:

Metodo Proposto 47

J(A,B) =|A ∩B||A ∪B|

(4.3)

ondeA, B sao as areas das duas regioes representadas pelas janelas deslizantes (retangulos).

O seguintes passos sao realizados na supressao das regioes representadas pelas janelas

deslizantes com seus respectivos valores de probabilidades fornecidos pelo classificador:

1. Ordena-se em ordem decrescente o conjunto de janelas baseadas na probabilidade.

2. Avalia-se a sobreposicao entre duas regioes, assim um limiar deve ser definido para

realizar o processo de supressao. De forma que as regioes com maior probabilidade

suprimam aquelas de menor, cujo coeficiente de jaccard seja superior ao limiar

escolhido. Neste caso, o valor do limiar e de 30% para suprimir aos falsos positivos

que geralmente encontram-se ao redor de uma unica face.

3. Finalmente, retorna-se as janelas resultantes do processo de supressao com as

maiores probabilidades para cada face.

4.6 Consideracoes Finais

Neste capıtulo foi apresentado o metodo proposto desta dissertacao e foi descrito cada

etapa da metodologia desenvolvida, a fim de dar uma maior compreensao dos metodos

utilizados. O objetivo de todo sistema de deteccao de faces e localizar onde se encon-

tram as faces nas imagens ou vıdeo, para facilitar esse processo segmenta-se os objetos

do fundo usando deteccao de pele a fim de reduzir o numero dos possıveis falsos posi-

tivos detectados. Para detectar faces de diferentes tamanhos nas imagens gera-se uma

piramide de imagens, de forma que as faces pequenas sejam detectadas nas escalas mai-

ores e as grandes nas menores. Na fase de extracao de caracterısticas, fusiona-se dois

descritores de histogramas de gradientes robustos (HOG e HAOG) que utilizam as tex-

turas grossas e finas das faces, no seguinte capıtulo mostra-se a importancia da fusao

deles. Finalmente, a principal contribuicao deste trabalho e a reducao do numero de fal-

sos positivos quando utilizar uma cascata de classificadores que sao rapidos ao rejeitar

os exemplos negativos, devido a que aproximam a classe positiva (face) discriminando-as

das regioes onde se encontram as caracterısticas dos exemplos negativos. Entao, como

48 Metodo Proposto

a deteccao e feita em multiplas escalas havera multiplas deteccoes para um mesmo ob-

jeto. Portanto, so deve-se considerar aquelas que apresentam um melhor casamento com

o objeto a ser detectado, empregando a resposta do classificador (probabilidade) para

eliminar as janelas com menores valores de probabilidades e cujo valor de sobreposicao

entre as regioes seja maior do que um limiar, baseado no coeficiente de jaccard.

Capıtulo 5

Experimentos

Este capıtulo apresenta os experimentos realizados nesta dissertacao. Primeiro, sera

descrita a base de faces e nao faces, medidas de avaliacao e a configuracao dos parametros

do metodo proposto. Para implementar o metodo proposto foi utilizado o software de

MATLAB R2012a no sistema operativo de Linux.

5.1 Base de Dados

A base de dados utilizada para treinar o metodo proposto consta de imagens pequenas de

faces e nao faces de tamanho de 50× 50 pixels, as quais sao diferentes da base de teste

(fotografias de qualquer tamanho) empregada para avaliar o metodo em comparacao

com outros metodos do estado da arte.

A base de faces utilizada para treinar e Label Faces in the Wild Cropped Dataset

(LFW-crop) (Sanderson 2009), que e uma versao recortada da base de reconhecimento

de pessoas Labeled Faces in the Wild (LFW) formada por mais de 13, 000 fotografias.

Para criar a base LFW-crop usaram o algoritmo de Viola-Jones para detectar faces

nas fotografias e cada uma foi redimensionada para um tamanho de 64× 64 pixels. No

total contem 13, 000 faces que apresentam variacoes de escala e posicao das faces. Para

treinar nosso metodo proposto utiliza-se as imagens de faces de tamanho de 50× 50

pixels.

Para gerar a base de nao rostos coletou-se imagens de fundos diversos redimensiona-

das ao tamanho de 50× 50 pixels. As bases usadas sao as seguintes:

49

50 Experimentos

• A base de nao rostos que Viola and Jones (2004) utilizou no treino.

• A base Bao Face (Frischholz n.d.): contem dois grupos de imagens, 221 imagens

coloridas de uma ou varias pessoas e 149 imagens com um unico rosto. Entao,

coletou-se as sub-imagens que nao contenham faces, por exemplo: maos, bracos,

cabelo, barba, cadeiras, paredes, etc, junto com os falsos positivos dessa base depois

de ser aplicado o detector de rostos de Viola and Jones (2004).

• A base Annotated Facial Landmarks in the Wild (Koestinger et al. 2010): contem

25, 000 imagens de 24, 686 indivıduos encontrados no site de Flickr. Aqui coletou-

se sub-imagens do fundo junto com todos os falsos positivos obtidos depois de

aplicar o detector de rostos de Viola and Jones (2004).

• Coletou-se sub-imagens de fundos da internet parecidas ao fundo de uma fotografia

comum junto com sub-imagens da base Pascal VOC (http://pascallin.ecs.

soton.ac.uk/challenges/VOC).

No total coletou-se 18, 800 imagens de nao faces, a Figura 5.1 apresenta alguns

exemplos.

Figura 5.1: Exemplos das imagens da base de treino.

5.2 Definicao de parametros

Nesta dissertacao propoe-se fusionar dois tipos de descritores: HOG e HAOG para obter

resultados promissores ao compara-los com outros metodos do estado da arte utilizando

as bases de teste (fotografias). Entao, precisa-se definir experimentalmente os valores

desses parametros:

Experimentos 51

• Para detectar faces nas fotografias utiliza-se janelas de 50× 50 pixels, as quais per-

correm a imagem toda com um valor de deslocamento diferente em cada escala. Na

primeira escala o valor de deslocamento sera de 8 pixels, nas escalas intermediarias

de 4 pixels e na escala proxima ao tamanho da janela de busca sera de 2 pixels

em x e y. No total gera-se 7 escalas, na primeira escala aumenta-se 1.3 vezes o

tamanho da imagem original, na segunda escala utiliza-se o tamanho original da

imagem (escala canonica) e as proximas escalas esse tamanho e diminuıdo proximo

a janela de busca.

• Depois de detectar a pele em uma imagem colorida, extraı-se os descritores HOG

e HAOG so das janelas com 30% de pele dos componentes conexos para logo ser

classificados como face ou nao face. Se a imagem for em tons de cinza, extraı-se

os descritores de todas as janelas de busca.

• A configuracao dos parametros dos descritores HOG e HAOG realiza-se na etapa

de treino, separando a base inteira (vetores de caracterısticas das faces e nao faces

de 50× 50 pixels) em dois grupos (treino e teste) mediante validacao cruzada.

Treina-se 20 vezes os vetores de caracterısticas dos descritores (HOG e HAOG)

individualmente e fusionados, para escolher de acordo com os valores da acuracia

media, desvio padrao e o F-score a configuracao que vai ser utilizada para treinar

nosso metodo proposto.

• Como os experimentos foram executados 20 vezes para cada configuracao dos des-

critores individualmente e fusionados, utiliza-se as seguintes medidas de avaliacao:

Matriz de Confusao, Acuracia Media e o F-score.

• o F-score mostra o quanto o classificador aprendeu sobre uma determinada classe.

Pode assumir valores entre 0 e 1, quanto mais proximo de 1 melhor o desempenho.

Como o F-score leva em consideracao os erros: falsos positivos (precisao) e falsos

negativos (revocacao), apresenta uma melhor descricao do classificador e e definido

como a media harmonica da precisao e revocacao:

F-score =2× precisao× revocacao

precisao + revocacao(5.1)

A precisao e o numero de amostras corretamente classificadas divididas pelo numero

total de amostras retornadas, enquanto revocacao e o numero de amostras corre-

tamente classificadas divididas pelo numero de amostras relevantes que deveriam

52 Experimentos

ter sido retornadas (Manning et al. 2008). A partir dessas medidas serao avaliados

os resultados de cada configuracao dos descritores individualmente treinados, para

escolher a configuracao que sera usada na fusao dos descritores, com a finalidade

de conseguir uma melhor eficacia do metodo proposto.

• Primeiro configura-se os parametros: tamanho de bloco, celula e numero de bins do

descritor HOG. A Tabela 5.1, apresenta os resultados obtidos da acuracia media,

o desvio padrao e o F-score de cada combinacao dos parametros.

Parametros do HOG Acuracia Media Desvio Padrao F-score

Teste1: [9,8,1] 96.99% 0.21 96.14%

Teste2: [9,8,2] 97.43% 0.15 96.72%

Teste3: [9,8,4] 97.55% 0.16 96.87%

Teste4: [9,10,1] 97.20% 0.21 96.42%

Teste5: [9,10,2] 97.48% 0.17 96.79%

Teste6: [9,10,4] 97.53% 0.11 96.85%

Teste7: [12,8,2] 97.27% 0.20 96.51%

Teste8: [6,8,2] 97.37% 0.19 96.64%

Tabela 5.1: Resultados da Acuracia Media, Desvio Padrao e o F-score de cadaparametro do descritor HOG: [bloco, celula, bin].

A configuracao do descritor HOG escolhida deve possuir um elevado valor de F-

score e de acordo com os resultados obtidos a configuracao bin = 9, celula = 8 e

bloco = 4 apresentou o valor mais alto de F-score= 96.87. Porem, nas outras confi-

guracoes os valores de F-score foram proximas a configuracao escolhida. Entanto,

escolhe-se essa configuracao (cujo tamanho do vetor e de 2592 caracterısticas) por-

que o tamanho do histograma e importante na caracterizacao das faces de 50× 50

pixels, pois treinar o metodo com histogramas de menor tamanho nao se conse-

guira uma melhor eficacia e com tamanhos muito grande o custo computacional

sera alto.

• No caso do descritor HAOG, configura-se tambem os parametros: tamanho de

bloco, celulas e numero de bins durante o treinamento. A acuracia media, o desvio

padrao e o F-score de cada experimento sao apresentados na Tabela 5.2.

Experimentos 53

Parametros do HAOG Acuracia Media Desvio Padrao F-score

Teste1: [9,8,1] 95.32% 0.14 93.95%

Teste2: [9,8,2] 96.07% 0.17 94.91%

Teste3: [9,8,4] 96.44% 0.15 95.43%

Teste4: [9,10,1] 95.04% 0.19 93.62%

Teste5: [9,10,2] 96.14% 0.14 95.04%

Teste6: [9,10,4] 95.77% 0.25 94.59%

Teste7: [12,8,2] 95.58% 0.10 94.23%

Teste8: [6,8,2] 96.38% 0.10 95.34%

Tabela 5.2: Resultados da Acuracia Media, Desvio Padrao e o F-score obtidospara cada configuracao do descritor HAOG: [bloco, celula, bin].

A configuracao do descritor HAOG escolhida e bin= 9, celula= 8 e bloco= 4

e apresentou o valor mais alto de F-score= 95.43 em comparacao com as outras

configuracoes. Entao, escolhe-se essa configuracao para avaliar se melhora a eficacia

do metodo quando fusionar os dois descritores.

• A ultima parte deste trabalho e fusionar os dois descritores (HOG e HAOG) para

configurar os parametros deles. Considera-se a configuracao dos parametros de

cada descritor que tiveram os valores mais altos do F-score, com a finalidade de

atingir resultados promissores ao comparar nosso metodo com o estado da arte. A

acuracia media, o desvio padrao e o F-score de cada experimento sao apresentados

na Tabela 5.3.

A configuracao da fusao dos descritores (HOG e HAOG) escolhida e [9, 8, 4][9, 8, 4]

([bloco, celula, bin]), pois apresentou o valor mais alto da Acuracia= 97.65 e

F-score= 96.90 em comparacao com as outras configuracoes. Portanto, essa con-

figuracao e utilizada para treinar o metodo proposto e o vetor de caracterısticas

concatenado de ambos descritores consegue caracterizar melhor as faces, a dife-

renca dos resultados obtidos por cada descritor.

• O tamanho de cada imagem (faces) na base LFW-crop e de 64× 64 pixels, porem

para treinar nosso metodo se redimensionou ao tamanho de 50× 50 pixels para

diminuir o custo computacional na extracao dos descritores na imagem inteira

(a maior tamanho da janela de busca maior sera o tempo de execucao por cada

54 Experimentos

Parametros do HOG-HAOG Acuracia Media Desvio Padrao F-score

Teste1: [9,8,1][9,8,1] 96.02% 0.13 94.83%

Teste2: [9,8,1][9,8,2] 96.34% 0.16 95.26%

Teste3: [9,8,1][9,8,4] 96.95% 0.18 96.09%

Teste4: [9,8,2][9,8,1] 96.46% 0.15 95.42%

Teste5: [9,8,2][9,8,2] 96.31% 0.22 95.22%

Teste6: [9,8,2][9,8,4] 97.07% 0.18 96.24%

Teste7: [9,8,4][9,8,1] 96.62% 0.16 95.64%

Teste8: [9,8,4][9,8,2] 96.58% 0.14 95.59%

Teste9: [9,8,4][9,8,4] 97.65% 0.20 96.90%

Tabela 5.3: Resultados da Acuracia Media, Desvio Padrao e o F-score obtidospara cada configuracao dos descritores HOG-HAOG: [bloco, celula, bin].

imagem). Alem disso, calcula-se a acuracia media, o desvio padrao e o F-score

dos descritores HOG-HAOG usando a configuracao [9, 8, 4][9, 8, 4] nas imagens de

64× 64 pixels, cujos resultados serao comparados com os descritores extraıdos nas

imagens de 50× 50 pixels. A Tabela 5.4 apresenta a comparacao dos resultados

obtidos nas imagens de 64× 64 pixels com 50× 50 pixels.

Tamanho Acuracia Media Desvio Padrao F-score

50 × 50 97.65% 0.20 96.90%

64 × 64 93.76% 0.17 91.63%

Tabela 5.4: Resultados da Acuracia Media, Desvio Padrao e o F-score dosdescritores HOG-HAOG nas imagens de 50× 50 pixels e 64× 64 pixels.

Os resultados mostram que a deteccao feita por janelas de 50× 50 pixels (cujo

tamanho e um vetor de 2592 caracterısticas), obteve o maior valor da Acuracia e

F-score usando a configuracao de [9, 8, 4][9, 8, 4] da fusao dos descritores HOG e

HAOG. Finalmente, consegue-se uma melhor eficacia ao extrair os descritores nas

janelas de 50× 50 pixels do que utilizar janelas de 64× 64 pixels (cujo tamanho

e um vetor de 7200 caracterısticas), ja que o tamanho da fusao dos descritores e

maior e o custo computacional ao serem extraıdos e alto.

Experimentos 55

• A cascata de classificadores tambem possui parametros que precisam ser ajusta-

dos. A primeira etapa usa dois classificadores: um SVM que separa as duas classes

mediante um hiperplano trasladado perto da regiao dos exemplos negativos, para

aceitar a maior quantidade de exemplos positivos a serem refinados nas proximas

etapas; um hiperplano linear que aproxima e restringe os exemplos positivos den-

tro de dois hiperplanos paralelos mediante a Equacao 5.1, utiliza-se a biblioteca

LIBOCAS1.

A Tabela 5.5, apresenta os valores de cada parametro da Equacao 5.1:

Classe C Delta

Positiva 3 0.3

Negativa 1 -0.3

Tabela 5.5: Parametros C+ e C−, controlam o peso dos erros associados coma classe positiva e negativa. O valor da constante Delta esta no intervalo de [0a 1] e restringe os exemplos positivos dentro de dois hiperplanos paralelos.

A segunda etapa e uma hiperesfera linear que trabalha sobre o espaco de carac-

terısticas de entrada e utiliza a Equacao 3.21 para treina-la mediante o algoritmo de

programacao quadratica: SMO (Sequential Minimal Optimization, em portugues

Otimizacao Mınima Sequencial). A solucao do problema indicara se o exemplo

encontra-se sobre a margem da hiperesfera (vetor de suporte) e o multiplicador

de Lagrange associado a ele sera diferente de 0. Para calcular o centro (Equacao

3.24) e o raio (Equacao 3.22) da hiperesfera usa-se os multiplicadores de Lagrange

de forma que todos os exemplos positivos fiquem dentro da hiperesfera, como um

convex hull. No calculo do raio, utiliza-se os exemplos dos vetores de suporte da

classe positiva encontrados dentro do limite da constante de regularizacao C = 0.2

e os subtraımos com o centro da hiperesfera para calcular o raio medio. Portanto,

para classificar os exemplos da base de treino calcula-se a distancia de cada um ao

centro da hiperesfera e aqueles valores encontrados dentro dos limites do raio, sao

classificados como positivos, caso contrario negativos.

A terceira etapa da cascata e um classificador de hiperesfera nao linear que toma

a decisao final. Os dados de entrada sao transformados a um novo espaco de

1LIBOCAS e uma biblioteca que implementa algoritmos otimizados de plano de corte (OCAS) paratreinar classificadores SVM lineares: binario e multi-classe, encontrado no site: http://cmp.felk.

cvut.cz/~xfrancv/ocas/html/.

56 Experimentos

caracterısticas mediante uma funcao kernel gaussiana. Para treinar a hiperesfera

nao linear utiliza-se o kernel RBF, cujo parametro γ e 0.1543 e e calculado a partir

da formula: γ = 1/(2 ∗ kernel2), onde a variavel kernel e 1.8. Alem disso, realiza-

se um procedimento similar ao treinamento da hiperesfera linear, porem substitui-

se os produtos internos da Equacao 3.23 por avaliacoes de kernel. Finalmente,

a classificacao dos exemplos como positivos ou negativos, avalia-se as distancias

deles ao raio da hiperesfera nao linear limitada.

5.3 Consideracoes Finais

Neste capıtulo, apresentou-se os diferentes experimentos para determinar qual confi-

guracao dos parametros dos descritores HOG e HAOG deve ser escolhida separadamente

para utiliza-las quando fusionar ambos descritores, esperando obter melhores resultados.

Primeiro, descreve-se a base de treino, a qual sera dividida em dois grupos (treino e teste)

mediante validacao cruzada. Cada configuracao dos descritores foi treinada 20 vezes e o

conjunto de teste usou-se para calcular atraves da matriz de confusao a acuracia media,

o desvio padrao e o F-score medio. O F-score e uma medida usada para avaliar a eficacia

de nosso metodo com relacao a cada configuracao dos descritores, portanto valores altos

garantem uma melhor eficacia. No caso do descritor HOG, a configuracao [9, 8, 4] apre-

sentou o valor de F-score mais alto, porem os valores das outras configuracoes foram

proximas. Escolhe-se essa configuracao considerando o tamanho do histograma, pois

histogramas de menor tamanho nao se conseguira uma melhor eficacia e com tamanhos

muito grande o custo computacional sera alto. Utilizou-se a mesma configuracao para

o descritor HAOG, conseguindo a melhor eficacia em todos os casos. Depois, realiza-se

experimentos misturando alguns parametros das duas configuracoes escolhidas anterior-

mente (HOG e HAOG) para escolher a melhor, retornando a configuracao [9, 8, 4][9, 8, 4]

os valores mais altos de F-score medio e acuracia media. Tambem, justifica-se o por-

que do uso das janelas de busca de 50× 50 pixels ao comparar os resultados obtidos

da acuracia media e o F-score medio usando a configuracao [9, 8, 4][9, 8, 4] das janelas

de 64× 64 pixels, cujos resultados foram ruins. Finalmente, apresenta-se a configuracao

dos parametros da cascata de classificadores: hiperplanos, hiperesfera linear e nao linear.

Esses experimentos sao uteis para determinar a melhor configuracao de nosso modelo,

com a finalidade de obter resultados promissores ao serem avaliados com alguns metodos

do estado da arte usando as bases de teste FDDB e AFW, as quais serao apresentadas

no proximo capıtulo.

Capıtulo 6

Resultados e Discussao

Neste capıtulo sao apresentados os resultados experimentais sobre as bases de teste para

avaliar nosso metodo proposto. Primeiro sao descritas as bases de teste, as ferramentas

de avaliacao e finalmente serao discutidos os resultados obtidos.

6.1 Base de Dados de Teste

Para avaliar experimentalmente o metodo proposto, foram utilizadas duas bases de teste,

as quais sao usadas no estado da arte para comparar as diferentes abordagens.

• Face Detection Data Set and Benchmark (Jain and Learned Miller 2010):

e uma base desenhada para estudar o problema de deteccao de faces sem res-

tricoes. Contem 5171 faces de 2845 imagens obtidas das fotos dos jornais na

internet. Essas imagens sao capturadas em lugares com cenarios complexos cujas

faces apresentam muitas variacoes de pose, oclusao, mal focadas, entre outros (ver

Figura 6.1). Os autores proveem uma lista do ground truth das faces manual-

mente rotulados em formato de elipse. A base de imagens foi separada em 10 folds

utilizando validacao cruzada, para avaliar a eficacia do detector.

• Annotated Faces in the Wild (AFW) (Zhu and Ramanan 2012): A base foi

formada utilizando aleatoriamente imagens de Flickr que contem pelo menos uma

face (Figura 6.2). No total colecionaram-se 250 imagens com 468 faces. As imagens

apresentam cenarios complexos com variacoes da posicao (desde −90◦ a 90◦ cada

15◦) e aparencia das faces, por exemplo: oculos de sol, idade, maquiagem, cor de

57

58 Resultados e Discussao

pele, expressao facial, etc. Cada face e rotulado com um retangulo e 6 landmarks

(centro dos olhos, nariz, centro e dois extremos da boca). Portanto, para avaliar

a performance da deteccao utiliza-se o codigo de avaliacao da base FBDD, mas

neste caso o matching e calculado entre dois retangulos, pois o ground truth da

base AFW esta definido a partir de retangulos (regiao de interesse).

Figura 6.1: Exemplos das imagens da base FDDB.

Figura 6.2: Exemplos das imagens da base AFW.

6.2 Ferramenta de Avaliacao

A fim de avaliar a eficacia da deteccao de nosso metodo com relacao a outros metodos

propostos no estado da arte, foram realizados diferentes experimentos para determinar

qual metodo apresenta uma melhor eficacia. Portanto, utiliza-se uma ferramenta muito

Resultados e Discussao 59

util na analise e comparacao de classificadores, chamada Curva Roc (Receiver Operating

Characteristic).

No site da Base FDDB http://vis-www.cs.umass.edu/fddb/results.html, apre-

sentam dois tipos de escores das deteccoes: discreto e contınuo. Alem disso, utilizam

o seguinte criterio de avaliacao: se a razao entre a interseccao das areas de deteccao e

anotacao sobre a uniao delas mesmas e maior ou igual que 0.5 (coeficiente de Jaccard), o

escore 1 e alocado para a area de deteccao, caso contrario e 0, (Jain and Learned Miller

2010).

Comumente utiliza-se retangulos nas regioes das faces nas imagens, porem Zhu and

Ramanan (2012) definiram elipses. Entao, para representar o grau de casamento entre

uma deteccao di e uma anotacao lj, utiliza-se o coeficiente de Jaccard (Equacao 4.3).

A questao e, como estabelecer um casamento entre um conjunto de deteccoes e

anotacoes quando existem falsos positivos ou multiplas deteccoes para uma unica face?

(ver Figura 6.3).

Figura 6.3: Essa imagem e um exemplo do casamento entre as deteccoes (retangulos)e as anotacoes (elipses). A segunda face a esquerda tem duas deteccoes sobrepostas,portanto seleciona-se aquela com maior porcentagem de casamento com a elipse. Osegundo retangulo amarelo e um falso positivo.

O casamento entre as deteccoes e anotacoes, formula-se como um problema de em-

parelhamento de peso maximo em um grafo bipartido (ver Figura 6.4).

Se L e o conjunto das anotacoes e D e o conjunto das deteccoes, constroi-se um grafo

bipartido G com um conjunto de nos V = L∪D, onde cada no di esta conectado a cada

anotacao lj ∈ L com uma aresta associada a um peso nao negativo wi,j. Alem disso, para

cada deteccao di ∈ D, e introduzido um no ni ∈ N para corresponder ao caso quando

nao exista um casamento da deteccao di com uma regiao da face em L (coeficiente de

60 Resultados e Discussao

Figura 6.4: Exemplo do emparelhamento de peso maximo em um grafo bipartido.Gera-se um mapeamento injetivo do conjunto das regioes detectadas di ao conjuntodas anotacoes li. A propriedade do mapeamento resultante e maximizar a semelhancacumulativa ponderada de todas as regioes detectadas na imagem.

Jaccard). Entao, o casamento e determinado pela maximizacao do escore de casamento

satisfazendo as seguintes restricoes:

∀d ∈ D, ∃l ∈ L ∪N , dM→ l (6.1)

∀l ∈ L,@d, d′ ∈ D , dM→ l ∧ d′ M→ l (6.2)

onde, so existe um casamento de uma deteccao di com uma anotacao lj e nao duas

deteccoes di para uma mesma anotacao lj.

O resultado do escore e usado para avaliar a eficacia do algoritmo de deteccao nessa

imagem. Os autores propoem duas metricas para determinar o escore yi para a deteccao:

• Escore discreto: yi = γS(di,vi) ≥ 0.5

• Escore contınuo: yi = S(di, vi)

onde di e a uma deteccao e vi corresponde a sua respectiva anotacao. O escore contınuo

e o valor direto do casamento, e o discreto e atribuıdo 1 ou 0 dependendo se o escore for

maior ou igual que 0, 5. A taxa de verdadeiros positivos e definida como a media dos

escores discretos ou contınuos do ground truth das faces. Para ambos criterios utiliza-se

as curvas ROC para comparar a eficacia das diferentes abordagens sobre as bases de

teste.

A avaliacao utilizando graficos ou diagramas permitem uma melhor visualizacao da

multidimensionalidade do problema de avaliacao. A curva ROC esta baseada na pro-

Resultados e Discussao 61

babilidade de deteccao ou taxa de verdadeiros positivos e na probabilidade de falsos

alarmes ou taxa de falsos positivos. Um modelo de classificacao e representado por um

ponto no espaco ROC. Alguns pontos no espaco ROC merecem destaque, por exemplo:

o ponto (0, 0) representa a estrategia de nunca classificar um exemplo como positivo,

o ponto (100%, 100%) representa a estrategia de sempre classificar um novo exemplo

como positivo, o ponto (0, 100%) representa o modelo perfeito (todos os exemplos sao

classificados corretamente) e o ponto (100%, 0) representa o modelo que sempre faz

predicoes erradas, (Prati et al. 2008). Modelos proximos ao canto inferior esquerdo

consideram-se conservatorios porque classificam positivamente exemplos se realmente

tem certeza, eles cometem poucos erros (falsos positivos) e possuem baixas taxas de

verdadeiros positivos. Modelos proximos ao canto superior direito sao considerados li-

berais porque frequentemente predizem aos exemplos como classe positiva e possuem

altas taxas de falsos positivos. Quando os modelos encontram-se na linha diagonal as-

cendente (0, 0)− (100%, 100%) representa um modelo de comportamento estocastico, ou

seja cada ponto (p, p) pode ser obtido pela previsao da probabilidade da classe positiva

p e da classe negativa 100% − p. Os pontos dos modelos pertencentes ao triangulo su-

perior esquerdo a essa diagonal representam modelos que desempenham melhor que o

aleatorio e pontos pertencentes ao triangulo inferior direito representam modelos piores

que o aleatorio (ver Figura 6.5).

Figura 6.5: Espaco ROC.

Entao, uma vantagem de utilizar a curva ROC esta na avaliacao da ordenacao dos

exemplos, ao inves da classificacao, por exemplo um classificador nao prediz a classe

senao um valor contınuo ou ordinal e para criar o modelo de classificacao pode-se escolher

62 Resultados e Discussao

um limiar de classificacao, variando o valor em todo seu espectro (desde o mais restritivo

ate o mais liberal). Portanto, o desempenho do sistema esta representado por uma

curva no espaco ROC, chamado curva ROC. Uma outra conexao entre a curva ROC e

a ordenacao dos exemplos esta relacionada com a area abaixo da curva (em ingles Area

Under Curve, AUC) que e uma fracao da area de um quadrado de lado um, o seu valor

esta sempre entre 0 e 1. Em (Hanley and McNeil 1982) mostraram que essa area e

numericamente equivalente a estatıstica de Wilconxon. Progressivamente, a AUC vem

ganhando espaco como medida de avaliacao de modelos em aprendizado de maquinas.

Para comparar o desempenho das diferentes abordagens recomenda-se analisar a

curva ROC, ja que para um intervalo de desempenho uma abordagem poderia superar

outra, porem a comparacao relativa pode ser contraria em um intervalo diferente. Por

exemplo, um algoritmo de deteccao pode ser capaz de manter um elevado nıvel de

precisao para valores baixos de recall, mas a precisao pode cair abruptamente depois

de um ponto. Essa tendencia sugere que o detector seja util nas aplicacoes biometricas

como controle de acesso, os quais requerem de alta precisao com baixos nıveis de recall

e o mesmo detector nao pode ser util em aplicacoes de vigilancia porque requer uma

recuperacao de todas as faces de uma imagem ou vıdeo. Portanto, a analise de todos

os intervalos das curvas ROC deve ser feita para determinar pontos fortes das diferentes

abordagens.

6.3 Experimentos

Para avaliar e comparar os resultados obtidos de nosso metodo proposto com alguns

metodos do estado da arte, realiza-se experimentos separados em cada base de teste

apresentada anteriormente. Alem disso, utiliza-se a configuracao de parametros selecio-

nados no capıtulo anterior.

• Face Detection Data Set and Benchmark (FDDB): a avaliacao de nosso

metodo proposto implica realizar o protocolo de experimento: EXP-2 que permite

utilizar uma base de treino diferente a FDDB. Alem disso, a base FDDB esta

dividida em 10 folds usada como conjuntos de validacao para obter 10 curvas

ROC diferentes. A eficacia cumulada e apresentado como uma curva ROC media,

(Jain and Learned Miller 2010). As Figuras 6.6 e 6.7, apresentam as curvas

ROC discretas e contınuas da comparacao dos metodos HOG, HAOG, HOG-LBP

Cevikalp et al. (2013) e HOG-HAOG (nosso metodo proposto).

Resultados e Discussao 63

Figura 6.6: Curvas ROC discretas sobre a base FDDB.

Figura 6.7: Curvas ROC contınuas sobre a base FDDB.

Para comparar esses metodos foram treinados utilizando a mesma cascata de clas-

sificadores e base de treino, exceto o HOG-LBP Cevikalp et al. (2013) porque foi

treinado com uma base diferente e nosso metodo aplica o mesmo tipo de classifi-

cadores introduzidos por eles. A Tabela 6.5, apresenta os resultados da taxa de

Verdadeiros Positivos e o numero de Falsos Positivos atingidos por cada metodo.

64 Resultados e Discussao

Metodo Verdadeiros Positivos Falsos Positivos

HOG-HAOG 75% 160

HOG 75.5% 265

HAOG 70% 1240

HOG-LBP (Cevikalp et al. 2013) 75.5% 342

Tabela 6.1: Resultados da taxa de Verdadeiros Positivos e Numero de FalsosPositivos de cada metodo sobre a base FDDB.

Para avaliar a eficacia de cada metodo calcula-se a area abaixo da curva (AUC)

das curvas normalizadas ate o menor numero de falsos positivos atingido por nosso

metodo (ver Figuras 6.8 e 6.9). A Tabela 6.2, apresenta os resultados obtidos

da AUC (curvas discreta e contınua) de cada metodo.

Figura 6.8: Curvas ROC discretas normalizadas sobre a base FDDB.

De acordo com os resultados obtidos da AUC, pode-se mostrar que nosso metodo

apresenta a melhor eficacia (AUC = 0.6586) com menor numero de falsos positivos

em comparacao com os outros metodos. Alem disso, o comportamento das curvas

de nosso metodo no espaco ROC aproxima-se mais ao canto superior esquerdo

(classificacao perfeita).

O principal aporte de nosso trabalho e a diminuicao do numero de falsos positi-

Resultados e Discussao 65

Figura 6.9: Curvas ROC contınuas normalizadas sobre a base FDDB.

Metodo AUC discreto AUC contınuo

HOG-HAOG 0.6586 0.4621

HOG 0.6205 0.4390

HAOG 0.4986 0.3497

HOG-LBP 0.5872 0.4191

Tabela 6.2: Resultados da AUC discreta e contınua de cada metodo sobre abase FDDB.

vos, por isso utiliza-se a cascata de classificadores junto com o detector de pele.

Entao, realiza-se experimentos nesta base para mostrar que utilizando a cascata

de classificadores sem o detector de pele; usando so um SVM linear; a cascata de

classificadores modificada (no primeiro estagio extraı-se o so o descritor HOG e

nos estagios restantes so o descritor HAOG) nao conseguem reduzir consideravel-

mente os falsos positivos. As seguintes Figuras 6.10 e 6.11 apresentam as curvas

discretas e contınuas dos experimentos.

Calcula-se a AUC das curvas discretas e contınuas normalizadas pelo menor numero

de falsos positivos atingidos por nosso metodo (Tabela 6.5) junto com a taxa de

Verdadeiros Positivos e o numero de Falsos Positivos de cada experimento (Tabela

6.4).

66 Resultados e Discussao

Figura 6.10: Curvas ROC discretas do metodo proposto; usando so um SVM linear; semusar o detector de pele e a cascata modificada sobre a base FDDB.

Figura 6.11: Curvas ROC contınuas do metodo proposto; usando so um SVM linear;sem usar o detector de pele e a cascata modificada sobre a base FDDB.

Nosso metodo conseguiu atingir uma maior AUC com o menor numero de falsos

positivos, porem a taxa de verdadeiros positivos foi ligeiramente menor do que os

resultados dos experimentos realizados. Alem disso, quando utiliza-se o detector

de pele se reduz em um 47.53% (21393367) a quantidade total das janelas de

Resultados e Discussao 67

Metodo AUC discreto AUC contınuo

HOG-HAOG 0.6586 0.4621

HOG-HAOG + SVM 0.6424 0.4516

HOG-HAOG sem pele 0.6256 0.4345

HOG-HAOG modificada 0.6504 0.4598

Tabela 6.3: Resultados da AUC discreta e contınua dos experimentos realizadossobre o metodo proposto HOG-HAOG.

Metodo Verdadeiros Positivos Falsos Positivos

HOG-HAOG 75% 160

HOG-HAOG + SVM 81.8% 5000

HOG-HAOG sem pele 76% 250

HOG-HAOG modificada 75% 360

Tabela 6.4: Resultados da Taxa de Verdadeiros Positivos e o Numero de FalsosPositivos dos experimentos realizados sobre o metodo proposto HOG-HAOG.

busca (45004730) sem usar o detector de pele. O tempo de execucao de nosso

metodo para detectar todas as faces na base inteira foi de 3 horas aproximada-

mente, e dependendo do tamanho de cada imagem nosso detector de faces demorou

2 segundos a mais. Finalmente, determina-se que nosso metodo proposto conse-

gue reduzir consideravelmente o numero de falsos positivos obtendo uma melhor

eficacia de acordo com os valores da AUC.

As seguintes Figuras 6.12 e 6.13 apresentam as curvas ROC discretas e contınuas

normalizadas de nosso metodo proposto em comparacao com alguns metodos do

estado da arte considerados no benchmark da base FDDB, realizamos essa com-

paracao ja que utiliza-se o mesmo protocolo de experimentos: mesma base, mesmos

exemplos de validacao separados em 10 folds para finalmente apresentar uma curva

media (discreta e contınua) que mostra a eficacia cumulada (10 folds).

Pode-se ver que nosso detector e comparavel com o estado da arte, nao atingimos

os melhores resultados mas conseguimos ficar perto. Em esta comparacao nao

consideramos os metodos que utilizam landmarks na deteccao de faces, ja que nosso

metodo proposto nao usa esse tipo de abordagens. Entao, para avaliar a eficacia

68 Resultados e Discussao

Figura 6.12: Curvas ROC discretas normalizadas de alguns metodos do estado da arte.

Figura 6.13: Curvas ROC contınuas normalizadas de alguns metodo do estado da arte.

de nosso metodo em comparacao com os metodos considerados no benchmark,

calcula-se a AUC de cada um. A Tabela 6.5, apresenta os resultados obtidos.

A AUC de nosso metodo proposto e 0.6586 discreto e 0.4621 contınuo, ficando

terceiro no ranking. Os metodos SURF-Frontal e SURF-MultiView, de Li and

Zhang (2013), propoem um framework para treinar uma cascata de Boosting de-

Resultados e Discussao 69

Metodo AUC discreto AUC contınuo

SURF-MultiView 0.7832 0.5279

SURF-Frontal 0.7363 0.4807

HOG-HAOG 0.6586 0.4621

Li et al. (2011) 0.6548 0.4136

HOG-LBP 0.5872 0.4191

PEP-Adapt 0.5819 0.3748

Seguı et al. (2012) 0.5732 0.3692

Kostinger et al. (2012) 0.4909 0.3494

Jain and Learned Miller (2011) 0.4337 0.2819

Viola and Jones (2004) 0.2773 0.1809

Mikolajczyk et al. (2004) 0.2734 0.1780

Venkatesh and Marcel (2010) 0.1363 0.0892

Kienzle et al. (2004) 0.0042 0.0549

Tabela 6.5: Resultados da AUC discreta e contınua de cada metodo sobre abase FDDB.

rivados do trabalho de Viola and Jones (2004), utiliza as caracterısticas SURF

multidimensionais em vez das caracterısticas Haar para descrever os blocos locais

das imagens reduzindo consideravelmente a quantidade dos blocos. Alem disso,

adota regressao logıstica como classificadores fracos e AUC como criterio de con-

vergencia durante o treinamento da cascata. Esses metodos: SURF-Frontal e

SURF-MultiView, atingiram os melhores resultados com uma AUC de 0.7363,

0.7832 discreto e 0.4807, 0.5279 contınuo, respectivamente. Portanto, a eficacia

de nosso metodo conseguiu ganhar varios metodos do estado da arte considerados

no benchmark da base FDDB.

• Annotated Faces in the Wild (AFW): como a base FDDB, realiza-se expe-

rimentos para mostrar que utilizando a cascata de classificadores sem o detector

de pele nao se consegue reduzir os falsos positivos, nem usando so o SVM linear e

nem modificando a cascata de classificadores (no primeiro estagio extraı-se o so o

descritor HOG e nos estagios restantes so o descritor HAOG). As seguintes Figuras

6.14 e 6.15 apresentam as curvas discretas e contınuas de cada experimento.

A Tabela 6.6 apresenta a AUC das curvas discretas e contınuas normalizadas ate

70 Resultados e Discussao

Figura 6.14: Curvas ROC discretas do metodo proposto; usando so um SVM linear; semusar o detector de pele e a cascata modificada sobre a base AFW.

Figura 6.15: Curvas ROC contınuas do metodo proposto; usando so um SVM linear;sem usar o detector de pele e a cascata modificada sobre a base AFW.

o menor numero de falsos positivos atingidos por nosso metodo, e a Tabela 6.7

apresenta a taxa de Verdadeiros Positivos e o numero de Falsos Positivos de cada

experimento.

Resultados e Discussao 71

Metodo AUC discreto AUC contınuo

HOG-HAOG 0.5467 0.3793

HOG-HAOG + SVM 0.5428 0.3723

HOG-HAOG sem pele 0.5320 0.3688

HOG-HAOG modificada 0.5379 0.3722

Tabela 6.6: Resultados da AUC discreta e contınua dos experimentos realizadossobre o metodo proposto HOG-HAOG.

Metodo Verdadeiros Positivos Falsos Positivos

HOG-HAOG 61.8% 490

HOG-HAOG + SVM 77.7% 12000

HOG-HAOG sem pele 62.5% 680

HOG-HAOG modificada 61% 880

Tabela 6.7: Resultados da Taxa de Verdadeiros Positivos e o Numero de FalsosPositivos dos experimentos realizados sobre o metodo proposto HOG-HAOG.

Nosso metodo conseguiu atingir uma maior AUC com o menor numero de falsos

positivos, porem a taxa de verdadeiros positivos foi ligeiramente menor do que os

resultados dos experimentos realizados. Alem disso, quando utiliza-se o detector de

pele se reduz em um 46.36% (5802503) a quantidade total das janelas de busca

(12514618) sem usar o detector de pele. O tempo de execucao para detectar todas

as faces nas base inteira foi de 1 hora e 30 minutos aproximadamente, devido a

que essa base contem imagens muito grandes e dependendo do tamanho de cada

uma, nosso detector de faces demorou 8 segundos a mais. Finalmente, determina-

se que nosso metodo proposto consegue reduzir consideravelmente o numero de

falsos positivos obtendo uma melhor eficacia de acordo com os valores da AUC.

Nesta base foram feitos os mesmos experimentos apresentados anteriormente na

base FDDB. As Figuras 6.16 e 6.17 apresentam as curvas ROC discretas e

contınuas da comparacao dos metodos HOG, HAOG, HOG-LBP (Cevikalp et al.

2013), Viola and Jones (2004) e nosso metodo proposto HOG-HAOG.

A Tabela 6.8 apresenta os resultados da taxa de Verdadeiros Positivos e o numero

de Falsos Positivos atingido por cada metodo.

72 Resultados e Discussao

Figura 6.16: Curvas ROC discretas sobre a base AFW.

Figura 6.17: Curvas ROC contınuas sobre a base AFW .

Pode-se observar que as taxas de Verdadeiros Positivos atingidas por todos os

metodos nao e tao alta quanto o resultado da base FDDB, porque a base AFW

apresenta maiores variacoes da posicao das faces (mais faces de perfil) dificul-

tando a deteccao de faces e os tamanhos das imagens sao maiores aproximada-

mente 2191× 1701 pixels (em alguns casos), portanto, sao redimensionados ate

700× 700 pixels. Calcula-se a AUC de cada metodo para avaliar a eficacia, nor-

Resultados e Discussao 73

Metodo Verdadeiros Positivos Falsos Positivos

HOG-HAOG 61.8% 490

HOG 61.2% 720

HAOG 45.5% 3550

HOG-LBP 63.8% 670

Viola and Jones (2004) 30.20% 1600

Tabela 6.8: Resultados da taxa de Verdadeiros Positivos e numero de FalsosPositivos de cada metodo sobre a base AFW.

malizando as curvas ate o menor numero de falsos positivos (atingido por nosso

metodo), as Figuras 6.18 e 6.19 mostram as curvas geradas, e a Tabela 6.9

apresenta os resultados obtidos da AUC.

Figura 6.18: Curvas ROC discretas normalizadas sobre a base AFW.

Finalmente, nosso metodo proposto consegue obter uma maior AUC 0.5467 dis-

creta e 0.3790 contınua em comparacao com os outros metodos. Portanto, apre-

senta o melhor eficacia e de acordo com os experimentos realizados e conclui-se que

nosso metodo proposto e robusto conseguindo alcancar bons resultados diminuindo

os falsos positivos.

74 Resultados e Discussao

Figura 6.19: Curvas ROC contınuas normalizadas sobre a base AFW.

Metodo AUC discreto AUC contınuo

HOG-HAOG 0.5467 0.3790

HOG 0.5232 0.3660

HAOG 0.3206 0.2289

HOG-LBP 0.4893 0.3318

Viola and Jones (2004) 0.1342 0.0643

Tabela 6.9: Resultados da AUC discreta e contınua de cada metodo sobre abase AFW.

6.4 Consideracoes Finais

Neste capıtulo descreveu-se as bases de teste (FDDB e AFW), explicou-se a fer-

ramenta de avaliacao (curva ROC) da eficacia de nosso metodo e apresentou-se os

experimentos realizados para comparar nosso metodo proposto com os metodos

HOG, HAOG, HOG-LBP (Cevikalp et al. 2013) e Viola and Jones (2004). Pri-

meiro, mostra-se que a utilizacao da cascata de classificadores e o algoritmo de

deteccao de pele sao importantes para reduzir o numero de falsos positivos detec-

tados, sendo esse a principal contribuicao deste trabalho. As comparacoes feitas

com os metodos citados anteriormente obtiveram resultados promissores na eficacia

Resultados e Discussao 75

de nosso metodo obtendo valores AUC (discretos e contınuos) mais altos. Quando

comparamos nosso metodo com alguns metodos do estado da arte considerados no

benchmark da base FDDB, ficamos terceiros no ranking mostrando assim a eficacia

de nosso metodo.

76

Capıtulo 7

Conclusoes e Trabalhos Futuros

Nesta dissertacao, um metodo de deteccao de faces e proposto de modo que fusiona

descritores de histogramas de gradientes robustos utilizando uma cascata eficiente

de classificadores.

A fusao desses descritores robustos extraem caracterısticas discriminatorias dos

gradientes das texturas finas e com alto contraste encontrados nas faces das pes-

soas, ja que permite caracterizar melhor as faces para diferencia-las com o fundo

da imagem. Alem disso, a aplicacao de um detector de pele nas imagens ajuda a

segmentar os objetos do fundo da imagem para facilitar o processo de deteccao,

reduzir os falsos positivos e a quantidade de janelas de busca extraıdas em cada

fotografia das bases de teste, i.e. nas duas bases de teste se reduziu aproximada-

mente 46.95% a quantidade das janelas de busca no total. Para detectar faces

de diferentes tamanhos nas fotografias, gera-se uma piramide de imagens com 7

escalas. A cascata de classificadores de “uma classe” (centrados na classe posi-

tiva) rejeita rapidamente exemplos que nao correspondem as faces, pois aproxima

a regiao das caracterısticas das faces afastando-as da regiao dos exemplos negativos

(outliers) como se fosse um convex hull.

Os resultados obtidos nos experimentos, mostraram que a fusao dos descritores de

histogramas de gradientes e a utilizacao da cascata de classificadores conseguiram

diminuir consideravelmente o numero de falsos positivos (sendo esse a principal

contribuicao de nosso metodo), melhorar a acuracia e a eficacia com relacao aos

metodos comparados (HOG, HAOG, HOG-LBP Cevikalp et al. (2013) e Viola-

Jones Viola and Jones (2004)) ao serem avaliados com a base Face Detection Data

Set and Benchmark e Annotated Faces in the Wild. Nas duas bases atingiram-se os

valores mais altos de AUC discreto e contınuo. Deste modo, quando nosso metodo

77

78 Conclusoes e Trabalhos Futuros

proposto foi comparado com alguns metodos do estado da arte apresentados na

base Face Detection Data Set and Benchmark (Jain and Learned Miller 2010),

ficamos terceiros no ranking confirmando a eficacia de nosso metodo. A com-

paracao feita nao considera os metodos que utilizam landmarks (pontos fiduciarios

da face) na deteccao de faces, ja que nosso metodo proposto nao usa esse tipo de

abordagens.

7.0.1 Trabalhos Futuros

Em consequencia deste trabalho de dissertacao, considera-se os seguintes trabalhos

futuros:

– Avaliar o metodo proposto com outras bases de rostos.

– Treinar o metodo com uma base que apresente maior caracterizacao dos ros-

tos, por exemplo, variacoes da posicao, oclusao, rostos mal focados, entre

outros.

– Aplicar landmarks em nosso metodo proposto para conseguir melhorar os

resultados obtidos nas bases de teste.

– Paralelizar o calculo dos descritores HOG e HAOG.

Referencias Bibliograficas

Bishop, C. M. and Nasrabadi, N. M.: 2007, Pattern Recognition and Machine Learning,

J. Electronic Imaging 16(4), 657–661.

Cerna, L., Camara Chavez, G. and Menotti, D.: 2013, Face detection: Histogram of

oriented gradients and bag of feature method, The International Conference on Image

Processing, Computer Vision, and Pattern Recognition .

Cevikalp, H. and Triggs, B.: 2012, Efficient object detection using cascades of nearest

convex model classifiers, Computer Vision and Pattern Recognition (CVPR), 2012

IEEE Conference on, IEEE, pp. 3138–3145.

Cevikalp, H., Triggs, B. and Franc, V.: 2013, Face and landmark detection by using

cascade of classifiers, Automatic Face and Gesture Recognition (FG), 2013 10th IEEE

International Conference and Workshops on, IEEE, pp. 1–7.

Conaire, C., O’Connor, N. E. and Smeaton, A. F.: 2007, Detector adaptation by maxi-

mising agreement between independent data sources, Computer Vision and Pattern

Recognition, 2007. CVPR’07. IEEE Conference on, IEEE, pp. 1–6.

Cortes, C. and Vapnik, V.: 1995, Support-vector networks, Machine learning 20(3), 273–

297.

Dalal, N. and Triggs, B.: 2005, Histograms of oriented gradients for human detection,

Proceedings of the 2005 IEEE Computer Society Conference on Computer Vision and

Pattern Recognition (CVPR’05), Vol. 1, IEEE Computer Society, pp. 886–893.

De Siqueira, F. R., Schwartz, W. R. and Pedrini, H.: 2013, Adaptive detection of human

skin in color images, IX Workshop de Visao Computacional (WVC 2013) .

Desai, A., Dah-Jye, L. and Wilson, C.: 2014, Using affine features for an efficient binary

79

80 REFERENCIAS BIBLIOGRAFICAS

feature descriptor, Image Analysis and Interpretation (SSIAI), 2014 IEEE Southwest

Symposium on, pp. 49–52.

Frischholz, R. W.: n.d., Bao face database, http://www.facedetection.com.

/facedetection/datasets.htm.

Galoogahi, H. K. and Sim, T.: 2012, Inter-modality face sketch recognition, Multimedia

and Expo (ICME), 2012 IEEE International Conference on, IEEE, pp. 224–229.

Govindaraju, V.: 1996, Locating human faces in photographs, International Journal of

Computer Vision 19(2), 129–146.

Graf, H. P., Cosatto, E., Gibbon, D., Kocheisen, M. and Petajan, E.: 1996, Multi-modal

system for locating heads and faces, Automatic Face and Gesture Recognition, 1996.,

Proceedings of the Second International Conference on, IEEE, pp. 88–93.

Guest, R. and Henniger, O.: 2013, Assessment of the quality of handwritten signatures

based on multiple correlations, Biometrics (ICB), 2013 International Conference on,

pp. 1–6.

Gunn, S. R. and Nixon, M. S.: 1994, A dual active contour for head boundary extraction,

IEE Colloquium on Image Processing for Biometric Measurement, IET, pp. 1–4.

Hanley, J. A. and McNeil, B. J.: 1982, The meaning and use of the area under a receiver

operating characteristic (roc) curve., Radiology 143(1), 29–36.

Hastie, T., Tibshirani, R. and Friedman, J.: 2001, The Elements of Statistical Learning,

Springer Series in Statistics, Springer New York Inc.

Hjelmas, E. and Low, B. K.: 2001, Face detection: A survey, Computer vision and image

understanding 83(3), 236–274.

Hotelling, H.: 1933, Analysis of a complex of statistical variables into principal compo-

nents., Journal of educational psychology 24(6), 417.

Hsu, R., Abdel-Mottaleb, M. and Jain, A. K.: 2002, Face detection in color images,

Pattern Analysis and Machine Intelligence, IEEE Transactions on 24(5), 696–706.

Huang, C. and Chen, C.: 1992, Human facial feature extraction for face interpretation

and recognition, Pattern recognition 25(12), 1435–1444.

REFERENCIAS BIBLIOGRAFICAS 81

Huang, J., Gutta, S. and Wechsler, H.: 1996, Detection of human faces using deci-

sion trees, Automatic Face and Gesture Recognition, 1996., Proceedings of the Second

International Conference on, IEEE, pp. 248–252.

Jacquin, A. and Eleftheriadis, A.: 1995, Automatic location tracking of faces and facial

features in video sequences, Proceedings of the International Workshop on Automatic

Face and Gesture Recognition, pp. 142–147.

Jain, V. and Learned Miller, E.: 2010, Fddb: A benchmark for face detection in un-

constrained settings, Technical Report UM-CS-2010-009, University of Massachusetts,

Amherst.

Jain, V. and Learned Miller, E.: 2011, Online domain adaptation of a pre-trained cas-

cade of classifiers, Computer Vision and Pattern Recognition (CVPR), 2011 IEEE

Conference on, IEEE, pp. 577–584.

Jain, V. and Learned Miller, E.: 2014-2020, Next generation biometric market by tech-

nology (fingerprint, palm, face, iris, vein, voice and signature), function, application

(government, defense, travel and immigration, home security, banking, consumer elec-

tronics and so on) and by geography - forecasts and analysis, Technical Report SE

2306.

Jeng, S., Liao, H. Y. M., Han, C. C., Chern, M. Y. and Liu, Y. T.: 1998, Facial feature

detection using geometrical face model: an efficient approach, Pattern recognition

31(3), 273–282.

Jovic, M., Cisar, S. M. and Cisar, P.: 2012, Delphi application for face detection using

the sobel operator, Computational Intelligence and Informatics (CINTI), 2012 IEEE

13th International Symposium on, IEEE, pp. 371–376.

Kass, M. and Witkin, A.: 1987, Analyzing oriented patterns, Comput. Vision Graph.

Image Process. 37(3), 362–385.

Kawaguchi, T., Hidaka, D. and Rizon, M.: 2000, Robust extraction of eyes from face,

Pattern Recognition, 2000. Proceedings. 15th International Conference on, Vol. 1,

IEEE, pp. 1109–1114.

Kienzle, W., Franz, M. O., Scholkopf, B. and Bakir, G. H.: 2004, Face detection efficient

and rank deficient, Advances in Neural Information Processing Systems, pp. 673–680.

82 REFERENCIAS BIBLIOGRAFICAS

Kirby, M. and Sirovich, L.: 1990, Application of the karhunen-loeve procedure for the

characterization of human faces, Pattern Analysis and Machine Intelligence, IEEE

Transactions on 12(1), 103–108.

Koestinger, M., Wohlhart, P., Roth, P. M. and Bischof, H.: 2010, Annotated facial land-

marks in the wild: A large-scale, real-world database for facial landmark localization,

http://lrs.icg.tugraz.at/research/aflw/.

Kohonen, T.: 1988, Self-organization and associative memory, Self-Organization and

Associative Memory, 100 figs. XV, 312 pages.. Springer-Verlag Berlin Heidelberg New

York. Also Springer Series in Information Sciences, volume 8 1.

Kostinger, M., Wohlhart, P., Roth, P. M. and Bischof, H.: 2012, Robust face detection

by simple means, Computer Vision in Applications Workshop .

Lam, K. and Yan, H.: 1996, Locating and extracting the eye in human face images,

Pattern recognition 29(5), 771–779.

Lanitis, A., Taylor, C. J. and Cootes, T. F.: 1997, Automatic interpretation and coding

of face images using flexible models, Pattern Analysis and Machine Intelligence, IEEE

Transactions on 19(7), 743–756.

Li, J., Wang, T. and Zhang, Y.: 2011, Face detection using surf cascade, Computer Vi-

sion Workshops (ICCV Workshops), 2011 IEEE International Conference on, IEEE,

pp. 2183–2190.

Li, J. and Zhang, Y.: 2013, Learning surf cascade for fast and accurate object detection,

Computer Vision and Pattern Recognition (CVPR), 2013 IEEE Conference on, IEEE,

pp. 3468–3475.

Li, X. and Roeder, N.: 1995, Face contour extraction from front-view images, Pattern

recognition 28(8), 1167–1179.

Lu, Y., Zhou, J. and Yu, S.: 2003, A survey of face detection, extraction and recognition.,

Computers and Artificial Intelligence 22(2), 163–195. http://dblp.uni-trier.de/

db/journals/cai/cai22.html.

Maio, D. and Maltoni, D.: 2000, Real-time face location on gray-scale static images,

Pattern Recognition 33(9), 1525–1539.

Manning, C. D., Raghavan, P. and Schutze, H.: 2008, Introduction to information retri-

eval, Vol. 1, Cambridge university press Cambridge.

REFERENCIAS BIBLIOGRAFICAS 83

Marr, D. and Hildreth, E.: 1980, Theory of edge detection, Proceedings of the Royal

Society of London. Series B. Biological Sciences 207(1167), 187–217.

Mikolajczyk, K., Schmid, C. and Zisserman, A.: 2004, Human detection based on a pro-

babilistic assembly of robust part detectors, Computer Vision-ECCV 2004, Springer,

pp. 69–82.

Modi, M. and Macwan, F.: 2014, Face detection approaches: A survey, International

journal of innovative research in science, engineering and technology 3.

Nikolaidis, A. and Pitas, I.: 2000, Facial feature extraction and pose determination,

Pattern Recognition 33(11), 1783–1791.

Osuna, E., Freund, R. and Girosi, F.: 1997, Training support vector machines: an

application to face detection, Computer Vision and Pattern Recognition, 1997. Pro-

ceedings., 1997 IEEE Computer Society Conference on, IEEE, pp. 130–136.

Papageorgiou, C. P., Oren, M. and Poggio, T.: 1998, A general framework for object

detection, Computer Vision, 1998. sixth International Conference on, IEEE, pp. 555–

562.

Pearson, K.: 1901, On lines and planes of closest fit to systems of points in space,

The London, Edinburgh, and Dublin Philosophical Magazine and Journal of Science

2(11), 559–572.

Prati, R. C., Batista, G. E. A. P. A. and Monard, M. C.: 2008, Curvas roc para avaliacao

de classificadores, Revista IEEE America Latina 6(2), 215–222.

Reinders, M. J. T., Van Beek, P. J. L., Sankur, B. and Van der Lubbe, J. C. A.: 1995,

Facial feature localization and adaptation of a generic face model for model-based

coding, Signal Processing: Image Communication 7(1), 57–74.

Rowley, H. A., Baluja, S. and Kanade, T.: 1998, Neural network-based face detection,

Pattern Analysis and Machine Intelligence, IEEE Transactions on 20(1), 23–38.

Saha, S. and Bandyopadhyay, S.: 2007, A symmetry based face detection technique,

Proceedings of the IEEE WIE National Symposium on Emerging Technologies, pp. 1–

4.

Sakai, T., Nagao, M. and Kanade, T.: 1972, Computer analysis and classification of

photographs of human faces, Kyoto University.

84 REFERENCIAS BIBLIOGRAFICAS

Sanderson, C.: 2009, Cropped version of labeled faces in the wild, http://

conradsanderson.id.au/lfwcrop.

Seguı, S., Drozdzal, M., Radeva, P. and Vitria, J.: 2012, An integrated approach to con-

textual face detection., International Conference on Pattern Recognition Applications

and Methods pp. 1–8.

Sharif, M., Khalid, A., Raza, M. and Mohsin, S.: 2011, Face recognition using gabor

filters., Journal of Applied Computer Science & Mathematics (11).

Shruthi, M. L. J. and Harsha, B. K.: 2013, Non-parametric histogram based skin mode-

ling for skin detection, Computational Intelligence and Computing Research (ICCIC),

2013 IEEE International Conference on, pp. 1–6.

Siqueira, F. R., Schwartz, W. R. and H., P.: 2013, Adaptive detection of human skin in

color images, IX Workshop de Visao Computacional, pp. 1–6.

Sung, K. and Poggio, T.: 1998, Example-based learning for view-based human face detec-

tion, Pattern Analysis and Machine Intelligence, IEEE Transactions on 20(1), 39–51.

Tax, D. M. J. and Duin, R. P. W.: 2004, Support vector data description, Machine

learning 54(1), 45–66.

Teo, C. H., Smola, A., Vishwanathan, S. and Le, Q. V.: 2007, A scalable modular

convex solver for regularized risk minimization, Proceedings of the 13th ACM SIGKDD

international conference on Knowledge discovery and data mining, ACM, pp. 727–736.

Turk, M. and Pentland, A.: 1991, Eigenfaces for recognition, Journal of cognitive neu-

roscience 3(1), 71–86.

van Beek, P. J. L., Reinders, M. J. T., Sankur, B. and van der Lubbe, J. C. A.: 1992, Se-

mantic segmentation of videophone image sequences, Applications in Optical Science

and Engineering, International Society for Optics and Photonics, pp. 1182–1193.

Venkatesh, B. S. and Marcel, S.: 2010, Fast bounding box estimation based face detec-

tion, ECCV Workshop on Face Detection: Where we are and what next, Citeseer.

Viola, P. and Jones, M. J.: 2004, Robust real-time face detection, Int. J. Comput. Vision

57(2), 137–154.

REFERENCIAS BIBLIOGRAFICAS 85

Vojtech, F. and Soeren, S.: 2008, Optimized cutting plane algorithm for support vector

machines, Proceedings of the 25th international conference on Machine learning, ACM,

pp. 320–327.

Witten, I. H. and Frank, E.: 2005, Data Mining: Practical Machine Learning Tools

and Techniques, Second Edition (Morgan Kaufmann Series in Data Management Sys-

tems).

Yang, M., Kriegman, D. and Ahuja, N.: 2002, Detecting faces in images: A survey,

Pattern Analysis and Machine Intelligence, IEEE Transactions on 24(1), 34–58.

Yuille, A. L., Hallinan, P. W. and Cohen, D. S.: 1992, Feature extraction from faces

using deformable templates, International journal of computer vision 8(2), 99–111.

Zhu, X. and Ramanan, D.: 2012, Face detection, pose estimation, and landmark loca-

lization in the wild, Computer Vision and Pattern Recognition (CVPR), 2012 IEEE

Conference on, IEEE, pp. 2879–2886.

Zhu, Y., Huang, C. and Chen, J.: 2012, Face detection method based on multi-feature

fusion in ycbcr color space, International Congress on Image and Signal Processing

(CISP), 2012 5th International Congress on, pp. 1249–1252.