• Nenhum resultado encontrado

Comparação entre algoritmos de reconhecimento de face no contexto de acessibilidade

N/A
N/A
Protected

Academic year: 2021

Share "Comparação entre algoritmos de reconhecimento de face no contexto de acessibilidade"

Copied!
93
0
0

Texto

(1)

Douglas Eduardo Parra

“Compara¸

ao entre Algoritmos de Reconhecimento

de Face no Contexto de Acessibilidade”

CAMPINAS

2013

(2)
(3)
(4)

Ficha catalográfica

Universidade Estadual de Campinas

Biblioteca do Instituto de Matemática, Estatística e Computação Científica Ana Regina Machado - CRB 8/5467

Parra, Douglas Eduardo,

P247c ParComparação entre algoritmos de reconhecimento de face no contexto de

acessibilidade / Douglas Eduardo Parra. – Campinas, SP : [s.n.], 2014.

ParOrientador: Siome Klein Goldenstein.

ParDissertação (mestrado) – Universidade Estadual de Campinas, Instituto de

Computação.

Par1. Reconhecimento facial (Computação). 2. Acessibilidade. 3. Processamento

de imagens - Técnicas digitais. 4. Visão por computador. 5. Interação humano-computador. 6. Reconhecimento de padrões óticos. I. Goldenstein, Siome

Klein,1972-. II. Universidade Estadual de Campinas. Instituto de Computação. III. Título.

Informações para Biblioteca Digital

Título em outro idioma: Comparison between face recognition algorithms in acessibility

context

Palavras-chave em inglês:

Human face recognition (Computer science) Acessibility

Image processing - Digital techniques Computer vision

Human-computer interaction Optical pattern recognition

Área de concentração: Ciência da Computação Titulação: Mestre em Ciência da Computação Banca examinadora:

Siome Klein Goldenstein [Orientador] Jacques Wainer

Eduardo Alves do Valle Junior

Data de defesa: 27-06-2014

Programa de Pós-Graduação: Ciência da Computação

Powered by TCPDF (www.tcpdf.org)

(5)
(6)
(7)

Instituto de Computa¸c˜ao Universidade Estadual de Campinas

Compara¸

ao entre Algoritmos de Reconhecimento de

Face no Contexto de Acessibilidade

Douglas Eduardo Parra

27 de junho de 2014

Banca Examinadora:

• Prof. Dr. Siome Klein Goldenstein (Supervisor/Orientador ) • Prof. Dr. Eduardo Alves do Valle Junior

Faculdade de Engenharia El´etrica e da Computa¸c˜ao - UNICAMP • Prof. Dr. Jacques Wainer

Instituto de Computa¸c˜ao - UNICAMP • Prof. Dr. Ricardo da Silva Torres

Instituto de Computa¸c˜ao - UNICAMP • Prof. Dr. Jos´e Mario De Martino

(8)
(9)

Abstract

In this master dissertation is shown a comparison between three face recognition algo-rithms within the context of accessibility to the MicrosoftTM project in partnership with FAPESP for the people recognition module using Microsoft Kinect and sensory substi-R

tution. The k-Nearest Neighbours algorithm, with Histogram of Oriented Gradients, was employed as a basis for being a simple and low computational cost. The Eigenfaces and Local Binary Patter Histogram algorithms were compared with the previous one in four experiments.

Initially, the Project Vision for the Blind and its different modules is described. This project was developed by a team in Brazil which achieved good results for navigation and face recognition modules, always with the idea of using audio 3D to convey the desired information to the user. It will next be shown a review of the state of art with projects within the context of accessibility e sensory substitution, pointing out its limitations. Immediately after it is done a review about the three face recognition algorithms used and then how the image database from this project was created.

Good results were achieved with the three algorithms although there are significant differences among them. Eigenfaces and Local Binary Pattern Histogram, for being more complex techniques than k-Nearest Neighbours, reached recognition rates with half of the resources than the last one use to get close to the result values, with Eigenfaces being the fastest. Nonetheless, for being a simple technique, it is worth take note how good k-NN executes the same task and could be used in the project module.

(10)
(11)

Resumo

Nesta disserta¸c˜ao de mestrado, ´e mostrada uma compara¸c˜ao entre trˆes algoritmos de re-conhecimento de face no contexto de acessibilidade para o projeto MicrosoftTM com par-ceria com a FAPESP, para o m´odulo de reconhecimento de pessoas utilizando o Microsoft Kinect e substitui¸c˜R ao sensorial. O algoritmo k-Nearest Neighbours, junto do descritor

Histograma de Gradientes Orientados, foi utilizado como base por ser uma abordagem simples e de baixo custo computacional. Os algoritmos Eigenfaces e Local Binary Pattern

Histogram foram comparados com o anterior em quatro experimentos.

Inicialmente, ´e descrito o Projeto Vision for the Blind e seus diversos m´odulos. Este projeto foi desenvolvido por uma equipe aqui no Brasil, que obteve bons resultados para os m´odulos de navega¸c˜ao e reconhecimento de face, sempre com a ideia de usar o ´audio 3D para passar a informa¸c˜ao desejada ao usu´ario. Em seguida, ´e apresentada uma revis˜ao do estado da arte com projetos no contexto de acessibilidade e substitui¸c˜ao sensorial, apontando suas limita¸c˜oes. Logo ap´os ´e feita uma revis˜ao sobre os trˆes algoritmos de reconhecimento facial utilizados e, ent˜ao, como foi constru´ıda o banco de imagens deste projeto.

Foram obtidos bons resultados com os trˆes algoritmos, apesar de haver diferen¸cas significativas entre eles. O Eigenfaces e o Local Binary Pattern Histogram, por seremecnicas mais complexas que o k-Nearest Neighbours, atingiram taxas de reconhecimento com metade dos recursos que este ´ultimo utiliza para chegar pr´oximo dos valores, sendo o Eigenfaces mais r´apido, por´em demorado na parte de aprendizagem. Ainda assim, por ser uma t´ecnica simples, vale notar o qu˜ao bem o k-NN executa a mesma tarefa e pode ser utilizado para o m´odulo do projeto.

(12)
(13)

Acknowledgements

Este ´e mais um grande passo em minha jornada. Ap´os quase dois anos e meio do in´ıcio de meu mestrado, v´arias foram as cirunstˆancias com as quais aprendi e cresci como pessoa, e sou grato a cada uma delas, das quais falarei brevemente.

Primeiramente, gostaria de agradecer `a minha fam´ılia, que sempre apoiou minha de-cis˜ao de seguir em frente com meus estudos. Apesar de minha cidade natal n˜ao ser muito longe, sempre se torna um desafio sair de casa pela primeira vez. Agrade¸co de cora¸c˜ao `a eles por permitir esse acontecimento em minha vida.

Aos meus amigos da ´epoca da gradua¸c˜ao que, apesar de estarmos morando em cidades diferentes, a distˆancia j´a n˜ao ´e mais uma barreira que nos impede de comunicarmos uns com os outros. Vocˆes sempre conseguem me ajudar, direta ou indiretamente, me animar em momentos dif´ıceis, e fazer com que eu n˜ao perca o foco para alcan¸car meus sonhos.

Tamb´em gostaria de agradecer aos meus amigos feitos nessa ´epoca de mestrado, assim como os do projeto Vision for the Blind e aos volunt´arios que disporam de seu tempo para ajudar a formar a base de v´ıdeos deste projeto. O esfor¸co em grupo sempre leva a resultados magn´ıficos, e estar ao lado de vocˆes foi uma honra, sou muito grato por toda a paciˆencia que tiveram comigo.

N˜ao menos importante, agrade¸co ao meu orientador Siome Klein Goldenstein. Posso falar sem d´uvidas que foi o melhor orientador que eu poderia ter nessa jornada. Vocˆe me fez crescer muito como pesquisador e pessoa, e em todas nossas reuni˜oes eu me sentia feliz em ter um orientador que conseguia me deixar menos ansioso do que estava antes.

Por fim, gostaria de agradecer `a Unicamp. Apesar de ter tentado por trˆes vezes, sem sucesso, entrar no curso de bacharelado em ciˆencia da computa¸c˜ao, s´o fui poder conhecer sua grandiosidade ao fazer o mestrado. Essa experiˆencia e troca de culturas a n´ıvel nacional e internacional ´e algo que eu sempre quis ter e que jamais ser´a esquecida. Agrade¸co tamb´em `a CAPES e `a FAPESP pelo apoio financeiro, sem o qual se tornaria imposs´ıvel me dedicar ao mestrado.

(14)
(15)

”O futuro pertence `aqueles que acreditam na beleza de seus sonhos.”

(16)
(17)

Sum´

ario

Abstract ix Resumo xi Acknowledgements xiii Epigraph xv 1 Introdu¸c˜ao 1

1.1 Reconhecimento de Face no Contexto de Acessibilidade . . . 1

1.2 Motiva¸c˜ao . . . 2

1.3 Organiza¸c˜ao . . . 3

2 Projeto Vision for the Blind 4 2.1 Percep¸c˜ao de Profundidade . . . 6

2.2 Localiza¸c˜ao de ´Audio . . . 7

2.3 Navega¸c˜ao . . . 7

3 Estado da Arte 8 3.1 Estado da Arte em Vis˜ao e Acessibilidade . . . 12

4 Meios e M´etodos 18 4.1 K-Nearest Neighbours . . . 18

4.1.1 Histograma de Gradientes Orientados . . . 23

4.2 Eigenfaces . . . 26

4.3 Local Binary Pattern Histogram . . . 30

5 Metodologia e Resultados 33 5.1 Sistema de Aquisi¸c˜ao de Imagens . . . 33

5.1.1 Hardware . . . 33

(18)
(19)

5.2 Resultados . . . 36 5.2.1 Varia¸c˜ao do Tamanho da Janela Deslizante . . . 38 5.2.2 Varia¸c˜ao de Amostras por Classe . . . 41 5.2.3 Varia¸c˜ao das Amostras por Classe e do Tamanho da Janela Deslizante 44 5.2.4 Varia¸c˜ao do N´umero de Classes na Base de Treinamento . . . 47 5.2.5 Varia¸c˜ao dos Parˆametros dos Algoritmos . . . 50 5.2.6 Imagens de Profundidade . . . 53

(20)
(21)

Lista de Tabelas

3.1 Aplica¸c˜oes T´ıpicas de Reconhecimento de Face. . . 9 3.2 Sistemas de Reconhecimento de Face Comerciais Dispon´ıveis. . . 9

(22)
(23)

Lista de Figuras

2.1 Microsoft Kinect para Windows. . . .R 5

2.2 Hardware do Projeto Vision for the Blind. . . . 6 2.3 Duas capturas de tela do sistema de reconhecimento de face em tempo real. 6 3.1 Configura¸c˜ao de um sistema gen´erico de reconhecimento de face. . . 11 3.2 Prot´otipo do sistema SVETA. Fonte: G. Balakrishnan, et. al. 2007 . . . . 13 3.3 Prot´otipo do sistema NAVIG. Retirado de www.limsi.fr . . . 15 4.1 Exemplo de classifica¸c˜ao k-NN. A amostra de teste representada pelo c´ırculo

deve ser classificada pertencente `a primeira classe dos quadrados ou per-tencente `a classe dos triˆangulos. Se k = 3, o c´ırculo ´e atribu´ıdo `a segunda classe, j´a que h´a dois triˆangulos e apenas um quadrado dentro do c´ırculo de borda s´olida. Entretanto, se k = 5, a atribui¸c˜ao ´e para a primeira classe, j´a que temos trˆes quadrados e dois triˆangulos dentro do c´ırculo externo. . . 19 4.2 Vota¸c˜ao do k-NN pelos 3 vizinhos mais pr´oximos pela distˆancia Euclidiana. 20 4.3 Exemplo de classifica¸c˜ao k-NN. Para k=1, o c´ırculo em quest˜ao ir´a

per-tencer `a classe dos quadrados. Para k=3, aos triˆangulos, por´em, se k=7, dever´a pertencer `a classe dos quadrados. . . 21 4.4 Exemplos de convers˜ao de imagem no descritor HOG. . . 24 4.5 Vis˜ao geral do algoritmo Eigenfaces. . . 27 4.6 O b´asico do operador LBP. . . 31 5.1 Padr˜ao de pontos do Kinect. Retirado de azttm.wordpress.com . . . 34 5.2 Padr˜ao de pontos do Kinect ap´os repeti¸c˜ao. Retirado de azttm.wordpress.com 35 5.3 Kinect Studio. . . 36 5.4 Exemplos de faces detectadas do dataset. . . 37 5.5 Filmagens feitas com as mudan¸cas de fundo antes da detec¸c˜ao das faces. . 37 5.6 Resultados do Experimento de Varia¸c˜ao do Tamanho da Janela Deslizante

para o algoritmo k-NN. . . 39 5.7 Resultados do Experimento de Varia¸c˜ao do Tamanho da Janela Deslizante

(24)
(25)

5.8 Resultados do Experimento de Varia¸c˜ao do Tamanho da Janela Deslizante para o algoritmo LBPH. . . 41 5.9 Resultados do Experimento de Varia¸c˜ao de Amostras por Classe para o

algoritmo k-NN. . . 42 5.10 Resultados do Experimento de Varia¸c˜ao de Amostras por Classe para o

algoritmo Eigenfaces. . . 43 5.11 Resultados do Experimento de Varia¸c˜ao de Amostras por Classe para o

algoritmo LBPH. . . 44 5.12 Resultados do Experimento de Varia¸c˜ao das Amostras por Classe e do

Tamanho da Janela Deslizante para o algoritmo k-NN. . . 45 5.13 Resultados do Experimento de Varia¸c˜ao das Amostras por Classe e do

Tamanho da Janela Deslizante para o algoritmo Eigenfaces . . . 46 5.14 Resultados do Experimento de Varia¸c˜ao das Amostras por Classe e do

Tamanho da Janela Deslizante para o algoritmo LBPH. . . 47 5.15 Resultados do Experimento de Varia¸c˜ao do N´umero de Classes na Base de

Treinamento para o algoritmo k-NN. . . 48 5.16 Resultados do Experimento de Varia¸c˜ao do N´umero de Classes na Base de

Treinamento para o algoritmo Eigenfaces. . . 49 5.17 Resultados do Experimento de Varia¸c˜ao do N´umero de Classes na Base de

Treinamento para o algoritmo LBPH. . . 50 5.18 Resultados do Experimento de Varia¸c˜ao do Parˆametro N´umeros de

Vizi-nhos do k-NN. . . 51 5.19 Resultados do Experimento de Varia¸c˜ao do N´umero de Componentes para

o Algoritmo Eigenfaces. . . 52 5.20 Resultados do Experimento de Varia¸c˜ao do Raio para o algoritmo LBPH. . 53 5.21 Resultados do Experimento com Imagens de Profundidade para o algoritmo

k-NN. . . 54 5.22 Resultados do Experimento com Imagens de Profundidade para o algoritmo

Eigenfaces. . . 55 5.23 Resultados do Experimento com Imagens de Profundidade para o algoritmo

(26)
(27)

Cap´ıtulo 1

Introdu¸

ao

T´ecnicas de vis˜ao computacional para o reconhecimento de face s˜ao amplamente empre-gadas atualmente para diversos fins, seja para sistemas de seguran¸ca, seja para acessar um computador port´atil ou mesmo um celular. Entretanto, tais t´ecnicas tamb´em podem ser utilizadas para o fim de substitui¸c˜ao sensorial, onde um deficiente visual pode utilizar um aparelho com uma cˆamera que detecta e reconhece pessoas conhecidas e diz seu nome ou indica sua localiza¸c˜ao.

Nesta disserta¸c˜ao de mestrado, ser´a apresentada uma compara¸c˜ao entre trˆes algoritmos de reconhecimento de face no contexto de acessibilidade para um dos m´odulos do Projeto

Vision for the Blind. O algoritmo k-Nearest Neighbours, em conjunto com o Histograma

de Gradientes Orientados, foi utilizado por ser uma t´ecnica simples e de baixo custo computacional e, assim, pˆode ser analisado seu desempenho em rela¸c˜ao `a t´ecnicas mais rebuscadas, como o Eigenfaces e o Local Binary Pattern Histogram. Assim, por meio de seis experimentos realizados, ´e pretendido mostrar que, nesse contexto, um m´etodo de reconhecimento facial mais complexo possui resultados t˜ao bons quanto os de uma t´ecnica mais b´asica como ´e o k-NN.

1.1

Reconhecimento de Face no Contexto de

Acessi-bilidade

Humanos, consciente ou inconscientemente, participam de intera¸c˜oes sociais em seu dia-a-dia. Intera¸c˜oes sociais s˜ao os atos, a¸c˜oes ou pr´aticas de duas ou mais pessoas mutuamente orientadas uma para a outra. Tais intera¸c˜oes vˆem em muitas formas, como piscar, co-mer, ler, escrever, dan¸car e caminhar. A vis˜ao desempenha um papel muito importante em estabelecer e manter intera¸c˜oes sociais que s˜ao desafiadores algumas vezes para in-div´ıduos que possuem deficiˆencia visual para interagir prontamente com seus hom´ologos

(28)

1.2. Motiva¸c˜ao 2

que enxergam.

Estudos mostram que uma parcela significativa de qualquer troca de informa¸c˜ao entre dois humanos ´e efetuada n˜ao com palavras, mas com comunica¸c˜ao n˜ao-verbal. Al´em disso, a maioria dessa comunica¸c˜ao n˜ao-verbal s˜ao gestos faciais, embora outros gestos corporais tamb´em constituem uma vasta por¸c˜ao. Como entender gestos corporais ´e uma tarefa simples para humanos, isso se tornou um campo de testes para o desenvolvimento de m´aquinas inteligentes. Dispositivos auxiliares desenvolvidos para facilitar intera¸c˜oes sociais s˜ao um bom exemplo de m´aquinas inteligentes que est˜ao cada vez mais perto de se tornarem realidade. Nesta defesa de mestrado ´e discutida o pequeno, mas indispens´avel, problema de reconhecimento facial no contexto de construir um aparelho de intera¸c˜ao social para ajudar pessoas que possuem deficiˆencia visual.

Reconhecimento de face tem sido uma ´area de pesquisa ativa nas ´ultimas d´ecadas devido `a disponibilidade de sistemas de computa¸c˜ao r´apidos e ao aumento nos requisitos de seguran¸ca em lugares p´ublicos. Este trabalho levou ao teste de algoritmos como k-Nearest

Neighbors, Eigenfaces e Local Binary Pattern Histogram para verificar quais desses se

adequa melhor ao trabalho de reconhecimento facial com uma cˆamera de infravermelho de baixo custo que captura tamb´em informa¸c˜oes de profundidade, como ´e o Microsoft Kinect Reconhecimento de face para qualquer dispositivo auxiliar requer algoritmos queR

s˜ao mais robustos que est´a sendo alcan¸cado atualmente por algoritmos de treinamento em base de dados de rostos controlados.

Independente das diferen¸cas entre aplica¸c˜oes distintas, um problema encarado por todos os algoritmos de reconhecimento facial resulta de mudan¸cas no ˆangulo da pose e no ˆangulo de ilumina¸c˜ao no rosto. Durante intera¸c˜oes sociais em grupo ´e bem comum ver frequentes mudan¸cas extremas no ˆangulo da pose. O c´erebro humano lida com esses problemas projetando uma proje¸c˜ao 2D da retina de uma face para um ˆangulo de pose e um espa¸co invariante `a ilumina¸c˜ao, tornando poss´ıvel para n´os reconhecer pessoas apesar de tais varia¸c˜oes. As pesquisas feitas nessa dire¸c˜ao, como as em [32, 37, 69], geraram resultados promissores, mas ainda n˜ao satisfat´orios.

1.2

Motiva¸

ao

A Organiza¸c˜ao Mundial da Sa´ude estima haver 39 milh˜oes de pessoas cegas no mundo1. Apenas nos Estados Unidos h´a aproximadamente 1.3 milh˜oes de cegos2, dos quais 109.000

dependem de bengalas e 7.000 utilizam c˜aes guias3.

Diminui¸c˜ao da vis˜ao ´e um obst´aculo em v´arias atividades di´arias, e h´a um empenho 1http://www.who.int/mediacentre/factsheets/fs282/en/

2https://nfb.org/

(29)

1.3. Organiza¸c˜ao 3

constante pela procura de novos dispositivos auxiliares. Uma dessas atividades di´arias executadas por deficientes visuais em que h´a dificuldades ´e o reconhecimento de pessoas. Em seu ambiente de trabalho ou mesmo em casa, deficientes visuais precisam saber com quem eles est˜ao falando ou quem entra em seu escrit´orio ou quarto. Um sistema para reco-nhecer conhecidos e sua posi¸c˜ao ´e desej´avel. Assim, o usu´ario evitaria passar por situa¸c˜oes constrangedoras caso errasse o nome de algu´em devido ao fato de n˜ao ter reconhecido sua voz. Entretanto, por que n˜ao usar um sistema de reconhecimento de voz? Algumas vezes, deficientes visuais querem encontrar uma pessoa que n˜ao est´a falando. Por exemplo, um professor cego estar trabalhando em seu escrit´orio, e precisa urgentemente falar com seu colega de trabalho, mas este ainda n˜ao chegou. Um sistema para avis´a-lo quando a pessoa desejada se apresentou diante de si ´e interessante.

1.3

Organiza¸

ao

Esta disserta¸c˜ao de mestrado descreve a pesquisa conduzida no campo reconhecimento de face no contexto de acessibilidade para construir um prot´otipo auxiliar para deficientes visuais ou cegos. O Cap´ıtulo 2 trata sobre o Projeto Vision for the Blind, copatrocinado pela MicrosoftTM e a FAPESP, assim como o prot´otipo e seus diversos m´odulos. O

Cap´ıtulo 3 faz uma revis˜ao bibliogr´afica sobre o assunto, come¸cando sobre reconhecimento de face de uma forma geral e em seguida tratando sobre tanto dispositivos auxiliares para os deficientes visuais quanto dispositivos de reconhecimento de face para deficientes visuais. O Cap´ıtulo 4 descreve as t´ecnicas selecionadas que foram testadas exaustivamente, desde uma t´ecnica simples, como o k-Nearest Neighbours (ou apenas k-NN), assim comoecnicas de reconhecimento facial mais complexas, como o Eigenfaces e o Local Binary

Pattern Histogram (LBPH). Em seguida, o Cap´ıtulo 5 trata a respeito da metodologia

empregada para o desenvolvimento desse m´odulo do sistema auxiliar, desde o pedido para o Conselho de ´etica at´e como foi feita a Base de Dados pr´opria para esse projeto, assim como descreve os testes realizados e os resultados obtidos com as trˆes t´ecnicas abordadas ao longo de quatro experimentos. Por fim, o Cap´ıtulo 6 conclui esta disserta¸c˜ao, falando sobre os trabalhos futuros nesta linha de pesquisa.

(30)

Cap´ıtulo 2

Projeto Vision for the Blind

O Vision for the Blind ´e um projeto com parceria da MicrosoftTM e a FAPESP, com

a finalidade de construir e validar um prot´otipo de um dispositivo auxiliar para cegos e deficientes visuais em v´arios aspectos. O dispositivo funciona basicamente traduzindo informa¸c˜ao visual em informa¸c˜ao auditiva.

O principal problema em traduzir informa¸c˜ao visual em auditiva ´e em rela¸c˜ao `a largura de banda, cuja grandeza de informa¸c˜ao ´e muito maior no sistema visual do que no sistema auditivo. Acredita-se que isto ´e, basicamente, o que fez falhar a maioria das propostas anteriores de substitui¸c˜ao sensorial.

Neste projeto, foi proposto contornar este problema utilizando dois conceitos chaves: • utilizar Vis˜ao Computacional para simplificar a cena visual;

• utilizar ´audio 3D para explorar o sentido especial inerente ao sistema auditivo. O sistema utiliza algoritmos de vis˜ao computacional para extrair informa¸c˜ao de alto n´ıvel e transferir tal informa¸c˜ao usando abordagens de codifica¸c˜ao diferentes, mas explo-rando as capacidades do ´audio 3D para prover localiza¸c˜ao espacial. Mais especificamente, ap´os identificar um objeto no campo visual, o dispositivo o traduz em som, situado na sua precisa localiza¸c˜ao 3D. Por exemplo, ap´os o dispositivo identificar uma pessoa, o usu´ario ir´a ouvir um bip como se estivesse vindo da localiza¸c˜ao exata de onde a pessoa est´a. Assim, usando vis˜ao computacional para reduzir a largura de banda requerida, e ´audio 3D para eficientemente traduzir a localiza¸c˜ao espacial, pode-se produzir uma simples e intuitiva interface para o usu´ario. Quanto mais perto a pessoa estiver do usu´ario, maior o volume do bip.

O componente de hardware do sistema combina uma imagem capturada por uma cˆamera de profundidade (Microsoft Kinect ), um acelerˆR ometro / girosc´opio, um fone

de ouvido e um computador port´atil. Os componentes de software s˜ao modulares e ex-tens´ıveis.

(31)

5

Neste projeto, a principal fonte de informa¸c˜ao ´e um dispositivo para capturar imagem em 2.5D (cor + profundidade), mostrado na Figura 2.1 abaixo. O Microsoft Kinect ´e umR

sistema baseado em ilumina¸c˜ao estruturada infravermelho e serve como um controle para o Microsoft XBox 360 que n˜R ao utiliza marcadores nem um controle convencional. Al´em

disso, para compensar o movimento da cabe¸ca entre a aquisi¸c˜ao de dados e a transmiss˜ao da informa¸c˜ao de ´audio 3D, s˜ao usados pequenos girosc´opios USB, um acelerˆometro e uma b´ussola.

Figura 2.1: Microsoft Kinect para Windows.R

O objetivo desta disserta¸c˜ao de mestrado foi construir o m´odulo para encontrar e reconhecer pessoas, e foi utilizado com o ´audio 3D para prover uma interface para a comunica¸c˜ao logo que os indiv´ıduos forem encontrados. O sistema possui um componente de hardware e um componente de software modular e extens´ıvel. O Kinect est´R a ligado a

um computador port´atil e preso a um capacete, o qual o usu´ario dever´a utilizar para que, dessa forma, os dados capturados estejam de acordo com o seu movimento da cabe¸ca. A cˆamera teve sua fonte de energia substitu´ıda para que pudesse ser alimentada por uma bateria. A Figura 2.2 abaixo mostra o estado atual do capacete junto do Kinect.

O sistema atual possui o modo de opera¸c˜ao para fornecer a funcionalidade de loca-liza¸c˜ao de pessoas atrav´es do ´audio 3D. Futuramente, espera-se adicionar outros m´odulos como tradu¸c˜ao de informa¸c˜ao textual, reconhecimento de dinheiro, identifica¸c˜ao de obje-tos, entre outros. A Figura 2.3 abaixo mostra a interface atual do sistema do m´odulo de reconhecimento de face.

Os modos de opera¸c˜ao foram desenvolvidos como componentes independentes, permi-tindo f´acil extensibilidade tanto para o desenvolvimento como para seu uso. Al´em disso, cada m´odulo ir´a necessitar de uma avalia¸c˜ao cuidadosa no futuro para estimar as melho-res abordagens de vis˜ao computacional, assim como a interface ´otima para aquela tarefa particular; tais procedimentos de avalia¸c˜ao devem ser feitos com comunidades de cegos e deficientes visuais, tanto nos Estados Unidos quanto no Brasil. Al´em do m´odulo de reconhecimento facial, outros m´odulos do projeto s˜ao descritos a seguir.

(32)

2.1. Percep¸c˜ao de Profundidade 6

Figura 2.2: Hardware do Projeto Vision for the Blind.

Figura 2.3: Duas capturas de tela do sistema de reconhecimento de face em tempo real.

2.1

Percep¸

ao de Profundidade

Percep¸c˜ao de profundidade foi alvo dos pesquisadores de vis˜ao computacional por anos [56, 44]. Por muitos anos isto tem sido feito com vis˜ao estereosc´opica e instala¸c˜ao de v´arias cˆameras, utilizando calibra¸c˜ao, retifica¸c˜ao, medidas de disparidade e geometria epipo-lar [41, 30, 57].

Nos ´ultimos 10 anos emergiram as primeiras t´ecnicas do que ´e chamado por est´ereo ativo ou ilumina¸c˜ao estruturada [71]. Tais t´ecnicas usam um projetor e uma cˆamera ao inv´es de duas cˆameras. O projetor cria padr˜oes de luz conhecidos no ambiente [68], simplificando a disparidade e o correspondente passo dos algoritmos de reconstru¸c˜ao 3D.

(33)

2.2. Localiza¸c˜ao de ´Audio 7

Ap´os vender um total de oito milh˜oes de unidades em seus primeiros 60 dias, o Ki-nect possui o recorde mundial no Guinness de ser o dispositivo eletrˆonico que vendeu mais r´apido. Como se trata de um dispositivo USB econˆomico, a comunidade cient´ıfica e de hackers o utilizou tamb´em, resultando em muitos projetos interessantes e artigos cient´ıficos, como visto em [31, 77, 70].

2.2

Localiza¸

ao de ´

Audio

Com a ajuda de ´audio espacial (3D), um usu´ario pode usar sua capacidade inerente de localiza¸c˜ao da fonte de som para identificar a posi¸c˜ao dos objetos virtuais.

O objetivo ´e transmitir a localiza¸c˜ao de um objeto para o usu´ario por sintetizar uma fonte de som virtual em suas coordenadas correspondentes no mundo real. Para simular o azimute e a eleva¸c˜ao, pode-se utilizar os filtros head-related transfer function (HRTF) do banco de dados CIPIC [2], e para codificar a distˆancia, pode-se tamb´em utilizar a amplitude e a reverbera¸c˜ao, duas informa¸c˜oes prim´arias e complementares para estimar alcance [61, 91].

Os filtros HRTF variam significativamente de pessoa para pessoa, e quando um HRTF n˜ao individualizado ´e usado, pode levar a severos problemas com os artefatos perceptuais, sendo o mais eminente a confus˜ao entre frente e tr´as e erros de eleva¸c˜ao [86]. Um sistema real exigiria que o usu´ario medisse o filtro HRTF antes de seu uso, assim como ajustasse os aparelhos auditivos, ou medisse a optometria para a prescri¸c˜ao de ´oculos.

2.3

Navega¸

ao

O modo de navega¸c˜ao ´e um modo auxiliar para fornecer um mapa de um ambiente virtual para o usu´ario. Ele pode ser t˜ao simples quanto um detector de paredes ou obst´aculos, mas poderia tamb´em procurar por portas, identificar degraus, escadas e buracos no ch˜ao. Este modo conta com a informa¸c˜ao de profundidade para identificar o plano do ch˜ao e encontrar potenciais obst´aculos na frente do usu´ario atrav´es de descontinuidades de profundidade. O componente RGB ajuda a encontrar padr˜oes especiais, tais como portas. Logo que ´e feito o reconhecimento de um indiv´ıduo, ´e emitido um som caracter´ıstico para indicar onde essa pessoa est´a, al´em de ter um bot˜ao para dizer os nomes, caso sejam reconhecidas pelo sistema.

(34)

Cap´ıtulo 3

Estado da Arte

Reconhecimento de face tem recebido uma grande aten¸c˜ao da comunidade cient´ıfica nos ´

ultimos anos devido aos seus avan¸cos e aplica¸c˜oes bem sucedidas na an´alise de imagens. Isso ´e evidenciado pelas in´umeras conferˆencias de reconhecimento facial como a

Inter-national Conference on Automatic Face and Gesture Recognition (AFGR), desde 1995,

e outras que englobam o assunto, como a International ACM SIGACCESS Conference

on Computers and Accessibility (ASSETS), al´em de sistemas comerciais dispon´ıveis (Ta-bela II). H´a ao menos duas raz˜oes para essa tendˆencia; a primeira ´e o amplo alcance de aplica¸c˜oes comerciais e para o cumprimento da lei, e a segunda ´e a disponibilidade de tecnologias pratic´aveis ap´os mais de quatro d´ecadas de pesquisa. Al´em disso, o problema do reconhecimento autom´atico de faces humanas continua a atrair pesquisadores de v´arias ´

areas como processamento de imagens, reconhecimento de padr˜oes, redes neurais, vis˜ao computacional, computa¸c˜ao gr´afica e psicologia.

´

E cada vez mais constante a necessidade de se obter sistemas de seguran¸ca de f´acil uti-liza¸c˜ao que possa proteger nossos bens e privacidade. Atualmente, uma pessoa precisa de um n´umero de identifica¸c˜ao pessoal (PIN) para retirar dinheiro de um caixa autom´atico, uma senha para um computador, uma d´uzia de outras senhas para acessar a internet, en-tre outros. Embora existam m´etodos muito confi´aveis de identifica¸c˜ao pessoal biom´etrica, como por exemplo, an´alise de impress˜ao digital e leitura de retina ou ´ıris, esses m´etodos dependem da coopera¸c˜ao de participantes, ao passo que um sistema de identifica¸c˜ao pes-soal baseado em an´alise de imagens de face frontais ou de perfil ´e frequentemente efetivo sem a coopera¸c˜ao ou conhecimento do participante. Algumas das vantagens e desvan-tagens de diferentes biometrias s˜ao descritas em Phillips et al [66]. A Tabela 3.1 lista algumas das aplica¸c˜oes de reconhecimento de face.

Aplica¸c˜oes comerciais e de cumprimento da lei que usam t´ecnicas de reconhecimento facial variam entre fotografias est´aticas, em um formato controlado, at´e imagens de v´ıdeo que n˜ao se tˆem controle, representando uma ampla gama de desafios t´ecnicos e requerem

(35)

9

Tabela 3.1: Aplica¸c˜oes T´ıpicas de Reconhecimento de Face. ´

Areas Aplica¸c˜oes Espec´ıficas

Entretenimento

Video Game, Realidade Virtual, Programas de Treinamento

Intera¸c˜ao Humano-Robˆo, Intera¸c˜ao Humano-Computador

Seguran¸ca da Informa¸c˜ao

Controle Parental de TV ou Computador, Logon de Dispositivos Pessoais

Logon de Computadores Seguran¸ca de Aplicativos, Seguran¸ca de Banco de Dados

Criptografia de Arquivos

Seguran¸ca da Intranet, Acesso de Internet Registros M´edicos

Cumprimento da Lei e Vigilˆancia

Vigilˆancia de V´ıdeo Avan¸cada, Controle de Acesso CFTV

Controle de Portas, An´alise P´os-Evento Furto em Lojas, Rastreamento de Suspeitos,

Investiga¸c˜ao

uma gama igualmente ampla de t´ecnicas desde processamento de imagens, an´alise, com-preens˜ao e reconhecimento de padr˜oes. Pode-se amplamente classificar sistemas que usam t´ecnicas de reconhecimento de face em dois grupos dependendo de se fazem uso de imagens est´aticas ou v´ıdeo. Dentro desses grupos existem diferen¸cas significativas, dependendo da aplica¸c˜ao espec´ıfica. As diferen¸cas est˜ao em termos de qualidade de imagem, varia¸c˜ao do fundo (sendo um desafio para algoritmos de segmenta¸c˜ao), variabilidade das imagens de um indiv´ıduo espec´ıfico que deve ser reconhecido, disponibilidade de um crit´erio de um reconhecimento bem definido, e a natureza, tipo e quantidade de dados de entrada de um usu´ario. Uma lista de alguns sistemas comerciais ´e dada na Tabela 3.2.

Um enunciado geral do problema de reconhecimento facial autom´atico pode ser

for-Tabela 3.2: Sistemas de Reconhecimento de Face Comerciais Dispon´ıveis.

Produtos Comerciais Websites

Raro Monitoramento divulguesms.wix.com/raroseguranca

FaceVACS da Plettac www.plettac-electronics.com

FaceKey Corp. www.facekey.com

MyBioID Personal Recognition www.bioid.com

Passfaces da ID-arts www.id-arts.com

(36)

10

mulado como se segue: dado imagens est´aticas ou em v´ıdeo de uma cena, identificar ou verificar uma ou mais pessoas na cena utilizando um banco de dados de rostos armaze-nado. Informa¸c˜ao colateral dispon´ıvel como etnia, idade, sexo ou express˜ao facial podem ser usados para reduzir a busca (reconhecimento aprimorado). A solu¸c˜ao para o problema envolve segmenta¸c˜ao de rostos (detec¸c˜ao de face) das cenas, extra¸c˜ao de caracter´ısticas das regi˜oes dos rostos, reconhecimento ou verifica¸c˜ao (Figura 3.1). Em problemas de iden-tifica¸c˜ao, a entrada do sistema ´e um rosto desconhecido e a sa´ıda do sistema ´e a identidade determinada de um banco de dados de indiv´ıduos conhecidos, enquanto em problemas de verifica¸c˜ao, o sistema precisa confirmar ou rejeitar a identidade da face de entrada.

Percep¸c˜ao de faces ´e uma parte importante da capacidade do sistema de percep¸c˜ao humana e ´e uma tarefa rotineira para as pessoas, enquanto criar um sistema computacio-nal semelhante ´e uma ´area ainda em pesquisa. Os primeiros trabalhos em reconhecimento de faces remontam aos anos 50 em psicologia [16] e aos anos 60 na literatura de engenha-ria [12]. Alguns dos primeiros estudos incluem trabalhos em express˜oes faciais de emo¸c˜oes por Darwin [23] e Ekman [25]; e em biometria facial baseada em perfil, por Galton [34]. Por´em, pesquisa em reconhecimento autom´atico de faces realmente come¸cou nos anos 70 [48] e no trabalho inicial de Kanade [47]. Ao longo dos ´ultimos 40 anos, pesquisas extensivas foram conduzidas por psicof´ısicos, neurocientistas e engenheiros sobre v´arios aspectos de reconhecimento de faces por humanos e m´aquinas. Psicof´ısicos e neurocientis-tas estavam preocupados com quest˜oes como se percep¸c˜ao de face ´e um processo dedicado (essa quest˜ao ainda ´e discutida na comunidade de psicologia [11, 27, 43, 35] e se ´e feita de forma hol´ıstica ou por an´alise de caracter´ısticas locais.

Muitas das hip´oteses e teorias apresentadas por pesquisadores nessas disciplinas foram baseadas em conjuntos pequenos de imagens. Ainda assim, muitos resultados tiveram consequˆencias importantes para pesquisadores que desenvolveram algoritmos e sistemas para reconhecimento autom´atico de faces.

Salvo algumas exce¸c˜oes que usam intervalo de dados [38], o problema de reconheci-mento facial tem sido formulado como reconhecer objetos tridimensionais a partir de ima-gens bidimensionais de objetos. As primeiras abordaima-gens tratavam como um problema de reconhecimento de padr˜ao 2D. Como resultado, durante o in´ıcio e o meio da d´ecada de 1970, t´ecnicas t´ıpicas de classifica¸c˜ao de padr˜oes, que usavam atributos medidos de ca-racter´ısticas (por exemplo, as distˆancias entre pontos importantes) em rostos ou perfis de faces, foram usadas [12, 47, 48]. Durante a d´ecada seguinte, trabalhos em reconhecimento de face permaneceram inativos. Desde o come¸co da d´ecada de 90, interesse em pesquisa em t´ecnicas de reconhecimento de face cresceu significantemente. Pode-se atribuir isso `a v´arias raz˜oes: um aumento no interesse em oportunidades comerciais; disponibilidade de hardware de tempo real; e a importˆancia crescente de aplica¸c˜oes relacionadas `a vigilˆancia. Ao longo dos ´ultimos 25 anos, as pesquisas focaram-se em como tornar os sistemas de

(37)

11 Sim u lt ane am ent e Detecção de Face Extração de Características Reconhecimento de Face  Rastreamento de rosto  Estimativa de pose  Compressão  Rastreamento de característica facial  Reconhecimento de emoção  Estimativa de Olhar  Modelos Holísticos  Geometria Característica  Híbrida Imagem / Vídeo de Entrada

Identificação / Verificação

Figura 3.1: Configura¸c˜ao de um sistema gen´erico de reconhecimento de face. reconhecimento de face completamente autom´aticas por meio de resolver problemas como localiza¸c˜ao de um rosto em uma dada imagem ou v´ıdeo e extra¸c˜ao de caracter´ısticas como olhos, boca, etc. Enquanto isso, avan¸cos significativos tem sido feitos no desenvolvimento de classificadores para reconhecimento de face bem sucedido. Entre abordagens hol´ısticas baseada em aparˆencia, eigenfaces [49, 82] e Fisherfaces [9, 28, 94] provaram ser efetivos em experimentos com bancos de dados grandes. Abordagens de correspondˆencia de grafos baseada em caracter´ısticas [87] tamb´em tˆem sido bastante sucedidas. Comparados `a abordagens hol´ısticas, m´etodos baseado em caracter´ısticas s˜ao menos sens´ıveis `a varia¸c˜oes em ilumina¸c˜ao, ponto de vista e imprecis˜ao em localiza¸c˜ao de face.

Durante os ´ultimos anos, muita pesquisa foi concentrada em reconhecimento de face baseada em v´ıdeo. O problema usando imagens est´aticas possui v´arias vantagens e des-vantagens inerentes. Para aplica¸c˜oes tais como carteiras de motorista, devido `a

(38)

natu-3.1. Estado da Arte em Vis˜ao e Acessibilidade 12

reza controlada do processo de aquisi¸c˜ao de imagens, o problema de segmenta¸c˜ao ´e f´acil. Entretanto, se apenas uma imagem est´atica de uma cena no aeroporto ´e dispon´ıvel, a localiza¸c˜ao autom´atica e a segmenta¸c˜ao de um rosto poderia ser um desafio s´erio a qual-quer algoritmo de segmenta¸c˜ao. Por outro lado, se uma sequˆencia em v´ıdeo ´e dispon´ıvel, segmenta¸c˜ao de uma pessoa em movimento pode ser realizada mais facilmente usando o pr´oprio movimento como dica. Por´em, o tamanho pequeno e a baixa qualidade da ima-gem dos rostos capturados de um v´ıdeo pode significantemente aumentar a dificuldade no reconhecimento.

Muitos sistemas comerciais para reconhecimento facial de imagens est´aticas est˜ao dis-pon´ıveis. Recentemente, esfor¸cos significativos foram focados em modelagem / rastrea-mento baseado em v´ıdeos, reconhecirastrea-mento e integra¸c˜ao de sistema. Novos banco de dados foram criados e t´ecnicas de avalia¸c˜ao de reconhecimento usando tais banco de dados foram realizados.

3.1

Estado da Arte em Vis˜

ao e Acessibilidade

Por muito tempo tem havido discuss˜oes e publica¸c˜oes na comunidade cient´ıfica sobre substitui¸c˜ao de sensores [6, 7] e a ideia de usar aparatos tecnol´ogicos para ajudar cegos e deficientes visuais tem sido parte da imagina¸c˜ao dos escritores e cineastas de fic¸c˜ao cient´ıfica [53].

Utilizar cˆameras para capturar imagens e ent˜ao mapear seu conte´udo para som n˜ao ´e uma ideia nova [7], mas normalmente todas as abordagens anteriores tentavam de alguma forma mapear os pixels de baixa intensidade para diferentes representa¸c˜oes de sons. Re-ceber entrada do ambiente atrav´es de uma cˆamera possui vantagens em rela¸c˜ao ao uso de emiss˜oes de ondas sonar, por exemplo, j´a que o curto alcance do sonar torna imposs´ıvel perceber objetos a longa distˆancia, como pr´edios, que ´e essencial para orienta¸c˜ao de mo-bilidade. Al´em disso, uma entrada visual casa com alguns dos maiores fornecedores de informa¸c˜ao nos arredores das pessoas, como placas e indicadores. Contr´ario ao sonar, a entrada visual tamb´em provˆe acesso a outras fontes de informa¸c˜ao importante como revistas e televis˜ao. Tecnicamente, ´e dif´ıcil obter entrada em alta resolu¸c˜ao n˜ao amb´ıgua utilizando um sonar de varredura, enquanto por outro lado, qualquer cˆamera de baixo custo comercialmente dispon´ıvel consegue fazer. Entretanto, esta afirma¸c˜ao est´a correta apenas se a cˆamera de entrada for alimentada com informa¸c˜ao de profundidade atrav´es das mudan¸cas em perspectiva. Informa¸c˜ao de profundidade pode ser derivada pelo de-senvolvimento das posi¸c˜oes relativas do espectador e seu ambiente, combinado com o conhecimento do tamanho real dos objetos reconhecidos.

O vOICe [60] foi a primeira proposta para um dispositivo desse tipo: uma cˆamera adquiria uma imagem bitmap de 64x64 pixels em 16 tons de cinza, e o sistema codificava

(39)

3.1. Estado da Arte em Vis˜ao e Acessibilidade 13

uma coluna de pixels por vez. O usu´ario ouvia a superposi¸c˜ao de todos os sons de uma coluna. A implementa¸c˜ao de hardware empregava uma arquitetura em pipeline para o c´alculo em tempo real das amostras de som. O design do sistema tinha como inten¸c˜ao ser port´atil e de baixo custo de energia. O prot´otipo foi constru´ıdo completamente de componentes comercialmente dispon´ıveis. A viabilidade t´ecnica da abordagem foi pro-vada pela constru¸c˜ao do sistema completamente funcional que, por meio do mapeamento reverso, preserva a informa¸c˜ao da imagem at´e uma resolu¸c˜ao correspondente para estimar resolu¸c˜oes alcan¸c´aveis. A resolu¸c˜ao dada pelo sistema em si ´e suficientemente alta para lidar com muitas situa¸c˜oes pr´aticas que requerem normalmente vis˜ao humana. Existem v´arias outras varia¸c˜oes deste conceito na literatura, como limiarizar a imagem e ent˜ao mapear a matriz de branco e preto em notas musicais [21, 20] e o sistema SVETA [8] (Stereo Vision based Eletronic Travel Aid) que usava a divergˆencia do est´ereo e oitava musical para os acordes maiores. Al´em disso, o SVETA foi desenvolvido com o prop´osito de aumentar a mobilidade e navega¸c˜ao de um deficiente visual. A divergˆencia do est´ereo ´e pr´oprio para para computa¸c˜ao de distˆancia em tempo real. Diferente do vOICe, o som produzido usando oitavas musicais ´e mais agrad´avel para ouvir de forma cont´ınua. A cor-respondˆencia do est´ereo ´e executada em imagens transformadas para calcular imagens de disparidades densas. Filtros de baixa textura e checagem de consistˆencia esquerda/direita s˜ao executados para remover os ru´ıdos e destacar os obst´aculos. Um procedimento de so-nifica¸c˜ao ´e usado para mapear a imagem de disparidade para som est´ereo musical, que possui informa¸c˜ao sobre as caracter´ısticas da cena em frente do usu´ario. Por fim, o som ´e transmitido para o deficiente visual por meio de fone de ouvido est´ereo.

Figura 3.2: Prot´otipo do sistema SVETA. Fonte: G. Balakrishnan, et. al. 2007 Mapear todo pixel para som geralmente produz um resultado confuso, com uma repre-senta¸c˜ao dif´ıcil de interpretar, que mesmo sendo agrad´avel de ouvir pode levar o usu´ario `a fadiga mesmo em curto prazo. O sistema ColOr [13, 14] foi uma das primeiras tentativas

(40)

3.1. Estado da Arte em Vis˜ao e Acessibilidade 14

de reduzir a quantidade de informa¸c˜ao visual utilizando Vis˜ao Computacional e Algorit-mos de Processamento de Imagens antes de gerar a informa¸c˜ao sonora, e tamb´em m´etodos de segmenta¸c˜ao e saliˆencia estimava a maioria das regi˜oes relevantes. O ColOr fornece ao usu´ario um feedback sonoro das cores do ambiente, fazendo com que a interpreta¸c˜ao das imagens poss´ıveis fossem limitadas. Com um prot´otipo de cˆamera foi verificada a hip´otese de que ´e poss´ıvel manipular e casar precisamente objetos coloridos. O projeto See ColOr verificou dois m´etodos de processamento de imagens: segmenta¸c˜ao para simplifica¸c˜ao da imagem e orientar o foco de aten¸c˜ao por meio de computa¸c˜ao de saliˆencia visual, com a t´ecnica de segmenta¸c˜ao dando melhores resultados, mas devido `as restri¸c˜oes de tempo real, foi implementado um m´etodo de quantifica¸c˜ao de imagem baseado no sistema de cores HSL. Assim, foi desenvolvido dois prot´otipos que transformam pixels coloridos em HSL para sons de instrumentos cl´assicos espacializados que duram por 300 ms. A matiz ´e sonificada pelo timbre de um instrumento musical, com a satura¸c˜ao sendo uma das qua-tro poss´ıveis notas, e a luminosidade ´e representada pelo baixo quando a luminosidade ´e bastante escura e por uma voz cantante quando ´e relativamente brilhante. O primeiro prot´otipo foi desenvolvido para imagens est´aticas na tela do computador, enquanto o segundo foi constru´ıdo com uma cˆamera estereosc´opica que estima profundidade pela tri-angula¸c˜ao. Na codifica¸c˜ao de ´audio, a distˆancia para os objetos foi quantificada em quatro n´ıveis de dura¸c˜ao. Dessa forma, a informa¸c˜ao de cor se torna ´util para a interpreta¸c˜ao das cenas, diminuindo a ambiguidade. Os experimentos demonstraram que o tempo de explora¸c˜ao das imagens ´e longo devido `as sub-janelas sonorizadas serem pequenas e n˜ao deveriam expandir muito devido aos limites da capacidade de audi¸c˜ao humana.

O PVSA [17] utiliza um modelo da retina humana com um modelo inverso da c´oclea, cujo prot´otipo ´e baseado em um computador pessoal que ´e conectado a um headphone e uma mini-cˆamera de v´ıdeo presa na cabe¸ca. A cena visual ´e capturada e o processa-mento de imagem faz a detec¸c˜ao de arestas e resolu¸c˜ao em grade. Cada pixel da imagem processada ´e atribu´ıdo a um tom senoidal e a soma ponderada dessas ondas senoidais constr´oi um sinal sonoro complexo que ´e traduzido pelos fones. O The Vibe [5, 40] , que ´e um projeto Open Source hospedado no sourceforge, determina as frequˆencias e as disparidades interauricular usando o centro da gravidade das coordenadas dos pixels do campo receptivo nas imagens. O som utilizado ´e composto de sons senoidais produzidos pelo pelas fontes virtuais correspondes a cada campo receptivo na imagem. Cada campo ´e um conjuntos de pixels localizados e a altura do som ´e determinada pela luminosidade m´edia dos pixels do campo receptivo correspondente. O software The Vibe traduz, em tempo real, imagens capturadas pela webcam em sa´ıda sonora transmitida para o usu´ario atrav´es de fones de ouvido. Comparado a outros dispositivos de substitui¸c˜ao sensorial do tipo vis˜ao para audi¸c˜ao, o The Vibe ´e altamente vers´atil por usar um conjunto de unidades configur´aveis funcionando em paralelo.

(41)

3.1. Estado da Arte em Vis˜ao e Acessibilidade 15

O NAVIG: Navigation Assisted by Artificial Vision and GNSS combina uma cˆamera est´ereo com GPS para oferecer tipos diferentes de navega¸c˜ao [54, 36] e busca de ro-tas [15, 46]. O sistema consiste de componentes como um m´odulo para determinar a posi¸c˜ao e orienta¸c˜ao do usu´ario no espa¸co em que ele se encontra, um sistema de in-forma¸c˜ao geogr´afica incluindo um banco de dados dos lugares onde foi testado e o

soft-ware para planejamento de rotas e para obter informa¸c˜oes do banco de dados, interface de usu´ario, entre outros, para obter informa¸c˜ao n˜ao detalhada sobre o ambiente. Assim, o deficiente visual ainda depende de bengalas e c˜aes-guias para tal. Os experimentos per-mitiram concluir que os dados de desempenho, classifica¸c˜oes subjetivas e as preferˆencias de ordena¸c˜ao convergiram em indicar que o melhor modo foi o que empregava som espa-cializado de um display ac´ustico virtual. Tamb´em os dados s˜ao consistentes em indicar indesejabilidade de prover informa¸c˜ao de orienta¸c˜ao sem uma b´ussola. Sistemas de na-vega¸c˜ao que n˜ao usam corre¸c˜ao diferencial de um GPS nem uma b´ussola para informa¸c˜oes de dire¸c˜ao n˜ao s˜ao aptos a fornecer informa¸c˜ao detalhada de orienta¸c˜ao.

Figura 3.3: Prot´otipo do sistema NAVIG. Retirado de www.limsi.fr

Krishna et al [52] desenvolveu um ´oculos de sol com uma cˆamera estenopeica pinhole que usa um algoritmo de an´alise de componente principal (PCA) [50] para reconheci-mento de face. O sistema do ´oculos de sol ´e validado com um conjunto de dados alta-mente controlado, sem disfarces e apenas com varia¸c˜ao em pose e ilumina¸c˜ao, que usa um mecanismo precisamente calibrado para adquirir essas imagens para fornecer um re-conhecimento robusto. O hardware utilizado para a constru¸c˜ao do dispositivo consiste de trˆes componentes: Uma cˆamera anal´ogica CCD (Charge-Coupled Device ou Dispositivo de Carga Acoplada) para a aquisi¸c˜ao do v´ıdeo. Os 92I do campo de vis˜ao provˆe uma boa cobertura do espa¸co `a frente do usu´ario; como a cˆamera produz uma sa´ıda anal´ogica, o segundo componente ´e um digitalizador para fazer a convers˜ao para um formato digital

(42)

3.1. Estado da Arte em Vis˜ao e Acessibilidade 16

que pode ser usado em um computador para an´alise. Foi usado um digitalizador que converte os sinais de entrada para AVI comprimido e transmite o fluxo AVI por um cabo USB. O driver do dispositivo ´e baseado no modelo padr˜ao de driver do windows (WDM) e aparece para o programador com um dispositivo gen´erico de captura de v´ıdeo no sistema operacional; por fim, um laptop de pequeno porte foi usado para executar o algoritmo de reconhecimento facial. Os experimentos foram feitos usando os algoritmos PCA e LDA, alcan¸cando taxas de reconhecimento em torno de 98,5% com o PCA e 98% com o LDA, com tempos em torno de 12,656 ms e 40,583 ms respectivamente.

Em Kramer et al [51], um smartphone fornece feedback aud´ıvel sempre que um rosto que est´a no banco de dados entra ou sai da cena, e o processamento do algoritmo de detec¸c˜ao ´e realizado em um servidor que usa a tecnologia de faces VeriLook. A ferramente utiliza tecnologia de smartphone junto a uma rede sem fio para prover feedback aud´ıvel das pessoas em frente do deficiente visual. Os testes indicaram que o reconhecimento facial pode tolerar um ˆangulo de at´e 40 graus entre a dire¸c˜ao que uma pessoa est´a olhando e o eixo da cˆamera, com 96% de taxa de reconhecimento sem falsos positivos, podendo identificar pessoas em um ambiente de trabalho.

Astler et al [4] usa uma cˆamera em cima de uma bengala branca comum e executa o reconhecimento de face usando o Luxand Face SDK, e identifica seis tipos de express˜oes faciais usando o Seeing Machines FaceAPI. Para que a tarefa de reconhecimento pudesse ser feita em tempo real, o dispositivo foi desenvolvido utilizando componentes de hardware com uma cˆamera IEEE-1394b de alta velocidade para capturar imagens em uma taxa de frames alta, minimizando a carga da CPU. O software comercial FaceAPI foi usado para rastrear precisamente caracter´ısticas faciais em tempo real. Analizando o movimento de caracter´ısticas faciais, puderam descobrir tendˆencias comuns nas mesmas express˜oes entre indiv´ıduos diferentes. Assim, foi programado sob demanda algoritmos com limiares para classificar express˜oes baseadas nessas tendˆencias detectadas. Este m´etodo teve sucesso em detectar express˜oes como felicidade, surpresa, desgosto e raiva em uma taxa a quase 30 frames por segundo.

Em 2012, Tanveer et al [79] desenvolveu um sistema chamado FEPS, que utiliza um algoritmo de Constrained Local Model para reconhecimento de express˜oes faciais forne-cendo feedback aud´ıvel. O dispositivo de substitui¸c˜ao sensorial ´e baseado em um celular, utilizado ao redor do pesco¸co que pode informar ao usu´ario as express˜oes faciais do inter-locutor por meio de feedback sonoro. Para alcan¸car performance em tempo real, o celular transmite os frames de v´ıdeo capturados para um servidor na rede, que executa a an´alise das express˜oes faciais e envia o resultado de volta para o celular, com todo o processo demorando em torno de 500 milisegundos quando a conex˜ao com a rede est´a est´avel e boa condi¸c˜ao de ilumina¸c˜ao. As raz˜oes citadas para ser diferente de sistemas que tentam inferir emo¸c˜ao dos movimentos faciais e produzir uma resposta baseada nas inferˆencias

(43)

3.1. Estado da Arte em Vis˜ao e Acessibilidade 17

s˜ao que as diferen¸cas culturais no mapeamento de express˜ao para emo¸c˜ao pode levar a um sistema ser baseado por particularidades culturais, al´em de que v´arias combina¸c˜oes de face e movimentos de cabe¸ca podem transmitir uma vasta quantidade de conte´udo emocional. Selecionar apenas um subconjunto destas emo¸c˜oes para o feedback pode su-butilizar o potencial de um dispositivo de substitui¸c˜ao sensorial. O FEPS ´e designado para sonificar os movimentos faciais diretamente. Os movimentos faciais associados `as p´alpebras, sombrancelhas, l´abios e boca s˜ao selecionados para feedback sonoro. Os sinais s˜ao filtrados e diferenciados para detectar os picos e quedas repentinos, denotados como eventos “cima” e “baixo”, com os usu´arios sendo notificados por um som.

Fusco et al [33] propˆos um m´etodo que combina casamento de rosto e m´odulos de verifica¸c˜ao de identidade em feedback, explorando a eficiˆencia temporal do casamento e a performance dos classificadores SVM utilizados. O m´etodo inclui uma abordagem de casamento de faces de v´ıdeo para imagens que explora a informa¸c˜ao temporal para refinar a consulta, elevando a performance de reconhecimento. Ent˜ao, um passo de verifica¸c˜ao de identidade explora a propriedade de generaliza¸c˜ao dos classificadores SVM para validar ou rejeitar a hip´otese feita sobre a presen¸ca de pessoas conhecidas no v´ıdeo. Os dados vˆem em um fluxo de frames de v´ıdeo adquiridos por uma cˆamera que pode estar se movimentando. Os rostos capturados devem estar quase frontal, j´a que a pessoa pode estar se movendo ou falando. As identidades conhecidas s˜ao associadas a uma galeria de tamanho vari´avel. Um feedback r´apido e ponderado ´e dado ao usu´ario, no sentido de n˜ao produzir sa´ıdas contradit´orias m´ultiplas. O m´etodo proposto ´e validado no benchmark de v´ıdeos MOBO e em um dataset pr´oprio adquirido, com o prop´osito de mostrar a efetividade do m´etodo mesmo com conjuntos de treinamento relativamente pequenos. A coerˆencia dada pela evolu¸c˜ao temporal dos dados de v´ıdeo ´e explorada para refinar a taxa de reconhecimento e assim aumentar a robustez do feedback do sistema.

(44)

Cap´ıtulo 4

Meios e M´

etodos

Neste cap´ıtulo ´e apresentado as t´ecnicas de reconhecimento de face utilizadas para o m´odulo do projeto Vision for the Blind. Ao todo, foram testadas trˆes t´ecnicas conhecidas, que s˜ao o k-Nearest Neighbors (k-NN), Eigenfaces e o Local Binary Pattern Histogram (LBPH).

4.1

K-Nearest Neighbours

O algoritmo k-Nearest Neighbours (ou apenas k-NN) ´e um m´etodo n˜ao param´etrico utili-zado para classifica¸c˜ao e regress˜ao [3]. Em ambos casos a entrada consiste dos k exemplos de treinamento mais pr´oximos no espa¸co caracter´ıstico. A sa´ıda depende se o k-NN ´e usado para classifica¸c˜ao ou regress˜ao.

• No k-NN para classifica¸c˜ao, a sa´ıda ´e a associa¸c˜ao das classes. Um objeto ´e classi-ficado por uma maioria de votos de seus vizinhos, com o objeto sendo atribu´ıdo `a classe mais comum entre seus k vizinhos mais pr´oximos (onde k ´e um inteiro po-sitivo, tipicamente pequeno). Se k = 1, ent˜ao o objeto ´e simplesmente atribu´ıdo `a classe daquele ´unico vizinho mais pr´oximo.

• No k-NN para regress˜ao, a sa´ıda ´e o valor de propriedade para o objeto. Este valor ´

e a m´edia dos valores de seus k vizinhos mais pr´oximos

O k-NN ´e um tipo de aprendizado baseado em exemplo, ou aprendizagem pregui¸cosa, onde a fun¸c˜ao ´e apenas aproximada localmente e toda computa¸c˜ao ´e adiada at´e a clas-sifica¸c˜ao. O algoritmo k-NN est´a entre os algoritmos mais simples de aprendizado de m´aquina.

Tanto para classifica¸c˜ao como para regress˜ao, pode ser ´util ponderar as contribui¸c˜oes dos vizinhos, assim os vizinhos mais pr´oximos contribuem mais para a m´edia do que os

(45)

4.1. K-Nearest Neighbours 19

vizinhos mais distantes. Por exemplo, um sistema de pondera¸c˜ao comum consiste em dar a cada vizinho um peso de 1/d, onde d ´e a distˆancia para este vizinho.

Os vizinhos s˜ao tomados de um conjunto de objetos para o qual a classe (no caso de classifica¸c˜ao usando k-NN) ou o valor de propriedade do objeto (no caso da regress˜ao) ´e conhecido. Isto pode ser imaginado como o conjunto de treinamento para o algoritmo, apesar de que n˜ao h´a exatamente esse passo de treinamento. Uma das deficiˆencias do algoritmo k-NN ´e que ele ´e sens´ıvel `a estrutura local dos dados.

Os exemplos de treinamento s˜ao vetores em um espa¸co caracter´ıstico multidimensional, cada qual com um r´otulo de classe. A fase de treinamento do algoritmo consiste apenas de guardar os vetores caracter´ısticos e os r´otulos de classe das amostras de treinamento.

Na fase de classifica¸c˜ao, k ´e uma constante definida pelo usu´ario, e um vetor n˜ao rotulado (ponto de teste) ´e classificado atribuindo o r´otulo ao qual ´e mais frequente entre as k amostras de treinamento mais pr´oximas ao ponto de teste.

Figura 4.1: Exemplo de classifica¸c˜ao k-NN. A amostra de teste representada pelo c´ırculo deve ser classificada pertencente `a primeira classe dos quadrados ou pertencente `a classe dos triˆangulos. Se k = 3, o c´ırculo ´e atribu´ıdo `a segunda classe, j´a que h´a dois triˆangulos e apenas um quadrado dentro do c´ırculo de borda s´olida. Entretanto, se k = 5, a atribui¸c˜ao ´e para a primeira classe, j´a que temos trˆes quadrados e dois triˆangulos dentro do c´ırculo externo.

(46)

4.1. K-Nearest Neighbours 20

Uma m´etrica de distˆancia usada normalmente para vari´aveis cont´ınuas ´e a distˆancia euclidiana. Para vari´aveis discretas, tais como para classifica¸c˜ao de texto, outra m´etrica pode ser usada, como a distˆancia de Hamming. Frequentemente, a precis˜ao da classifica¸c˜ao do k-NN pode ser melhorada significantemente se a m´etrica de distˆancia ´e aprendida com algoritmos especializados como o Large Margin Nearest Neighbour (LMNN) ou a an´alise de componentes da vizinhan¸ca. A Figura 4.1 na p´agina anterior demonstra o funcionamento do algoritmo k-NN.

Uma desvantagem da classifica¸c˜ao b´asica por maioria de votos ocorre quando a dis-tribui¸c˜ao de classe ´e enviesada. Isto ´e, exemplos de uma classe mais frequente tende a dominar a predi¸c˜ao do novo exemplo, porque eles tendem a ser comum entre os k vizinhos mais pr´oximos devido ao seu grande n´umero [18]. Uma forma de superar este problema ´e ponderar a classifica¸c˜ao, levando em conta a distˆancia do ponto de teste a cada um de seus k vizinhos mais pr´oximos. A classe (ou o valor, em problemas de regress˜ao) de cada um dos k pontos mais pr´oximos ´e multiplicado por um peso proporcional ao inverso da distˆancia daquele ponto para o ponto de teste. Outra forma de superar este mesmo problema ´e fazendo a abstra¸c˜ao na representa¸c˜ao dos dados. Por exemplo, em um mapa auto-organiz´avel (Self-Organizing Map, ou SOM), cada n´o ´e um centro de um cluster de pontos similares, independente de sua densidade nos dados originais de treinamento. O k-NN pode ent˜ao ser aplicado ao SOM.

(47)

4.1. K-Nearest Neighbours 21

A melhor escolha de k depende dos dados; geralmente, grandes valores de k reduzem o efeito do ru´ıdo na classifica¸c˜ao [29], mas torna os limites entre as classes menos distintos. Um bom k pode ser selecionado por v´arias t´ecnicas heur´ısticas. O caso especial onde a classe ´e prevista ser a classe da amostra de treinamento mais pr´oxima (quando k = 1) ´e chamado de algoritmo de vizinho mais pr´oximo.

A precis˜ao do algoritmo k-NN pode ser severamente reduzida pela presen¸ca de carac-ter´ısticas com ru´ıdos ou irrelevantes, ou ainda se a pondera¸c˜ao das caracter´ısticas n˜ao s˜ao consistentes com sua importˆancia. Uma abordagem ´e o uso de algoritmos evolutivos para otimizar a pondera¸c˜ao das caracter´ısticas [63]. Outra abordagem consiste em pon-derar caracter´ısticas pela informa¸c˜ao m´utua dos dados de treinamento com as classes de treinamento.

Em problemas de classifica¸c˜ao bin´ario, ´e ´util escolher um k ´ımpar, j´a que isso evita empates. Uma maneira popular de escolher o k ´otimo empiricamente nesta configura¸c˜ao ´e pelo m´etodo bootstrap [39].

?

Figura 4.3: Exemplo de classifica¸c˜ao k-NN. Para k=1, o c´ırculo em quest˜ao ir´a pertencer `

a classe dos quadrados. Para k=3, aos triˆangulos, por´em, se k=7, dever´a pertencer `a classe dos quadrados.

O k-NN ´e um caso especial de um estimador de densidade kernel com largura de banda vari´avel com um kernel uniforme [80, 62].

A vers˜ao mais simples dos algoritmos ´e implementada computando as distˆancias da amostra de teste para todos os exemplos guardados, mas isso ´e computacionalmente in-tenso para grandes conjuntos de treinamento. Usando um algoritmo de busca de vizinhos mais pr´oximo apropriado torna o k-NN computacionalmente trat´avel mesmo para con-juntos de dados grandes. Muitos algoritmos de busca de vizinho mais pr´oximo foram

(48)

4.1. K-Nearest Neighbours 22

propostos ao longo dos anos; estes geralmente procuram reduzir o n´umero de avalia¸c˜oes de distˆancia executados.

O k-NN possui resultados fortes e consistentes. Mesmo que a quantidade de dados se aproxime do infinito, ´e garantido que o algoritmo produza uma taxa de erro n˜ao pior que duas vezes a taxa de erro de Bayes (a menor taxa de erro alcan¸c´avel dada a distribui¸c˜ao dos dados) [19]. O k-NN garante se aproximar da taxa de erro de Bayes para algum valor de k (onde k aumenta como uma fun¸c˜ao do n´umero dos pontos de dados). V´arios aperfei¸coamentos ao k-NN s˜ao poss´ıveis usando grafos de proximidade [81].

Quando os dados de entrada para um algoritmo s˜ao grandes demais para serem pro-cessados e suspeita-se serem redundantes ent˜ao os dados de entrada s˜ao transformados em um conjunto de caracter´ısticas com representa¸c˜ao reduzida (vetor caracter´ıstico). Trans-formar os dados de entrada no conjunto de caracter´ısticas ´e chamado de extra¸c˜ao de caracter´ısticas. Se as caracter´ısticas extra´ıdas s˜ao cuidadosamente escolhidas espera-se que o vetor caracter´ıstico extrair´a a informa¸c˜ao relevante dos dados de entrada para exe-cutar a tarefa desejada utilizando esta representa¸c˜ao reduzida em vez da entrada toda. Extra¸c˜ao de caracter´ısticas ´e executado em dados n˜ao processados antes de aplicar o algoritmo k-NN nos dados transformados no espa¸co caracter´ıstico.

Um exemplo de um pipeline t´ıpico em vis˜ao computacional para reconhecimento de fa-ces usando k-NN incluindo extra¸c˜ao de caracter´ısticas e com passos de pr´e-processamento para redu¸c˜ao de dimensionalidade s˜ao:

1. Detec¸c˜ao de face usando o classificador Haar

2. An´alise de rastreabilidade por mudan¸ca de m´edia (mean-shift)

3. Proje¸c˜ao PCA ou Fisher LDA no espa¸co caracter´ıstico, seguido pela classifica¸c˜ao k-NN

Para dados com alta dimensionalidade (n´umero de dimens˜oes maior que 10), a redu¸c˜ao da dimens˜ao ´e normalmente executada antes de aplicar o algoritmo k-NN para fugir dos efeitos dos problemas de dimensionalidade [10]. Este problema no contexto do k-NN basicamente significa que a distˆancia euclidiana n˜ao ajuda em altas dimens˜oes porque todos os vetores s˜ao quase equidistantes ao vetor de busca. Por exemplo, imagine m´ultiplos pontos em uma disposi¸c˜ao como a de um c´ırculo do qual temos um ponto no centro; a distˆancia deste ponto para todos os outros pontos no espaIo de busca ´e praticamente o mesmo.

Extra¸c˜ao de caracter´ısticas e redu¸c˜ao de dimensionalidade podem ser combinados em um passo usando t´ecnicas de an´alise de componente principal (PCA), an´alise discrimi-nante linear (LDA) ou ainda an´alise de correla¸c˜ao canˆonica (CCA) como passos de pr´ e-processamento, seguidas por clusteriza¸c˜ao k-NN nos vetores caracter´ısticos no espa¸co de

(49)

4.1. K-Nearest Neighbours 23

dimens˜ao reduzido. Em aprendizado de m´aquina este processo ´e tamb´em chamado de

Low-Dimensional Embedding [75].

Uma matriz de confus˜ao ´e frequentemente usada como ferramenta para validar a pre-cis˜ao da classifica¸c˜ao por k-NN. Outros m´etodos estat´ısticos mais robustos como teste de

likelihood-ratio tamb´em podem ser aplicados.

Neste projeto, para o reconhecimento de faces usando o k-NN, foi usado junto o des-critor de caracter´ısticas Histograma de Gradientes Orientados, ou HOG.

4.1.1

Histograma de Gradientes Orientados

Histograma de Gradientes Orientados s˜ao descritores de caracter´ısticas usados em vis˜ao computacional e processamento de imagens para o prop´osito de detec¸c˜ao de objetos. Esta t´ecnica conta as ocorrˆencias da orienta¸c˜ao do gradiente em por¸c˜oes localizadas de uma imagem. O m´etodo ´e similar ao de histogramas de orienta¸c˜ao de arestas, descritores SIFT (scale-invariant feature transform) e shape contexts, mas difere-se no que ´e computado em uma rede densa de c´elulas uniformemente espa¸cadas e utiliza normaliza¸c˜ao de contraste local sobreposto para maior precis˜ao

A ideia principal por tr´as dos descritores HOG ´e que a aparˆencia local do objeto e sua forma dentro de uma imagem podem ser descritos pela distribui¸c˜ao dos gradientes de intensidade ou das dire¸c˜oes das arestas. A implementa¸c˜ao desses descritores pode ser alcan¸cada dividindo a imagem em pequenas regi˜oes conectadas, chamadas de c´elulas, e para cada c´elula compila-se um histograma das dire¸c˜oes do gradiente ou as orienta¸c˜oes das arestas para os pixels dentro da c´elula. A combina¸c˜ao desses histogramas repre-senta o descritor. Para maior precis˜ao, os histogramas locais podem ser normalizados pelo contraste calculando uma medida da intensidade por meio de uma regi˜ao maior da imagem, chamada de bloco, e ent˜ao usando este valor para normalizar todas as c´elulas dentro do bloco. Esta normaliza¸c˜ao resulta em uma melhor invariˆancia para mudan¸cas em ilumina¸c˜ao ou sombreamento

O descritor HOG mant´em algumas vantagens sobre outros m´etodos de descritores. Como o descritor HOG opera em c´elulas localizadas, o m´etodo mant´em a invariˆancia para transforma¸c˜oes geom´etricas e fotom´etricas, exceto pela orienta¸c˜ao do objeto. Tais mudan¸cas apenas aparecem em grandes regi˜oes espaciais. Al´em disso, como Dalal e Triggs [22] descobriram, amostragem espacial grosseira, amostragem de orienta¸c˜ao fina e normaliza¸c˜ao fotom´etrica local forte permitem o movimento do corpo individual de pedes-tres ser ignorado contanto que mantenha uma posi¸c˜ao aproximadamente perpendicular. O descritor HOG ´e, portanto, particularmente pr´oprio para detec¸c˜ao de humanos nas imagens.

(50)

e-processa-4.1. K-Nearest Neighbours 24

mento de imagens ´e garantir os valores normalizados da cor e do gama. Entretanto, como Dalan e Triggs apontam, este passo pode ser omitido na computa¸c˜ao do descritor HOG, j´a que a normaliza¸c˜ao do descritor subsequente alcan¸ca o mesmo resultado. Assim, o pr´e-processamento da imagem proporciona um impacto pequeno na performance. Em vez disso, o primeiro passo do c´alculo ´e a computa¸c˜ao dos valores dos gradientes. O m´etodo mais comum ´e simplesmente aplicar a m´ascara para derivada, de ponto discreto e 1D centrada, em uma ou nas duas dire¸c˜oes, horizontal e vertical. Especificamente, este m´etodo requer filtrar os dados de intensidade ou de cor da imagem com os seguintes kernels:

I

Dalal e Triggs testaram outras m´ascaras mais complexas, como as m´ascaras Sobel 3x3 ou m´ascaras diagonais, mas essas m´ascaras geralmente tinham performance pior nos experimentos de detec¸c˜ao de humanos.

Figura 4.4: Exemplos de convers˜ao de imagem no descritor HOG.

O segundo passo do c´alculo involve criar os histogramas das c´elulas. Cada pixel dentro da c´elula faz um voto ponderado para um canal do histograma de orienta¸c˜ao baseado nos valores achados na computa¸c˜ao do gradiente. As c´elulas podem tanto serem de forma retangular ou radial, e os canais dos histograma s˜ao distribu´ıdos de 0 a 180 graus ou de 0 a 360 graus, dependendo se o gradiente possui sinal ou n˜ao. Dalal e Triggs descobriram que gradientes sem sinais usados em conjunto com 9 canais de histogramas tˆem melhor desempenho nos experimentos feitos para detec¸c˜ao de humanos. Para a pondera¸c˜ao dos votos, a contribui¸c˜ao dos pixels pode ser tanto a magnitude do gradiente em si, ou uma fun¸c˜ao de magnitude; nos testes a magnitude do gradiente geralmente produz melhores resultados. Outras op¸c˜oes para a pondera¸c˜ao do voto inclui a raiz quadrada ou o quadrado da magnitude do gradiente [22].

A fim de contabilizar as mudan¸cas em ilumina¸c˜ao e contraste, a for¸ca do gradiente deve ser normalizada localmente, o que requer agrupar as c´elulas em blocos grandes e espacialmente conectados. O descritor HOG ´e ent˜ao o vetor dos componentes dos histo-gramas normalizados das c´elulas de todas as regi˜oes dos blocos. Esses blocos normalmente

Referências

Documentos relacionados