Você está na página 1de 79

Fundao Universidade Federal do Rio Grande

Engenharia de Computao

Um Sistema Computacional para


Extrao de Caractersticas Faciais
Felipe Castro da Silva
Rodrigo Mendes Costa

Rio Grande, 28 de Junho de 2006

Fundao Universidade Federal do Rio Grande


Engenharia de Computao

Um Sistema Computacional para


Extrao de Caractersticas Faciais
Felipe Castro da Silva
Rodrigo Mendes Costa
Trabalho de Concluso do Curso de Graduao em Engenharia de Computao submetido avaliao, como requisito parcial obteno do ttulo de Engenheiro de Computao.

Orientador(a): Prof. Ms. Alessandro de Lima Bicho

Co-orientador(a): Prof . Dra. Silvia Silva da Costa Botelho

Rio Grande, 28 de Junho de 2006

Este trabalho foi analisado e julgado adequado para a obteno do ttulo de Engenheiro
de Computao e aprovado em sua forma nal pelos orientadores.


Prof. Ms. Alessandro de Lima Bicho

Banca Examinadora:
Prof. Ms. Alessandro de Lima Bicho
DMAT  FURG (Orientador)

Prof. Ms. Glauber Acunha Gonalves


DFIS  FURG

Eng. Ms. Rogrio Schmidt Feris


Department of Computer Science  University of California, Santa Barbara

A todos que amo


F.C.S.
queles que amo demais
R.M.C.

Agradecimentos
minha me, por ter me educado durante toda vida com muito amor.
Ao meu pai, que sempre foi um exemplo de inteligncia, dedicao e sucesso prossional.
s minhas irms, pelo grande apoio dado.
minha namorada Thiana, pelo seu carinho, amizade, companheirismo e compreenso
em todos os momentos deste rduo trabalho.
Aos meus avs, que sempre vibraram com minhas conquistas pessoais e prossionais.
Ao meu orientador Prof. Alessandro de Lima Bicho, por todo seu interesse, exibilidade
e competncia para conduzir da melhor maneira este trabalho.
Ao meu amigo Rodrigo Mendes Costa, por sua aplicao e brilhantismo durante todos
os anos de convivncia.

F.C.S.

Aos meus pais e famlia, por presentear-me com a vida e preench-la com todo amor.
minha Anala, pelo seu amor e carinho, na alegria e na tristeza...
Ao meu orientador Prof. Alessandro de Lima Bicho, por todo seu interesse, exibilidade
e competncia para conduzir da melhor maneira este trabalho.
Ao meu amigo Felipe Castro da Silva, por sua determinao e competncia em cada
momento necessrio.
Ao meu amigo Thales Sehn Krting, por sua dedicao, lealdade e exemplo motivador.
Aos meus demais amigos, por estarem em meu corao me impulsionando e
engrandecendo.

R.M.C.

Contedo
Lista de Figuras

iv

Lista de Abreviaturas

vii

Resumo

viii

Abstract

ix

1 Introduo

1.1

Motivao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.2

Objetivos

1.3

Organizao do Texto

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2 Fundamentao Terica

2.1

Alguns Trabalhos Correlatos . . . . . . . . . . . . . . . . . . . . . . . . . .

2.2

Etapas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.2.1

Aquisio

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.2.2

Deteco . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.2.3

Localizao

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

11

2.2.4

Rastreamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

11

2.2.5

Normalizao

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

11

2.2.6

Segmentao

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

11

2.2.7

Extrao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

12

Aplicaes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

12

2.3

ii

CONTEDO

3 Aquisio e Localizao da Face


3.1

3.2

Aquisio

14

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

14

3.1.1

Cmeras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

14

3.1.2

Ambiente

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

15

3.1.3

Restries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

16

Localizao

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

17

3.2.1

Espaos de Cores . . . . . . . . . . . . . . . . . . . . . . . . . . . .

18

3.2.2

Localizao pelos espaos de cores

. . . . . . . . . .

22

3.2.3

Localizao por mdias migratrias . . . . . . . . . . . . . . . . . .

24

3.2.4

Deteco de Objetos

26

3.2.5

Mtodo de ajuste de uma elipse pelos menores quadrados (Ellipse-

Specic)
3.2.6

YIQ

YCbCr .

. . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

30

Simetria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

32

4 Normalizao e Segmentao
4.1

4.2

Normalizao

36

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4.1.1

Rotao

4.1.2

Rudo

36

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

36

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

38

Segmentao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

38

4.2.1

Contornos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

38

4.2.2

Mtricas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

40

4.2.3

Projees Integrais

41

4.2.4

Segmentao de fundo

. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . .

5 Extrao das Caractersticas Faciais

41

45

5.1

Extrao dos pontos caractersticos em imagens frontais . . . . . . . . . . .

45

5.2

Extrao dos pontos caractersticos do perl

47

. . . . . . . . . . . . . . . . .

6 Aspectos de Implementao

52

6.1

Caractersticas

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

52

6.2

Sntese do Processo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

53

6.3

Linguagem de Programao

54

. . . . . . . . . . . . . . . . . . . . . . . . . .

iii

CONTEDO

6.3.1

Histrico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

55

6.3.2

Caractersticas

55

6.3.3

Java Media FrameWork

. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
(JMF)

. . . . . . . . . . . . . . . . . . . .

7 Consideraes Finais

57

58

7.1

Diculdades Encontradas . . . . . . . . . . . . . . . . . . . . . . . . . . . .

58

7.2

Propostas Futuras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

59

Bibliograa

60

Lista de Figuras
1.1

Pontos caractersticos considerados nesse trabalho. . . . . . . . . . . . . . .

2.1

Caractersticas

faciais

do

padro

MPEG-4.

Figura

adaptada

de

[Abrantes and Pereira, 1999] . . . . . . . . . . . . . . . . . . . . . . . . . .

3.1

Cmeras CCD USB utilizadas nas lmagens

3.2

Ambiente e disposies utilizadas nas lmagens

3.3

Exemplo de

3.4

Cubo de cores

3.5

Espao de cores

3.6

Sistema de coordenadas do espao de cores

YIQ

3.7

Sistema de coordenadas do espao de cores

YCbCr

3.8

Imagem antes da aplicao do algoritmo de mdias migratrias ( esquerda).

frames

. . . . . . . . . . . . . . . . .

15

. . . . . . . . . . . . . . .

16

adquiridos pelas cmeras . . . . . . . . . . . . . . . . .

16

RGB

[Figueir, 2003].

HSV

. . . . . . . . . . . . . . . . . . . . .

como um objeto cnico [Wikipedia, 2005d].

19

. . . . .

20

. . . . . .

21

[Ribeiro, 2004]. . . . . .

22

[Ribeiro, 2004].

Imagem aps a aplicao do algoritmo de mdias migratorias

( direita). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.9

26

Imagem original da face ( esquerda). Os pequenos objetos brancos dentro


dos objetos pretos so os rudos gerados pela localizao da cor de pele (
direita).

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

27

3.10 Localizao da cor da pele ( esquerda) e aplicao do fechamento morfolgico imagem ( direita).

. . . . . . . . . . . . . . . . . . . . . . . . . .

3.11 Deteco de cor de pele ( esquerda).


como fundo da imagem ( direita).

27

Em destaque, o objeto detectado

. . . . . . . . . . . . . . . . . . . . . .

28

3.12 Deteco de cor de pele ( esquerda). Em destaque, os objetos detectados


como buracos da imagem ( direita).

iv

. . . . . . . . . . . . . . . . . . . . .

29

LISTA DE FIGURAS

3.13 Imagem original da face ( esquerda).

Objeto detectado como face na

imagem ( direita). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

29

3.14 Imagem original da face ( esquerda). Elipse aplicada ao contorno externo


( direita). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

30

3.15 Imagem original da face ( esquerda). Elipse aplicada aos contornos interno
e externo ( direita).

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.16 Elipse aplicada ao contorno externo ( esquerda).


inclinao da face ( direita).

31

Clculo do ngulo de

. . . . . . . . . . . . . . . . . . . . . . . . .

31

3.17 Objeto detectado como face, pela cor de pele, e com a aplicao do algoritmo de deteco de objetos (em cima, esquerda). Objeto criado a partir
do contorno da primeira aplicao da elipse (em cima, direita). Objeto
resultante da operao de

OR

entre os dois objetos de cima (em baixo,

esquerda). Elipse gerada a partir dos contornos do novo objeto (em baixo,
direita).

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.18 Varincia e Acerto para cada eixo de simetria ( esquerda).

32

Valores de

Acerto ( direita). Adaptada de [Chen et al., 2005]. . . . . . . . . . . . . .

34

3.19 Sugesto de angulao no mtodo da Elipse ( esquerda). Eixo de simetria


detectado ( direita). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4.1

Eixo de simetria detectado ( esquerda) e a imagem frontal rotacionada (


direita) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4.2

34

37

Imagem original com rudo ( esquerda) e a imagem aps aplicada a convoluo de mdia ( direita)

. . . . . . . . . . . . . . . . . . . . . . . . . .

4.3

Exemplo de segmentao utilizando projees integrais

4.4

Imagem da face original (cima, esquerda). Deteco dos contornos gerados pelo algoritmo de Canny (cima, direita).

. . . . . . . . . . .

38
41

Segmentao do fundo

utilizando somente a informao da componente matiz (baixo, esquerda).


Segmentao do fundo utilizando a componente matiz e a imagem dos contornos (baixo, direita).
4.5

. . . . . . . . . . . . . . . . . . . . . . . . . . . .

44

Imagem com o fundo em branco ( esquerda). Linha de perl gerada pelo


algortimo Canny ( direita). . . . . . . . . . . . . . . . . . . . . . . . . . .

44

vi

LISTA DE FIGURAS

5.1

Imagem original da face ( esquerda). Linhas que restringem as regies de


busca ( direita) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

46

5.2

Pontos de perl (vermelho e verde) [Shan et al., 2000].

. . . . . . . . . . .

47

5.3

Imagem original da face ( esquerda). Ponta do nariz extrada ( direita). .

48

5.4

Exemplos de extrao dos pontos caractersticos de perl. . . . . . . . . . .

50

6.1

ScreenShot

. . . . . . . . .

53

6.2

Etapas do processo de extrao de caractersticas proposto. . . . . . . . . .

54

da tela da aplicao que valida nosso trabalho.

Lista de Abreviaturas
API
CCD

Application Programming Interface

Charge-Coupled Device

CODEC

Codicador-Decodicador

FPS

Frames Per Second

FTP

File Transfer Protocol

GLDH
HSV

Hue, Saturation e Value

HTTP
IHC

Gray Level Dierence Histogram

HyperText Transfer Protocol

Interao Humano-Computador

JVM

Java Virtual Machine

RGB

Red, Green e Blue

vii

Resumo
Este trabalho prope extrair o maior nmero possvel de caractersticas faciais que possam
descrever o movimento da face de forma a possibilitar a criao de um modelo tridimensional a m de simular seus movimentos.

Como entrada para o sistema, so aplicadas

tcnicas de viso computacional a imagens ortogonais de uma face humana para a gerao
de pontos tridimensionais que a caracterizem. O mtodo utilizado sugere uma abordagem
em vrias etapas para alcanar o objetivo, a saber, os pontos caractersticos da face. No
primeiro processo, para a imagem frontal, a face localizada com a utilizao de um
mtodo no qual a posio da face estimada por sua cor de pele. J na imagem de perl,
uma tcnica de extrao de fundo empregada para determinar os contornos da linha
da face. A partir da localizao da face, o mtodo de ajuste a uma elipse pelos menores
quadrados (Ellipse-Specic) utilizado.

Este mtodo tem por objetivo reconstruir, da

melhor maneira possvel, o formato elptico da face, de modo a estimar sua rotao. Um
mtodo de simetria rena o ngulo de rotao da face possibilitando sua normalizao. Na
segmentao, os limites das caractersticas de interesse da face (sobrancelhas, olhos, nariz
e boca) so delimitados. Para tal operao utilizado o mtodo de projees integrais.
Estes valores reduzem o espectro de anlise para as etapas seguintes. A extrao busca
pelos pontos caractersticos em regies restritas, anteriormente estimadas, tanto na imagem de perl quanto na imagem frontal. Por m, os pontos tridimensionais caractersticos
da face so determinados atravs da correlao entre a imagem frontal e a lateral.

viii

Abstract
This work proposes to extract the largest possible number of face features that can describe
the face movement to make possible the creation of a tridimensional model to simulate
its movements. As a system input, techniques of computational vision for the orthogonal
images of a face are applied to the generation of tridimensional points that characterize
it. The used method suggests an approach with some stages to achieve the objective, that
are the features points of the face. In the rst process, for the frontal image, the face is
located with the use of a method where the position of the face is estimated based on its
skin-color. In the prole image, a technique of background extration is used to determine
the contours of the face. After the localization of the face, the method of adjustment to an
ellipse (Ellipse-Specic Direct Least-Square Fitting) is used. This method reconstructs,
in the best possible way, the elliptical shape of the face, to estimate its rotation.

symmetry method renes the rotation angle of the face making possible its normalization.
In the segmentation, the limits of interested features of the face (eyebrows, eyes, nose and
mouth) are delimited.

For such operation the method of integral projections is used.

These values reduce the analysis for the following stages.

The extraction level searchs

for the feature points in restricted regions, previously estimated, bothin the prole image
as in the frontal image. Finally, tridimensional feature points of the face are determined
through the correlation between the frontal and prole image.

ix

Captulo 1
Introduo
Uma breve avaliao do histrico de pesquisas na rea da Viso Computacional e da
Computao Grca expe uma grande evoluo e uma eminente preocupao sobre o
aperfeioamento das interfaces grcas que interajam com os seres humanos. Dentro deste
contexto, uma trajetria bastante interessante a seguir, de modo a propiciar esta melhor
comunicao entre homem e mquina, seria dotar o computador com caractersticas humanas.
A ideologia de tornar o computador capaz tanto de reconhecer expresses e gestos,
como tambm reproduz-los de forma realstica e convincente, tem sido foco de pesquisa
em grupos de IHC (Interao Humano-Computador) [IHC, 2005].

Dentre as linhas de

pesquisa existentes, destaca-se o interesse em modelar a face humana e determinar suas


caractersticas principais.
Seguindo

essa

losoa,

pode-se

discriminar

duas

categorias

de

modelos

faciais

[Garcia et al., 2001]:

Avatars:
de

um

modelos

usurio

em

irreais

que

realidade

produzem

virtual,

representaes

jogos

ou

outros

grcas

simblicas

ambientes

interativos

[Wikipedia, 2005a]. Segundo [Garcia et al., 2001], a categoria que na maioria das
vezes pode ser facilmente modelada e animada;

Clones:

modelos

dedignos

[Valente and Dugelay, 2000].

que

se

assemelham

com

seres

humanos

Estes so considerados um dos grandes desaos

para a Computao Grca [Lee et al., 1995].

CAPTULO 1.

INTRODUO

Ambicionando que agentes virtuais interajam com mltiplos usurios em inmeras


situaes completamente distintas, inevitvel considerar que eles devam alterar suas
expresses faciais diante do contexto na qual se encontram [Yokoyama et al., 1996]. Este
apenas um dos propsitos do estudo de tcnicas de extrao de caractersticas faciais que podem ser aplicadas em outros campos de pesquisa, tais como, reconhecimento,
acessibilidade, teleconferncia virtual, codicao de vdeo, entre outras.

1.1 Motivao
O advento da Computao Grca e, paralelamente, a rpida emerso de

hardwares

pr-

prios para a execuo de aplicaes tridimensionais, permitiram que novos estudos sobre
a modelagem de estruturas complexas fossem realizados. Neste contexto, surgiu a proposta de modelar a face humana de forma a reconhecer e simular seus movimentos em
um ambiente virtual, gerando um agente possvel de utilizao em inmeras ferramentas,
tornando assim a interao com o computador muito mais amigvel.
Para que este objetivo seja alcanado, inicialmente necessria a aquisio de um
modelo de face humana.

Utilizando tcnicas de viso computacional, o intuito deste

trabalho concentra-se em coletar as caractersticas estticas e dinmicas necessrias de


um modelo humano real.

Estas caractersticas so representadas atravs de pontos do

espao tridimensional, possibilitando a animao de uma face virtual do modelo humano


analisado.
Nossa motivao alimenta-se da necessidade de intensicar pesquisas cientcas sobre
o processo de extrao de caractersticas faciais, utilizando tcnicas de processamento
de sinais (imagens) aliadas viso computacional.

Seu resultado pode ser focalizado

em diversos segmentos de pesquisa e desenvolvimento, gerando tanto novos trabalhos


cientcos como timas ferramentas que usufruam seus benefcios.

1.2 Objetivos
O propsito deste trabalho visa, a partir de um ambiente sucientemente controlado, extrair o maior nmero possvel de caractersticas faciais que possam descrever o movimento

CAPTULO 1.

INTRODUO

de uma face. Para tal, so utilizadas imagens ortogonais de uma face humana, onde uma
conter a vista frontal e a outra conter o perl da face.

Deve car claro que apenas

alguns dos pontos mais signicativos da face sero utilizados, ou seja, o projeto no tem
inicialmente o intuito de extrair pontos sucientes que permitam modelar geometricamente a face. Os pontos caractersticos que sero considerados ao longo deste trabalho
esto especicados na Figura 1.1.

Figura 1.1: Pontos caractersticos considerados nesse trabalho.

Outra questo relevante exposio dos objetivos quanto as possveis restries


que algumas tcnicas pesquisadas impem ao modelo analisado, descaracterizando uma
postura natural e limitando o funcionamento das tcnicas para apenas alguns casos. Por
esse motivo, ambicionou-se superar essas limitaes, escolhendo metodologias que nos
permitissem alcanar o resultado sem impor tantas restries ao modelo de face analisado.
O conceito de

software

multi-plataforma tambm foi considerado na elaborao desta

proposta de projeto, resultando na deciso da utilizao da linguagem


guagem de programao. Alm disso, o projeto props a utilizao de

JAVA

como lin-

webcams

no papel

dos sensores de entrada do sistema, o que representa uma soluo de baixo custo e, ao
mesmo tempo, um obstculo a ser transposto devido qualidade da imagem adquirida.

1.3 Organizao do Texto


Aps uma breve introduo sobre o contexto do trabalho, neste momento aproveita-se
para orientar sobre a disposio das demais sees inclusas neste documento. Espera-se,

CAPTULO 1.

INTRODUO

por meio desta, favorecer a compreenso do contedo abordado, alm de descrever uma
sntese sobre a forma como nosso trabalho foi conduzido ao longo do estudo realizado.
A organizao adotada prev uma reviso bibliogrca sobre as etapas necessrias
at a extrao de caractersticas faciais no Captulo 2. Neste captulo, uma viso geral
juntamente com um histrico cientco sobre o assunto abordada. Vrios conceitos so
expostos para o real entendimento do processo.
O Captulo 3 inicia a abordagem adotada nesse trabalho para a implementao de
um sistema capaz de extrair caractersticas faciais.

Todas as tcnicas implementadas

so descritas e avaliadas diante dos resultados alcanados.

Nova descrio realizada

no Captulo 4, agora sob o mbito da segmentao de caractersticas.

Finalizando a

explicao do processo, o Captulo 5 trata da extrao dos pontos caractersticos dos


elementos que constituem a face humana.
A partir do Captulo 6, aspectos relacionados implementao do sistema, incluindo
todos os recursos utilizados, so apresentados. J o Captulo 7 transparece as concluses
alcanadas e descreve as principais diculdades encontradas, nalizando este trabalho com
as perspectivas futuras.

Captulo 2
Fundamentao Terica
A inteno deste captulo realizar uma sntese supercial das etapas at a extrao de
caractersticas faciais e dessa forma facilitar a compreenso das escolhas e implementaes
presentes neste trabalho. Nas sees seguintes, sero apresentados conceitos da rea que
se faro importantes para a leitura.

Atravs deste captulo, ser exposto o quanto foi

pesquisado para a realizao deste projeto.

2.1 Alguns Trabalhos Correlatos


Neste ponto, prioritrio que se dena exatamente o signicado de caractersticas faciais
que deseja-se obter. Caractersticas faciais so os elementos que compem a face, como
sobrancelhas, olhos, nariz, lbios, queixo, entre outros. Nossa inteno extrair os pontos
caractersticos que denem esses elementos, para dessa forma analisar o movimento e
permitir a gerao de um modelo para simulao. Em [Abrantes and Pereira, 1999] podese encontrar a especicao do padro MPEG-4 que dene pontos caractersticos da face
que tem relevncia para a denio de movimentos faciais. A Figura 2.1 mostra quais so
esses pontos.
O trabalho de [Yokoyama et al., 1996] relata que muitos mtodos foram propostos
para extrair caractersticas faciais. Dentre eles se destacariam o casamento de padres,
projees integrais de contornos e modelos deformveis. O mtodo de casamento de padres empregado para reconhecer as caractersticas faciais, mas sensvel a presena
de transformaes geomtricas, distores e deformaes causadas pelas expresses faci-

CAPTULO 2.

Figura

2.1:

FUNDAMENTAO TERICA

Caractersticas

faciais

do

padro

MPEG-4.

Figura

adaptada

de

[Abrantes and Pereira, 1999]

ais.

Um trabalho dentro dessa linha o de [Lanzarotti et al., 2002].

Outros trabalhos

propem mtodos heursticos aplicados s projees integrais e informaes adicionais


sobre a simetria para localizar face e caractersticas, como por exemplo, os trabalhos de
[Gu et al., 2003, Shan et al., 2000, Rozinaj and Mistral, 2003]. Mtodos que se baseiam
apenas na anlise de nveis de cinza (intensidade) so facilmente inuenciados pela variao da iluminao.
como

Snakes

Tcnicas que utilizam modelos deformveis de contornos ativos,

[Precioso et al., 2005], detectam ou perseguem contornos evidentes.

ltimo tipo modela uma funo de energia que permite a adaptao da

Snake

Esse

ao con-

torno.

No entanto, o principal problema desta tcnica se deve a disposio inicial da

Snake,

juntamente com o fato das caractersticas faciais no apresentarem em grande

parte das vezes contornos uniformes. Na mesma linha aparecem os padres deformveis
[Yuille et al., 1992] que tambm baseiam-se em funes de energia, mas aproximam-se de
outras caractersticas alm de contornos, como picos e vales de intensidade.

2.2 Etapas
Aps uma ampla pesquisa sobre trabalhos correlatos extrao de caractersticas faciais,
foi identicado alguns conceitos que, apesar de no encontrados explicitamente com essa
nomenclatura e especicidade em qualquer um dos trabalhos pesquisados, sintetizam um

CAPTULO 2.

FUNDAMENTAO TERICA

consenso entre os mesmos. Esses conceitos sero apresentados aqui como uma seqncia
de etapas ou tarefas que constituem um processo completo de extrao de caractersticas
faciais. Essas etapas seriam:

Aquisio

Deteco

Localizao

Rastreamento

Normalizao

Segmentao

Extrao

No entanto, relevante destacar que essas etapas no so necessariamente independentes e absolutas. Tanto algumas delas podem substituir outras, quanto podem estar
interligadas de forma a impossibilitar uma distino perfeita [Zhao et al., 2003]. A percepo destas dependncias car mais clara ao longo desse trabalho.

2.2.1

Aquisio

A indispensvel etapa de aquisio uma das mais importante no processo de extrao


de caractersticas faciais. Todas as demais fases dependem direta ou indiretamente das
decises tomadas para realizar o processo de aquisio. Dentre as variveis pertinentes a
esse processo, destacam-se genericamente:

Sensor:

o tipo de sensor utilizado para coletar as informaes pertinentes sobre o

modelo facial analisado;

Disposio dos sensores:

o arranjo adequado dos sensores para o problema pro-

posto, dependente da tcnica utilizada para a sntese da fase;

Ambiente:

pr-requisitos necessrios para que a aquisio possa ser realizada;

CAPTULO 2.

Posio:

Regra:

FUNDAMENTAO TERICA

a posio adequada do modelo que passar pela anlise;

restries as quais o modelo humano deve se submeter em relao a movi-

mentos, a expresses, a indumentria, entre outros.

Como nossa abordagem sobre o processo de extrao de caractersticas se restringe


utilizao de imagens, a aplicao de cmeras como sensores de entrada foi adotada e, por
esse motivo, tratar-se- especicamente deste segmento. No entanto, algumas pesquisas
na rea utilizam outros tipos de equipamentos especcos como

scanners

laser1

capazes

de gerar, atravs do clculo da distncia de cada ponto do objeto analisado, uma nuvem
de pontos no espao tridimensional.
Existem na literatura algumas tcnicas que utilizam cmeras para a constituio de um

scanner 3D. Algumas delas, inclusive, vinculam tambm a utilizao de outros dispositivos
para auxiliar a sntese facial, como feixes de

laser

ou luz. Uma anlise dos mtodos mais

difundidos pode ser encontrada em [Chan et al., 2004]. Como explicado no Captulo 1, a
tcnica adotada em nosso trabalho baseia-se na utilizao de duas vistas ortogonais da
face analisada.
Em relao ao que chama-se de ambiente, existe uma grande variedade de propostas
que descrevem a estrutura necessria para que a aquisio e futura extrao de caractersticas funcione adequadamente.

No que diz respeito iluminao, um dos principais

problemas existentes o de como lidar com as sombras, anal elas so muitas vezes
indesejveis nas etapas seguintes. Por esse motivo, uma iluminao ineciente pode comprometer todo o processo hierrquico para a extrao de caractersticas.
Tanto o posicionamento do modelo quanto as possveis deformaes de sua face podem
caracterizar excees a muitos sistemas de extrao de caractersticas. Sendo assim, estes
cuidados tambm devem ser considerados durante a etapa de aquisio.

2.2.2

Deteco2

Identicada como a primeira fase de qualquer processo de localizao, extrao ou reconhecimento de caractersticas, a fase de deteco de faces revela os primeiros obstculos a

na literatura como laser range scanners ou apenas range scanners.


baseada no trabalho de [Feris, 2001]

1 Encontrados

2 Seo

CAPTULO 2.

FUNDAMENTAO TERICA

serem transpostos no que diz respeito a viso computacional. Inmeros agentes, externos
e internos, afetam a ecincia dos algoritmos responsveis pela constatao da presena
ou no de uma face humana na imagem ou seqncia de imagens analisadas.

Dentre

os fatores externos, destacam-se rudos na imagem, diferentes condies de iluminao


e obstruo total ou parcial da face humana.

Determinadas alteraes e deformaes

na aparncia da face, ocasionadas at mesmo por expresses faciais incomuns, so


consideradas agentes internos e resultam em uma srie de restries impostas pelos
sistemas propostos na literatura.

Imagens estticas
Existem, basicamente, duas classicaes para as tcnicas utilizadas na deteco de faces em imagens estticas:

(1) abordagem baseada em caractersticas e (2) abordagem

holstica. A primeira, realiza a identicao da presena da face humana buscando por


caractersticas facias e possveis relaes mtricas entre elas.

J a abordagem holstica

analisa a imagem na tentativa de detectar a face em sua integra.


Inicialmente, as propostas para deteco de faces basearam-se na busca por caractersticas faciais atravs da anlise de suas formas. Essa tcnica demonstrou-se sensvel
a interferncias provenientes de rudos. Tcnicas com casamento de padres tambm se
mostraram inecientes, visto que os elementos que constituem a face humana no so rgidos. Em [Yuille et al., 1992], a tcnica de utilizao de padres deformveis

apresenta

bons resultados, mas possui como principal desvantagem o elevado custo computacional
envolvido.
Alm destas propostas para a abordagem baseada em caractersticas, ainda se destacam mtodos que utilizam modelos de contornos ativos, modelos estatsticos e tcnicas
baseadas em correlao.
Normalmente, abordagem holsticas realizam uma varredura na imagem por intermdio de uma janela em mltiplas escalas, extraindo pequenas regies que so ento processadas por um mtodo especco. Tcnicas como PCA (Principal

3 Traduo

Component Analysis),

utilizada para deformable templates, tambm conhecida na literatura brasileira como tem-

plates deformveis

CAPTULO 2.

FUNDAMENTAO TERICA

modelos probabilsticos utilizando

10

eigenfaces apresentam resultados positivos, mas sofrem

restries quanto variao da luminosidade e alteraes da face neutra. Redes neurais


apresentam resultado satisfatrio na deteco de faces em imagens complexas e rotacionadas.
Outras tcnicas conhecidas utilizam as cores para selecionar regies de interesse,
diminuindo signicativamente o custo computacional ao varrer toda a imagem para
localizar as possveis ocorrncias de uma face. A desvantagem desses mtodos tambm
comumente relacionada a diferentes graus de iluminao.

Dentre abordagens baseadas

em caractersticas e abordagens holsticas, a segunda tem apresentado maior eccia


quando se trata de imagens estticas.

Imagens dinmicas
Quando se trata de seqncias de imagens ou vdeos, geralmente h uma perda em relao qualidade das imagens, em contrapartida, inmeras informaes sobre movimento
podem ser utilizadas.

Valendo-se desse artifcio, os mtodos de deteco de faces em

seqncias de vdeo so divididos em duas etapas: (1) reduo do espao de busca e (2)
anlise da ocorrncia de face. A primeira etapa diz respeito a seleo eciente de regies
candidatas conterem a face humana, restando segunda vericar as regies selecionadas.
Como citado anteriormente, uma das tcnicas de reduo de espaos de busca a utilizao de modelos de cor da pele humana [Feris et al., 2000], pois demandam um esforo
computacional muito reduzido e facilitam a deteco da face em diferentes orientaes.
Outras propostas interessantes utilizam a tcnica de subtrao de fundo como alternativa, no entanto, s apresentam bom resultados em situaes de cmera imvel e poucas
alteraes entre as imagens.
No que diz respeito a vericao da ocorrncia ou no da face nas regies candidatas,
as principais tcnicas encontradas na literatura baseiam-se basicamente em correlao
com padres, simetria, anlise de textura, forma e at mesmo movimentos caractersticos
como piscar e movimentao dos olhos.

CAPTULO 2.

2.2.3

11

FUNDAMENTAO TERICA

Localizao

A etapa de localizao muito semelhante a etapa de deteco. Elas s se diferenciam pelo


fato da localizao no comprovar a presena da face na regio localizada. Basicamente,
a deteco engloba a localizao, mas a recproca no verdadeira. Por esse motivo, as
tcnicas s de localizao geralmente utilizam mecanismos de avaliao menos exigentes,
como por exemplo, a proposta desse trabalho que utiliza apenas a cor da pele para localizar
a regio onde se encontra a face.

2.2.4

Rastreamento

A etapa de rastreamento de faces, conhecida como

tracking,

responsvel pelo acompa-

nhamento da face obtida no incio de uma seqncia de vdeo at o nal da mesma. Isso
implica na localizao constante da face em cada quadro que compe o vdeo.

Desta

forma, o custo computacional reduzido juntamente com o espao de busca dentro do


quadro. Outra vantagem do rastreamento a continua realimentao do sistema da informaes sobre o movimento que podem ser de grande valia dependendo da aplicao
qual est sendo utilizada.

2.2.5

Normalizao

A etapa de normalizao tem por nalidade executar as possvel correes que so necessrias nas imagens ou quadros que passaro a etapa de segmentao e extrao de caractersticas. Dentre os principais problemas que uma imagem possa apresentar, destacam-se a
ocorrncia de rudo na captura do sensor de entrada, alm das possveis rotaes naturais,
mesmo que pequenas, aplicadas pela face.

2.2.6

Segmentao

O processo de segmentao a etapa onde realizada a subdiviso de uma imagem


em suas partes constituintes.
interesse tiverem sido isolados.

Este processo concludo quando todas os objetos de


A segmentao autnoma uma das tarefas mais dif-

ceis em processamento de imagens e determina o eventual sucesso ou fracasso na anlise


[Gonzalez and Woods, 2000].

CAPTULO 2.

FUNDAMENTAO TERICA

12

Algoritmos de segmentao de imagens normalmente baseiam-se na anlise de descontinuidades, focados na deteco de mudanas bruscas (pontos, linhas e bordas), e
similaridade, dedicados a limiarizao (thresholding) e operaes entre regies distintas.
Uma vantagem especca da segmentao aplicada em seqncias de vdeo a utilizao
do movimento para determinao das regies a serem diferenciadas.
Quanto se trata especicamente da segmentao da face e caractersticas faciais,
preciso se considerar que olhos, boca, nariz e demais caractersticas so diferentes de
pessoa para pessoa e, mesmo sobre a mesma pessoa, podem ser deformadas conforme a
expresso facial [Yokoyama et al., 1996].

2.2.7

Extrao

Por m, a etapa de extrao compreende as tcnicas necessrias para extrair os pontos de
controle de cada uma das caractersticas faciais segmentadas. Como os diversos elementos
da face possuem caractersticas diferenciadas, geralmente tcnicas distintas so aplicadas
a cada segmento para realizar a tarefa de extrao.
Segundo [Zhao et al., 2003], os mtodos de extrao de caractersticas podem ser diferenciados em trs tipos:

Mtodos genricos baseados em contornos, linhas e curvas;

Mtodos baseados em padres das caractersticas;

Mtodos de correspondncias estrutural que consideram geometria dos elementos;

2.3 Aplicaes
O trabalho de [Tang and Huang, 1996] acrescenta que em funo da tentativa de alcanar
baixas taxas de codicao de vdeo, sistemas de codicao baseada em modelos tm
atrado grande interesse na rea de telecomunicaes visual como, por exemplo, vdeofone
e teleconferncias onde a face humana apresenta o papel mais relevante.

A principal

idia dessa abordagem construir um modelo 3D da face humana. Apenas as partes que
caracterizam o movimento so analisadas e os parmetros da movimentao so ento

CAPTULO 2.

13

FUNDAMENTAO TERICA

transmitidos, permitindo que a expresso facial original seja sintetizada pela deformao
do modelo facial.
A identicao de suspeitos a partir de cmeras de segurana uma aplicao de
grande importncia da extrao de caractersticas faciais. Em [Martins, 2005], apresentado um instrumento de utilidade para rgos policiais que aplicam recursiva e manualmente o retrato-falado como ferramenta para busca de suspeitos em arquivos fotogrcos.
J em [da Silva and de Castro Santa Rosa, 2003], a busca por pessoas feita com apenas
20% da imagem de uma face, atravs da tcnica de

eigeneyes.

Segundo [Lanzarotti et al., 2002] os modelos tridimensionais gerados por extrao de


caractersticas so usados em aplicao voltadas a medicina, video, realidade virtual e
computao grca.

Captulo 3
Aquisio e Localizao da Face
Com uma viso mais clara do desao de extrair caractersticas faciais a partir de uma
seqncia de imagens, o trabalho se direciona a explicar as caractersticas das principais
tcnicas utilizadas.

Em um primeiro momento, o processo de aquisio ser discutido,

seguindo as questes expostas na Seo 2.2.1.

Logo em seguida, os mtodos aplicados

localizao da face sero descritos, alm da apresentao do contedo necessrio para


seus entendimentos.

3.1 Aquisio
Para melhor apresentar as decises tomadas neste projeto em relao aquisio, esta
seo comenta separadamente cada uma das escolhas que foram tomadas para denir a
trajetria inicial do trabalho.

3.1.1

Cmeras

Desde o perodo de idealizao do projeto, existiu o interesse em implementar uma tcnica


que realizasse a extrao de caractersticas com o mnimo de recursos possveis.

Dessa

forma, o custo baixo e a facilidade de obter os recursos para a sua execuo tornariam o
programa mais acessvel para sua utilizao.
Inicialmente, cogitou-se utilizar cmeras de vdeo conectadas a placas de captura de
vdeo nos computadores. No entanto, essa alternativa seria to custosa que inviabilizaria
a utilizao dessa pesquisa para outras aplicaes.

14

CAPTULO 3.

15

AQUISIO E LOCALIZAO DA FACE

Seguindo essa trajetria, decidiu-se aceitar o desao de extrair caractersticas faciais de um modelo humano utilizando cmeras CCD

USB. Conhecidas como

webcams,

essas cmeras apresentam uma resoluo muito baixa em comparao com as cmeras
tradicionais, alm de serem muito sensveis as variaes de luminosidade.
A Figura 3.1 mostra as cmeras utilizadas na aquisio dos vdeo utilizados na extrao
de caractersticas faciais. A resoluo adotada foi a de 352 x 288
(taxa de

frames)

iluminao. O

pixels com um framerate

varivel em funo da caracterstica CCD da cmera inuenciada pela

framerate

mdio conseguido se aproximou de 10 fps (frames

per second).

Figura 3.1: Cmeras CCD USB utilizadas nas lmagens

3.1.2

Ambiente

Dentre as opes pesquisadas para dispor o modelo durante as lmagens, foi adotada a
estrutura mostrada na Figura 3.2. Duas cmeras foram dispostas em eixos ortogonais a
uma distncia aproximada de 50 centmetros da cabea do modelo.
Como fundo foi utilizado uma tecido azul, baseado na tcnica de cromaqui que ser
explicada mais detalhadamente no Captulo 4 sobre normalizao e segmentao. A adoo de um fundo simples reduz signicativamente a complexidade da etapa de localizao
da face, no entanto, outros trabalhos como o de [Su and Yin, 2004] dedicam-se exclusivamente a detectar a face humana em imagens complexas.

1 CCD

(Charge-Coupled Device) ou Dispositivo de Carga Acoplado um sensor para a gravao de

imagens formado por um circuito integrado contendo um conjunto de capacitores ligados (acoplados).
Sob o controle de um circuito externo, cada capacitor pode transferir sua carga eltrica para um outro
capacitor vizinho) [Wikipedia, 2005c].

CAPTULO 3.

AQUISIO E LOCALIZAO DA FACE

16

Figura 3.2: Ambiente e disposies utilizadas nas lmagens

Quanto iluminao, nenhum padro mais rigoroso foi utilizado, apenas tentou-se dispor lmpadas sucientes ao redor do modelo de forma a evitar ao mximo o aparecimento
de sombras sobre sua face. Inicialmente, apenas lmpadas uorescentes foram consideradas, no entanto, uma lmpada frontal incandescente fez-se necessria para manter o tom
da pele mais perceptvel, j que o mesmo se apresentava muito plido sob a iluminao
uorescente. A Figura 3.3 mostra um exemplo de aquisio realizado.

Figura 3.3: Exemplo de

3.1.3

frames

adquiridos pelas cmeras

Restries

Como foi colocado na Seo 1.2, um dos principais objetivos desse trabalho evitar
impor restries ao modelo facial analisado. Isso porque o projeto prope acompanhar
e reproduzir o movimento facial.

No entanto, infelizmente algumas restries tiveram

que ser impostas para que o projeto pudesse ser implementado em tempo. Mesmo assim,
como sero descritas nos captulos seguintes, algumas restries encontradas em trabalhos
correlatos puderam ser superadas.

CAPTULO 3.

17

AQUISIO E LOCALIZAO DA FACE

Inevitavelmente, para a tcnica de correlao, entre imagem frontal e imagem de perl,


utilizada at o atual estado do projeto, a face no pode realizar rotaes signicativas
sobre o eixo das profundidades, pois isso resultar em erros na aproximao da regio
segmentada, especicamente a da boca. Essa restrio ser melhor detalhada no Captulo
4 sobre normalizao e segmentao.

3.2 Localizao
A prxima etapa, aps se realizar a aquisio de um vdeo da face, atravs das cmeras
frontal e lateral, ser a localizao da face em cada imagem (ou

frame).

Localizar a

face, antes de extrair cada caracterstica facial em particular, facilitar o trabalho, pois a
procura por elementos no ser em toda imagem, mas sim em um espao reduzido.
Contudo, a maioria das tcnicas utilizadas para localizar faces tem por objetivo tentar
suprir alguns problemas comuns como [Yang et al., 2002]:

Pose:

as imagens de face variam de acordo com a posio da cmera. Conseqen-

temente, algumas caractersticas faciais, tais como um olho ou o nariz, podem estar
parcialmente ou totalmente oclusos.

Presena ou no de componentes estruturais:

caractersticas faciais tais como

barbas, bigodes e at mesmo adereos, como, por exemplo, culos, podem estar presentes, o que resulta em uma grande variabilidade entre esses componentes incluindo
suas formas, cores e tamanhos.

Expresso Facial:

a expresso da face inuencia diretamente na aparncia e na

forma da imagem.

Ocluses:

Condies da imagem:

a face pode estar obstruda parcialmente por outros objetos.

quando uma imagem obtida, fatores como iluminao

e caractersticas da cmera afetam a aparncia da face.

Existem vrias tcnicas utilizadas para localizar a face em uma imagem. Por exemplo,
em imagens coloridas, pontos de cor de pele podem ser encontrados pelo mtodo baseado

CAPTULO 3.

AQUISIO E LOCALIZAO DA FACE

18

em caractersticas invariantes , que um processo interessante para se obter uma nuvem


de pontos que represente a face.
A utilizao da cor da pele para determinar a localizao da face uma sub-rea
dos mtodos baseados em caractersticas invariantes. Dentro desse espectro de pesquisa,
foram estudados alguns mtodos, sendo que um deles foi utilizado como uma alternativa
para a localizao da face (Seo 3.2.3).
A opo pelo mtodo baseado em caractersticas invariantes, deu-se por sua capacidade
de localizar a face independentemente de algum conhecimento sobre sua forma e posio
na imagem.
Os mtodos baseados na cor da pele para localizao de uma face geralmente apresentam rudo devido ou a um fundo complexo ou a objetos (que possuem cor semelhante
da pele humana) que estejam na imagem. Para resolver este problema, utilizou-se um
algoritmo de deteco de objetos (Seo 3.2.4). Esse algoritmo mantm na imagem apenas o maior objeto.

Como o enfoque deste trabalho adquirir imagens de uma face,

considera-se, por denio, que o maior objeto conexo localizado na imagem a face.
Todos os mtodos que sero apresentados fazem, em algum momento, referncia a um
ou mais espaos de cores. Por esse motivo, ser feita uma breve reviso sobre os espaos
de cores necessrios para a idealizao da aplicao.

3.2.1

Espaos de Cores

O propsito de um espao de cores estabelecer um mtodo formal, necessrio para se


quanticar as sensaes visuais das cores que podem ser mais precisamente especicadas.
Este mtodo explica as propriedades ou o comportamento das cores em um contexto
particular. Basicamente, um espao de cor possui uma especicao em um sistema de
coordenadas tridimensionais. Neste sistema de coordenadas, cada cor representada por
um nico ponto desse espao tridimensional.
Os espaos de cores mais frequentemente utilizados no processamento e anlise de
imagens so o

RGB, HSV, YIQ

YCbCr.

A seguir, sero apresentados cada um desses

espaos baseado em [Gonzalez and Woods, 2000].

2O

conceito de caractersticas invariantes refere-se premissa na qual a cor da pele de uma pessoa se

mostra homognea ao longo da face em condies ideais de iluminao

CAPTULO 3.

19

AQUISIO E LOCALIZAO DA FACE

RGB
No espao

RGB, cada cor aparece nos seus componentes espectrais primrios de vermelho,

verde e azul. Baseado num sistema de coordenadas cartesianas, tem como subespao de
cores de interesse um cubo.

Na Figura 3.4 est representado o cubo

RGB,

no qual os

valores de vermelho, verde e azul esto nos trs cantos, levando-se em considerao que o
preto a origem do sistema de coordenadas cartesianas; ciano, magenta e amarelo esto
nos outros trs cantos. A escala de nveis de cinza (componente

V, ver Seo 3.2.1 (HSV))

est na linha que liga o ponto preto ao ponto branco. Essa informao muito utilizada
no processamento e anlise de imagens.

Figura 3.4: Cubo de cores

Imagens no espao de cores

RGB

RGB consistem em

[Figueir, 2003].

trs planos de imagem independentes.

Um para cada cor primria. Quando alimentadas em um monitor

RGB, essas trs imagens

combinam-se sobre a tela fosfrea para produzir uma imagem de cores compostas. Assim,
o uso do modelo

RGB

para processamento de imagens faz sentido quando as imagens so

naturalmente expressas em termos de planos de trs cores. Alternativamente, a maioria


das cmeras coloridas usadas para aquisio de imagens digitais utilizam o formato

RGB,

o que por si s torna este modelo importante em processamento de imagens.

HSV
A matiz (componente
(componente
O espao

S)

HSV

intensidade

H) um atributo que descreve uma cor pura, enquanto a saturao

d uma medida do grau de diluio de uma cor pura por luz branca.

de cores deve sua utilidade a dois fatores principais: o componente de

desacoplado da informao de cor da imagem e os componentes de matiz

e saturao so intimamente relacionados a percepo humana de cores. Essas caracte-

CAPTULO 3.

AQUISIO E LOCALIZAO DA FACE

rsticas tornam o espao de cores

HSV

20

uma ferramenta ideal para o desenvolvimento de

algoritmos de processamento de imagens baseados em alguma das propriedades do sistema


visual humano.
Exemplos da utilizao do espao de cores

HSV

tm-se desde sistemas de inspeo

automtica de amadurecimento de frutas a sistemas para correspondncia de amostras


de cores ou para inspeo de qualidade de produtos coloridos. Nessas aplicaes, a chave
consiste em basear a operao do sistema sobre propriedades de cores na forma em que
uma pessoa usaria aquelas propriedades para desempenhar a tarefa em questo. A Figura
3.5 mostra a representao do espao de cores

HSV

em uma forma cnica,bem como a

localizao de suas componentes.

Figura 3.5: Espao de cores

HSV

como um objeto cnico [Wikipedia, 2005d].

YIQ
O espao de cores
mente,

YIQ

usado na transmisso comercial de televiso colorida. Basica-

YIQ uma recodicao de RGB para ecincia da transmisso e para manuteno

da compatibilidade com os padres monocromticos de televiso. De fato, o componente

Y do sistema YIQ fornece todas as informaes de vdeo necessrias para um aparelho de


televiso monocromtico.
O modelo

YIQ

foi projetado para tirar vantagem da maior sensibilidade da viso

humana a mudanas na luminncia do que as mudanas de matiz e saturao. Assim, o


padro

YIQ possui uma banda mais larga (ou mais bits no caso de imagens digitais) para

a componente

e possui uma banda mais estreita (ou menos bits no caso de imagens

digitais) para as componentes

Q.

Em [Pritchard, 1977, Smith, 1978] podem-se achar

maiores detalhes sobre essa importante propriedade.

CAPTULO 3.

21

AQUISIO E LOCALIZAO DA FACE

Figura 3.6: Sistema de coordenadas do espao de cores

YIQ

[Ribeiro, 2004].

Alm de ser um padro de aceite geral, a principal vantagem do espao

YIQ

processamento de imagens que a luminncia (Y) e a informao de cores (I e

Q)

em
so

desacopladas. Sabendo-se que a luminncia proporcional quantidade de luz percebida


pelo olho, a importncia desse desacoplamento que pode-se mexer na luminncia sem
alterar a cor da imagem.

YCbCr
O

YCbCr

um espao de cores utilizado em sistemas de televiso e vdeo.

componente de luminncia, ou seja, contm as informaes sobre os tons de cinza, no


entanto,

Cb e Cr so as componentes cromticas.

relativa a cor azul, ao passo que a componente

A componente

Cr

Cb contm a informao

contm a informao da cor vermelha

[Agostini et al., 2004].


O espao

YCbCr,

alm da sua aplicao televiso e ao vdeo, tambm empregado

por alguns formatos digitais de imagem, dos quais o mais importante o formato JFIF
(tambm, incorretamente, designado por JPEG) [Ribeiro, 2004]. A vantagem do emprego
deste modelo , tal como em televiso, a separao da cor em componentes de luminncia
e de crominncia.

Como a vista humana muito mais sensvel luminncia do que

crominncia, a informao sobre as componentes de crominncia de uma dada cor no


espao

YCbCr no necessita de uma gama de valores (e preciso) igual da sua luminncia.

Se as componentes

YCbCr

ocuparem originalmente 8 bits cada, possvel ento reduzir

CAPTULO 3.

22

AQUISIO E LOCALIZAO DA FACE

Figura 3.7: Sistema de coordenadas do espao de cores

YCbCr

[Ribeiro, 2004].

a representao das componentes de crominncia a apenas 2 bits, ou seja, um quarto


do espao inicialmente ocupado e a informao sobre uma cor passa a ocupar apenas 12
bits em vez dos 24 bits iniciais. Uma imagem pode assim ser reduzida a metade do seu
tamanho original. Esta tcnica designada por quantizao da cor.

3.2.2

Localizao pelos espaos de cores

A localizao de cores, utilizando o espao de cores

YIQ

YCbCr

YIQ, muita utilizada por sua carac-

terstica de independncia entre suas componentes. Em [Buhiyan et al., 2003], baseado


no conceito de que a cor da pele tende a se aglomerar numa regio do espao de cores,
um

threshold

sobre o espao

so ou no cor de pele.
lores de cada

pixel

YIQ

utilizado para selecionar, na imagem, quais

pixels

RGB,

os va-

Como a imagem adquirida no sistema de cores

devem ser convertidos para o espao

YIQ.

A transformao, segundo

[Gonzalez and Woods, 2000], dada pela Equao 3.1.

0.299 0.587
0.114
R
Y

I = 0.596 0.275 0.320 G


Q
0.212 0.523 0.311
B

(3.1)

CAPTULO 3.

23

AQUISIO E LOCALIZAO DA FACE

Com os valores no espao de cores

YIQ,

segundo a condio abaixo, pode-se binarizar a

imagem.

e
SE (0.234 < Y < 0.781) E (0.078 < I < 0.195) EN T AO
P RET O
e
SEN AO
BRAN CO
Aps a limiarizao binarizada dos

pixels,

tem-se na cor preta as reas da imagem onde

possivelmente seja uma face, e em branco o restante da imagem. O algoritmo de deteco


de objetos (Seo 3.2.4) utilizado para manter na imagem somente o maior objeto preto,
retirando os buracos contidos neste objeto.
Outro espao de cores que apresenta a propriedade de independncia entre suas componentes o

YCbCr.

Sendo conhecido como um mtodo rpido, genrico e robusto para

localizao de faces, as distribuies cromticas de cor de pele,


para localizar a face. Pelo espao de cores

YCbCr,

Cb

Cr,

so utilizadas

a distribuio de cor de pele sempre

tem valores que satisfazem o teste lgico abaixo, segundo [Sheng, 2003]. Em seu trabalho,

Sheng diz que esta caracterstica independente de raa humana e cor de pele.

Entretanto,

esta propriedade somente pode ser aplicada a cabelos escuros.

e
SE (0.301 < Cb < 0.496) E (0.520 < Cr < 0.676) EN T AO
P RET O
e
SEN AO
BRAN CO
Para a aplicao do mtodo de localizao proposto por [Sheng, 2003], preciso converter
a cor do

pixel, do espao de cores RGB, para o espao de cores YCbCr.

Tal transformao

dada pela equao 3.2.

Y
0.301
0.586
0.113


Cb = 0.172 0.340 0.512


Cr
0.512 0.430 0.082
Com o valor de cada

pixel

no espao de cores

R
0

G + 0.500

B
0.500

YCbCr,

(3.2)

pode-se limiarizar o que cor de

pele e o que no cor de pele, atravs da condio denida por [Sheng, 2003]. Valores
de

pixel

que estiverem dentro do limiar, passam a ser pretos na imagem. Valores que no

estiverem dentro do limiar, passam a ser brancos na imagem.

CAPTULO 3.

24

AQUISIO E LOCALIZAO DA FACE

Aps, a limiarizao binarizada dos

pixels,

tem-se na cor preta as reas da imagem

onde possivelmente estar a face e em branco o restante da imagem.

O algoritmo de

deteco de objetos (Seo 3.2.4) utilizado para manter na imagem somente o maior
objeto preto, bem como retirar os buracos existentes neste objeto.
Em nosso trabalho, optou-se por utilizar um mtodo que une os dois espaos de cores
(YIQ e

YCbCr).

Para cada

pixel

da imagem, se verica se ele est dentro de algum dos

intervalos denidos. Se estiver, este

pixel localizado como um ponto da face (cor de pele),

caso contrrio descartado. Um mtodo similar foi utilizado em [Singh et al., 2003]. Alm
disso, o mtodo de deteco de objetos aplicado para segmentar da regio da face.

3.2.3

Localizao por mdias migratrias

Este mtodo de localizao baseia-se na caracterstica de cromaticidade das cores dos

pixels.

Utiliza a informao de que as componentes

tencentes pele humana, do espao de cores

HSV,

(matiz) de todos os

pixels

per-

so iguais ou muito prximas. Isso

pode ser comprovado pela anlise do cone de cores da Figura 3.5. Se seccionar-se o cone
perpendicularmente ao seu eixo, se obter uma circunferncia. Nos pontos que formam
esta circunferncia esto representados os valores da componente

H.

Como cada imagem (frame) adquirida pela cmera est representada no espao de
cores

RGB,

transforma-se cada pixel do espao de cores

RGB

para o espao de cores

HSV, pelas equaes seguintes:

(
H = cos

1
2

[(R G) + (R B)]

(3.3)

[(R G)2 + (R B)(G B)] 2

S =1

3
[min(R, G, B)]
R+G+B

(3.4)

1
V = (R + G + B)
3
Na anlise do cone de cores do espao

(3.5)

HSV, nota-se que medida que se desloca para baixo

(diminuindo a componente de luminncia

V),

a circunferncia gerada pela seco, citada

anteriormente, diminui. Por esse fato, conclui-se que, quanto menor for a circunferncia,
mais difcil ser a distino das cores. Todavia, se a luminncia muita alta,

i.e.,

se o

CAPTULO 3.

pixel
de

25

AQUISIO E LOCALIZAO DA FACE

muito claro, a distino entre as cores tambm ca complicada. Portanto, valores

pixel

com

muito baixos e muito altos so descartados, visto que, quando o

pequeno, as cores so todas escuras (prximas a preto) e, quando o

grande, as cores

so todas claras (prximas a branco), dicultando a deteco da matiz. O limiar que se


utiliza para desconsiderar os valores de
valores grandes de

V,

V pequenos foi

de 50 (na escala de 0 a 255). Para

considere-se o limiar de 230 (na escala de 0 a 255).

Outra anlise que deve ser levada em considerao em relao a componente de saturao

S.

Quando se considerar as circunferncias com seus menores raios, nota-se que

a saturao impede a distino entre as cores. Portanto, valores com


tambm so descartados, pois quando o

muito pequenos

pequeno, as cores so pouco saturadas (acin-

zentadas) e a matiz no poder ser distinguida. O limiar que utiliza-se para desconsiderar
os valores de

pequenos foi de 30 (na escala de 0 a 255).

O rudo gerado pelos

pixels

que foram desconsiderados ser tratado quando se aplicar

o mtodo de ajuste por uma elipse e o mtodo de deteco de objeto.


A idia de aplicar um mtodo de agrupamento de cores, para a localizao da face,
surgiu da anlise sobre imagens de face. Notou-se que as imagens possuam trs grandes
grupos de cores (fundo, cabelo e face) e que, a partir dessas caractersticas, pode-se
implementar um algoritmo que agrupe os

pixels

por sua semelhana na componente

H.

O algoritmo abaixo mostra o funcionamento deste mtodo:

1. Sorteiam-se trs valores iniciais, que representaro cada uma das mdias dos trs
grupos de cor de

2. Para cada

pixel

pixel.

da imagem, calcula-se a distncia

das mdias de cada um dos trs grupos.

entre seu valor de

pixel

e os valores

far parte do grupo em que a

distncia for menor.

3. Calcula-se a nova mdia de cada grupo, somando todos os valores de


pertencentes ao grupo e dividindo pelo nmero de

pixels

H de cada pixel

pertencentes ao grupo.

4. Se a mdia de todos os grupos no variou com relao ao passo anterior, o processo


de iterao pra, seno volta ao passo 2.

3 Como

a representao geomtrica da componente H no cone uma circunferncia, faz-se necessrio

o clculo da distncia nos dois sentidos; a menor entre elas considerada.

CAPTULO 3.

26

AQUISIO E LOCALIZAO DA FACE

5. Ao nal do processo, cada

pixel

recebe o valor de

correspondente a mdia do

grupo ao qual ele faz parte.

Com esse mtodo conseguiu-se dividir a imagem em trs grandes grupos de cor, como
mostra a Figura 3.8. Porm, no se utilizar este mtodo para nossa aplicao, pelo fato
de ser um processo lento, apresentando resultados semelhantes ao do mtodo anterior
(Seo 3.2.2).

Figura 3.8: Imagem antes da aplicao do algoritmo de mdias migratrias ( esquerda).


Imagem aps a aplicao do algoritmo de mdias migratorias ( direita).

3.2.4

Deteco de Objetos

Como o mtodo que gera os pontos pertencentes face (cor de pele) sensvel as condies
de iluminao (seo 3.2.2), surge a necessidade de eliminar pontos que foram localizados
ocasionalmente, mas que no fazem parte da pele humana. Esse rudo pode ser por um
fundo complexo ou por objetos que possuem uma cor semelhante a da face. Para descartar
o rudo gerado pela localizao de cor de pele (Figura 3.9), utiliza-se um algoritmo que
detecta todos os objetos conexos da imagem.
Baseado no trabalho de [Feris et al., 2000], foi aplicada uma operao morfolgica de
fechamento sobre a imagem para possibilitar a juno de reas da face que possam estar
separadas por algum motivo. Essa tcnica se mostrou interessante para casos em que o
modelo possui barba, visto que consegue em alguns casos unicar as duas regies denidas
pela barba. A Figura 3.10 mostra um exemplo do efeito resultante do fechamento aplicado
a imagem.

CAPTULO 3.

27

AQUISIO E LOCALIZAO DA FACE

Figura 3.9: Imagem original da face ( esquerda). Os pequenos objetos brancos dentro
dos objetos pretos so os rudos gerados pela localizao da cor de pele ( direita).

Figura 3.10: Localizao da cor da pele ( esquerda) e aplicao do fechamento morfolgico imagem ( direita).

Para detectar objetos dentro da imagem, foi desenvolvido um algoritmo que funciona
da seguinte maneira:

Para cada

Analisa-se

pixel
4

os

[i, j] da imagem de dimenses w x h, faz-se:

pixels

[i+1, j] ( direita), [i, j+1] (a baixo) e [i+1, j+1] na diagonal

direita para baixo; porm, s considera-se os que possurem a mesma cor do

pixel

[i, j].

Se algum desses

pixels

j zer parte de algum objeto, o

mesmo objeto; caso nenhum

pixel

pixel

[i, j] far parte desse

vizinho faa parte de um objeto, todos eles rece-

bero um novo objeto.

4A

anlise dos pixels que esto na borda da imagem deve ser tratada como uma exceo. Caso isso

no seja feito, pode-se acessar um pixel que esteja fora da imagem, o que provocar um erro.

CAPTULO 3.

28

AQUISIO E LOCALIZAO DA FACE

Pode acontecer de quando ocorrer a anlise acima, detectar-se a unio de dois objetos
at ento distintos. Quando isso ocorrer, deve-se torn-los um nico objeto.

Este mtodo detecta tanto os objetos pretos (gerados pelos mtodos de localizao de
cor de pele), quanto os objetos brancos (formados pelos

pixels que no fazem parte da cor

da pele).
A ordem, descrita abaixo, de deteco de tais objetos tem que ser seguida, caso contrrio o resultado nal no ca o esperado.

1. Achar os objetos brancos da imagem.

2. Com exceo do maior objeto branco , todos os outros devem sem pintados de
preto (retirar os buracos da imagem).

3. Achar os objetos pretos da imagem.

4. Manter na imagem apenas o objeto preto com maior nmero de

pixels conexos.

Este

objeto considerado, por denio, como sendo a melhor representao da face. Em


[Sirohey, 1993] esta denio tambm considerada.

Figura 3.11: Deteco de cor de pele ( esquerda). Em destaque, o objeto detectado como
fundo da imagem ( direita).

Baseado na heurstica de que o maior objeto branco da imagem o fundo, somente o


maior objeto branco mantido na imagem. Todos os outros objetos brancos (buracos) so
pintados de preto. A gura 3.11 mostra, em destaque, o que foi detectado como fundo.

5 Como

a aquisio dos vdeos feita em um ambiente controlado, por denio, considera-se o maior

objeto branco da imagem como o fundo.

CAPTULO 3.

AQUISIO E LOCALIZAO DA FACE

29

J na gura 3.12, esto ressaltados os buracos da imagem. Para o mtodo de ajuste de


uma elipse pelos menores quadrados (Seo 3.2.5), a remoo dos buracos da imagem
de fundamental importncia para melhores resultados.

Figura 3.12: Deteco de cor de pele ( esquerda). Em destaque, os objetos detectados


como buracos da imagem ( direita).

Aps a deteco dos objetos brancos, partiu-se para a localizao dos objetos pretos
da imagem. Considera-se que o maior objeto preto encontrado na imagem a face. A
gura 3.13 mostra a segmentao do objeto detectado como face na imagem.

Figura 3.13: Imagem original da face ( esquerda). Objeto detectado como face na imagem
( direita).

Uma vez que a face j est localizada, todas as operaes feitas sobre a imagem so
limitadas por um retngulo (Figura 3.13) que abrange o objeto detectado pelo mtodo de
deteco de objetos.

CAPTULO 3.

3.2.5

AQUISIO E LOCALIZAO DA FACE

30

Mtodo de ajuste de uma elipse pelos menores quadrados


(Ellipse-Specic)

A limiarizao binarizada dos pontos que representam a cor da pele (Sees 3.2.2, e
3.2.3), e a deteco do maior objeto representado por esses pontos (Seo 3.2.4), so
mtodos imprecisos, pois podem no identicar com exatido a face, como mostra a
Figura 3.13.

Segundo [Hadid et al., 2002], todas as faces podem ser aproximadas por

uma forma elptica. Portanto, para minimizar o erro, adotou-se a tcnica de aproximar
uma elipse face.

Figura 3.14: Imagem original da face ( esquerda). Elipse aplicada ao contorno externo
( direita).

Para este propsito, usa-se o algoritmo de ajuste de uma elipse pelos menores quadrados (Ellipse-Specic) proposto por [Pilu et al., 1996]. Este algoritmo considera uma nica
elipse que se ajusta a uma nuvem de pontos de face. Para a gerao da nuvem de pontos,
utiliza-se o maior objeto (Seo 3.2.4) que representa a face. Porm no utiliza-se todo
o objeto, mas seus contornos. Os contornos so gerados pelo algoritmo de Canny (Seo
4.2.1). importante ressaltar que s utiliza-se os contornos externos deste objeto (Figura
3.14), pois se considerar-se os contornos internos (contornos dos buracos), a elipse tender
a estes pontos (Figura 3.15). E portanto, seus dimetros iro diminuir. Essa diminuio
da elipse no satisfatria ao problema que foi posta prova.
Outra informao importante que a elipse pode fornecer o quo inclinada est a
face. Esse dado pode ser adquirido calculando-se o menor e o maior dimetros da elipse.
Com estes dois valores, pode-se calcular o ngulo de inclinao da elipse em relao ao
eixo vertical da imagem (Figura 3.16).

Tendo o ngulo de inclinao da face, pode-se

CAPTULO 3.

31

AQUISIO E LOCALIZAO DA FACE

Figura 3.15: Imagem original da face ( esquerda). Elipse aplicada aos contornos interno
e externo ( direita).

normaliz-la atravs da rotao de seus

Figura 3.16:

pixels.

Elipse aplicada ao contorno externo ( esquerda).

Clculo do ngulo de

inclinao da face ( direita).

Em [Pilu et al., 1996], apresentado no captulo 3, est demonstrado como funciona


o mtodo, e toda sua fundamentao matemtica, bem como, no captulo 4 esto seus
testes, que demonstram sua satisfatoriedade para tal aplicao.
Contudo, aps a implementao desse mtodo e depois de vrios testes, percebeu-se
que a elipse no estava retornando uma informao apropriada para nosso problema, no
pelo fato do mtodo em si no ser capaz, mas porque nosso mtodo de localizao da face
(Sees 3.2.2), no retorna exatamente todos os

pixels

da face, o que compromete muito

o ajuste da elipse.
Para resolver o problema da elipse no estar retornando uma forma aproximada da
face, optou-se por desenvolver uma tcnica de unio entre o objeto detectado como face e
a primeira elipse ajustada a face. Este mtodo faz uma operao de

OR

entre a imagem

que contm o objeto face, e uma imagem criada com uma forma elptica. Aps a unio das

CAPTULO 3.

AQUISIO E LOCALIZAO DA FACE

32

imagens, recalcula-se os contornos desse novo objeto, a m de gerar uma nuvem de pontos
mais dispersa e com uma forma mais semelhante s linhas da face. A idia de se fazer
essa operao parte do princpio que com a unio, os contornos desse novo objeto sero
mais condizentes com o da face original. A Figura 3.17 mostra o processo de unio, bem
como o resultado nal da aplicao do mtodo de ajuste de uma elipse (Ellipse-Specic).

Figura 3.17: Objeto detectado como face, pela cor de pele, e com a aplicao do algoritmo
de deteco de objetos (em cima, esquerda).

Objeto criado a partir do contorno da

primeira aplicao da elipse (em cima, direita). Objeto resultante da operao de

OR

entre os dois objetos de cima (em baixo, esquerda). Elipse gerada a partir dos contornos
do novo objeto (em baixo, direita).

3.2.6

Simetria

At este momento, na etapa de localizao, foi identicada a regio correspondente a face


atravs do mtodo de deteco de objetos apresentado na Seo 3.2.4. Essa informao
dene a regio onde a face se encontra dentro da imagem. No entanto, para que se possa
seguir adiante no processo de segmentao das caractersticas, preciso garantir que esta
regio esteja devidamente normalizada.
Os resultados obtidos atravs do mtodo de ajuste de elipse descrito na Seo 3.2.5

CAPTULO 3.

33

AQUISIO E LOCALIZAO DA FACE

deixam explcita a possvel rotao em profundidade que a face pode apresentar. Essa rotao no eixo da profundidade tradicional do comportamento natural humano, inclusive
sendo foco de pesquisa sobre o realismo de animaes faciais em [Watt and Watt, 1992]
e [Parke and Waters, 1996]. Infelizmente, o clculo apresentado na tcnica da elipse gera
apenas uma resposta aproximada e imprecisa do ngulo correspondente rotao da face.
A m de superar esse contratempo e garantir a obteno de informaes sucientes
para a etapa de normalizao, novas formas de localizao da face e suas caractersticas
foram pesquisadas. Considerando a ideologia descrita na Seo 1.2, as tcnicas que mais

se aplicavam ao curso que o trabalho se props a seguir foram baseadas em Biometria .


O estudo sobre a simetria facial tem sido uma das pesquisas mais ativas em trabalhos
sobre processamento de faces humanas [Ming et al., 2000]. Essa alternativa se mostrou
muito interessante, visto que nossa etapa de localizao j possua a regio da face, um
dos pr-requisitos para a aplicao do mtodo. A avaliao da regio da face realizada
em funo da anlise da caracterstica estatstica de dependncia dos nveis de cinza. Na
maioria das regies da face, dado um eixo de simetria correto, a diferena entre os nveis de
cinza entre
a mesma

pixels

pixel

eqidistantes bilateralmente do eixo deve se manter aproximadamente

pixel

[Chen et al., 2005].

Nossa abordagem baseia-se no trabalho de [Chen et al., 2005], onde dois indicadores
so utilizados para identicar o melhor eixo de simetria.

diferena em nveis de cinza (GLDH)

Para tal, um histograma da

calculado para as possveis posies do eixo de

simetria dentro da regio da face. A medida que o eixo iterativo se afasta do verdadeiro
eixo de simetria, o GLDH exibe uma alta varincia.

Desta forma, a varincia que o

primeiro indicador utilizado para deteco do eixo de simetria denida como:

Ph
i2
onde

di )2
=
h1

j=1 (di,j

a altura da regio do rosto,

di

Ph

) hdi
h1

j=1 (di,j

o GLDH do eixo

em questo e

(3.6)

di

a mdia do

GLDH do eixo.

6 Biometria

o estudo estatstico das caractersticas fsicas ou comportamentais dos seres vivos. Os

sistemas chamados biomtricos podem basear seu funcionamento em caractersticas de diversas partes do
corpo humano, por exemplo: os olhos, a palma da mo, as digitais do dedo, a retina ou ris dos olhos.
[Wikipedia, 2005b]
7 Sigla de Gray Level Dierence Histogram

CAPTULO 3.

Figura 3.18:

34

AQUISIO E LOCALIZAO DA FACE

Varincia e Acerto para cada eixo de simetria ( esquerda).

Valores de

Acerto ( direita). Adaptada de [Chen et al., 2005].

O segundo critrio que [Chen et al., 2005] utiliza para avaliar qual o melhor eixo de
simetria denominado MEAN. MEAN um quanticador de acerto para um determinado
eixo. Assim, a denio do eixo feita sobre a localizao daquele que possui a maior
taxa de acerto, ou seja, o que acumular maior nmero de MEANs. Para isso, utiliza-se
um limiar (threshold) para denir o grau de semelhana entre os pares de
limiar aplicado sobre a diferena entre os tons de cinza dos dois

pixels

pixels.

Esse

analisados. A

Figura 3.18 apresenta os grcos dos dois indicadores denidos, alm de sua combinao
denida como

Yi =
e denominada como

Y,

Y score,

M EANi
i2

(3.7)

que a utilizada em nossa implementao. Quanto maior o

maior o grau de simetria encontrado.

Figura 3.19: Sugesto de angulao no mtodo da Elipse ( esquerda). Eixo de simetria


detectado ( direita).

CAPTULO 3.

AQUISIO E LOCALIZAO DA FACE

35

Com relao rotao da imagem, o trabalho de [Chen et al., 2005] vincula a soluo
de aplicar a busca pela melhor simetria nas diversas rotaes de uma imagem dentro de um

intervalo denido como, por exemplo, [15 ,

15 ].

A abordagem apresentada nesse tra-

balho um pouco diferenciada, uma vez que o intervalo no pr-denido estaticamente.


Para tal, faz-se valer a informao adquirida no mtodo da elipse aplicado na Seo 3.2.5.
Apesar de impreciso, este mtodo retorna uma boa referncia sobre a angulao da face
na imagem. Dessa forma, essa informao pode ser utilizada para especicar um conjunto
de ngulos a serem testados dentro de seu entorno. Essa alternativa mostrou-se bastante
eciente, uma vez que reduziu signicativamente o espao de busca e por sua vez o custo
computacional, alm de ampliar o intervalo de rotaes aceitveis da face. No entanto, um
entorno de busca considervel deve ser adotado para superar uma possvel diferena entre
a sugesto de angulao passada da elipse e o eixo de simetria real. A Figura 3.19 mostra
um exemplo de como a angulao sugerida pela elipse auxilia no clculo da simetria.

Captulo 4
Normalizao e Segmentao das
Caractersticas Faciais
At o momento foram apresentadas as etapas responsveis pela localizao de uma face
e obteno de algumas informaes atravs de processamento de imagens. Neste captulo
sero demonstradas as solues implementadas para resolver duas questes fundamentais
dentro do processo de extrao de caractersticas: a normalizao e a segmentao.

4.1 Normalizao
Conforme foi comentado na Seo 2.2.5, o processo de normalizao responsvel pelo
realce e restaurao de imagens. Nessa seo, sero apresentados dois problemas, normalizados ao longo da implementao do sistema de extrao de caractersticas. Inicialmente,
ser tratado o problema das rotaes naturais da face, seguido da ltragem necessria
para a reduo de rudos inerente a captura de quadros de vdeo.

4.1.1

Rotao

Para a maioria das tcnicas de segmentao e extrao de caractersticas faciais, a face


analisada deve se encontrar na posio vertical, no podendo apresentar rotao sobre nenhum eixo cartesiano. No entanto, natural que mesmo que involuntariamente o modelo
humano analisado realize rotaes sobre o eixo ortogonal a imagem frontal (profundidade).

36

CAPTULO 4.

NORMALIZAO E SEGMENTAO

37

Assim, aps a localizao da regio da imagem que contm a face, preciso buscar informaes para que se possa tentar corrigir possveis rotaes indesejadas que inviabilizem
o resto do processo.
Pelo fato deste trabalho considerar duas vistas ortogonais da imagem (vista frontal
e perl), as nicas rotaes que podem ser compensadas pelo sistema proposto so as
realizadas sobre o eixo perpendicular a imagem frontal (profundidade), pois estas no
comprometem signicativamente a imagem frontal, podendo ser ento normalizada. Para
este trabalho, a vista frontal tem um papel mais relevante extrao de caractersticas
do que a vista de perl, podendo as informaes de profundidade serem interpoladas
entre cada quadro do vdeo analisado. As rotaes sobre os demais eixos so prejudiciais analise porque podem ocultar caractersticas faciais necessrias da imagem frontal,
dicultando ou at mesmo inviabilizando o processo de normalizao.
Para que se possa rotacionar as imagens obtidas preciso encontrar alguma informao
dentro da regio localizada e/ou detectada como face, permitindo identicar o ngulo de
inclinao da mesma. Muitos trabalhos, como o de [Rozinaj and Mistral, 2003], utilizam
os olhos como referencial para realizar a normalizao. Isso implica obrigatoriamente na
existncia de uma etapa de deteco, onde a localizao especca dos olhos seja obtida,
alm de implicitamente impor possveis restries ao modelo analisado.

Figura 4.1: Eixo de simetria detectado ( esquerda) e a imagem frontal rotacionada (


direita)

A utilizao do eixo de simetria calculado na etapa de localizao, para a denio


do ngulo de inclinao da face, foi identicada com a melhor opo para este processo
de normalizao. A Figura 4.1 expe o resultado da normalizao referente rotao do
eixo de simetria.

CAPTULO 4.

4.1.2

NORMALIZAO E SEGMENTAO

38

Rudo

Durante a anlise feita sobre questes relacionadas aquisio das imagens atravs de
cmeras de vdeo (Seo 3.1), ca clara a necessidade da realizao de tratamento para
a reduo do rudo contido nas imagens adquiridas. A Figura 4.2 expe o resultado da
normalizao referente ao rudo encontrado nas imagens. Para corrigir esse problema
utilizada uma convoluo cujo

kernel 3x3 aplica a mdia da vizinhana-9 sobre a imagem.

Figura 4.2: Imagem original com rudo ( esquerda) e a imagem aps aplicada a convoluo de mdia ( direita)

4.2 Segmentao
Uma vez normalizada a imagem e localizada a regio que compreende a face, a prxima
tarefa a ser realizada a de segmentar as caractersticas faciais internas ela. A complexidade da execuo automtica dessa etapa j foi brevemente discutida na Seo 2.2.6.
Neste ponto, deve-se ressaltar que a informao sobre o eixo de simetria da face j
conhecida e que pode ser til as tcnicas aqui empregadas para delimitar as regies que
contm cada elemento da face. As subsees seguintes relataro as tcnicas empregadas
nesta etapa.

4.2.1

Contornos

Segundo [Seara, 1998], desde que uma borda denida por uma mudana no nvel de
cinza, quando ocorre uma descontinuidade na intensidade, ou quando o gradiente da
imagem tem uma variao abrupta, um operador que sensvel a estas mudanas operar

CAPTULO 4.

39

NORMALIZAO E SEGMENTAO

como um detector de bordas.

Um operador de derivada faz exatamente esta funo.

Uma interpretao de uma derivada seria a taxa de mudana de uma funo, e a taxa de
mudana dos nveis de cinza em uma imagem maior perto das bordas e menor em reas
constantes. Ao pegarem-se os valores da intensidade da imagem e achar-se os pontos onde
a derivada um ponto de mximo, ter-se- marcado suas bordas. Dado que as imagens
so em duas dimenses, importante considerar mudanas nos nveis de cinza em muitas
direes.
Dentre as informaes que podem ser extradas de uma imagem, a deteco de bordas
a que mais se destaca na tentativa de extrair caractersticas faciais, apesar de outros
indicadores como cor, intensidade, picos e vales, tambm terem sua inegvel utilidade. Na
implementao deste trabalho, foram utilizadas duas tcnicas de extrao de contornos,
ambas baseadas na anlise dos gradientes da regio localizada como face.

Sobel
Segundo [Gonzalez and Woods, 2000] a maioria das tcnicas de deteco de borda
baseiam-se na computao de um operador local diferencial.

Os operadores de Sobel

possuem a vantagem de fornecer, a um s tempo, os efeitos de diferenciao e de suavizao. Uma vez que a derivao aumenta o rudo, o efeito de suavizao uma caracterstica
particularmente atrativa dos operadores de Sobel.
Uma vez que o procedimento tenha sido completado para todas as posies possveis,
aplicando-se a convoluo da mscara, o resultado uma imagem gradiente do mesmo
tamanho que a original. Abaixo as mscaras freqentemente denominadas operadores de
Sobel.

1 2 1
1


0
0
0 e 2


1
2
1
1

0
0
0

A aplicao da deteco de contorno utilizando os operadores de Sobel foi necessria, dentro deste trabalho, como passo anterior ao mtodo de projeo integral que ser
detalhado na Seo 4.2.3.

CAPTULO 4.

40

NORMALIZAO E SEGMENTAO

Algoritmo Canny
Na criao do algoritmo Canny [Canny, 1986], deniu-se um conjunto de requisitos que
um detector de bordas deveria satisfazer. So eles:

Taxa de erro:

o detector de bordas deveria detectar e achar somente bordas,

nenhuma borda deveria faltar;

Localizao:

a distncia entre os pixels de borda encontradas pelo detector de

bordas e a borda atual deveriam ser o menor possvel;

Resposta:

o detector de bordas no deveria identicar mltiplos pixels de borda

onde somente exista um nico pixel.


Para a aplicao do algoritmo Canny preciso seguir os seguintes passos:
1. Aplicao de um ltro de suavizao Gaussiano;

2. Clculo do gradiente (magnitude e orientao) sobre a imagem suavizada;

3. Aplicao do mtodo de

Non-maximal Suppression:

percorre o contorno utilizando

sua direo e elimina pontos que no so contornos verdadeiros;

4. Aplicao do mtodo de

Hysterisis Thresholding:

aplica dois nveis de limiarizao,

um superior e outro inferior.


A deteco de contorno utilizando o algoritmo Canny foi empregada principalmente
para a segmentao do perl.

Para isso, este foi executado sobre a extrao do fundo

realizada na etapa que ser descrita na Seo 4.2.4.

4.2.2

Mtricas

Ao longo do processo de segmentao contido neste trabalho, em vrios momentos surgiu


a necessidade de adotar mtricas que auxiliassem na restrio do espao de busca pelas
caractersticas. No caso dos olhos e sobrancelhas, por exemplo, sua regio de busca foi
restringida a parte superior da rea localizada como face. Do mesmo modo, foi utilizado
mtricas no auxlio localizao do nariz e extrao dos pontos de perl. Alguns trabalhos encontrados na literatura consideram o uso de mtricas uma ferramenta til para a
segmentao da face. O trabalho de [Gu et al., 2003] sugere esta possibilidade.

CAPTULO 4.

4.2.3

41

NORMALIZAO E SEGMENTAO

Projees Integrais

Trabalhos

como

[Gu et al., 2003,

Rozinaj and Mistral, 2003,

Lanzarotti et al., 2002,

Shan et al., 2000] utilizam projees integrais sobre contornos, cores e intensidades da
imagem para segmentar cada uma das caractersticas faciais.

Essa tcnica mostrou-se

bastante interessante pois no apresenta restries quanto as deformaes causadas pelas


expresses faciais.
O primeiro passo para aplicao da tcnica de projees integrais escolher qual informao ser integrada e projetada sobre uma determinada direo. No caso especco deste
trabalho, foram utilizados operadores de Sobel para calcular os gradientes nos sentidos
de interesse para realizar a projeo integral e localizar as caractersticas, como mostra a
Figura 4.3.

Figura 4.3: Exemplo de segmentao utilizando projees integrais

4.2.4

Segmentao de fundo

Como o objetivo do trabalho extrair os pontos da face, para que esta seja, possivelmente,
animada em um modelo tridimensional, no basta somente encontrar os pontos de uma
imagem bidimensional. Surge a necessidade da extrao da informao de profundidade
(coordenada

Z)

de cada ponto da face analisada.

Para tal extrao, utiliza-se uma tcnica chamada de cromaqui na imagem de perl.
O cromaqui uma tcnica que consiste em lmar uma cena em que o cenrio de fundo
totalmente pintado de uma s cor, a qual depois ser removida e substituda por uma

CAPTULO 4.

42

NORMALIZAO E SEGMENTAO

imagem, animao grca ou outro vdeo

[Battaiola et al., 2001]. No caso, no se precisa

colocar outro fundo, mas sim segmentar completamente o fundo azul utilizado. A cor azul
foi escolhida pela sua grande diferena com a cor da pele humana. Em [Shan et al., 2000],
utilizou-se um fundo azul para segmentao do perl da face.
Como abordagem inicial para excluir o fundo azul, utiliza-se a anlise da componente
matiz (H) no espao de cores

HSV.

O processo de segmentao d-se sob uma imagem

de perl da face, cujo seu fundo um pano azul. Um

threshold

foi denido, na condio

abaixo, experimentalmente, para separar o fundo azul da face. Esse processo de separao,
s feito do lado onde o nariz da face est (o outro lado no serve como informao
relevante para nossa aplicao).

(120 < H < 200)


Como o equipamento utilizado para a captura das imagens no retorna uma imagem com
qualidade, precisa-se, antes de mais nada, aplicar na imagem original uma convoluo,
expressa pela matriz 4.1.

2
115

4
115

5
115

4
115

2
115

4
115

9
115

12
115

9
115

4
115

5
115

12
115

15
115

12
115

5
115

4
115

9
115

12
115

9
115

4
115

2
115

4
115

5
115

4
115

2
115

(4.1)

O algorimo abaixo descreve, de maneira resumida, o mtodo de segmentao do fundo


azul.

1. Tendo uma imagem auxiliar toda preta.

2. Analisa-se a linha da imagem a procura de um

pixel

o limiar denido. Caso seja verdadeiro, pinta-se o

que no seja verdadeiro para

pixel

de branco e incrementa a

coluna.

3. Quando encontrar um

pixel

diferente de azul o processo pra e pula para a prxima

linha (passo 1).

1 Tradicionalmente,

a tcnica utilizava equipamentos pticos especiais para a eliminao do fundo.

Atualmente, placas grcas permitem a captura do vdeo por um computador e a sua edio atravs de
programas especcos que possibilitam tambm a realizao do cromaqui.

CAPTULO 4.

NORMALIZAO E SEGMENTAO

43

4. Ao nal de todas as linhas, ter-se- em branco, o fundo, e o resto da imagem auxiliar


em preto.

Porm, ao longo dos testes que se realizou, viu-se que a informao de matiz incerta
para baixas e altas luminncia e para baixas saturaes (mesmo problema da Seo 3.2.3).
Portando, utiliza-se, como informao adicional, os contornos gerados pelo algoritmo de
Canny (Seo 4.2.1). Contudo, a rea que se considera para a interferncia dos contornos
somente os limites superior e inferior da regio segmentada como cor de pele da imagem
de perl da face.
O novo mtodo utiliza o mesmo algoritmo apresentado, porm reformula a condio
anterior para usar a informao do contorno. Para isso, aplica-se o algoritmo de Canny
na imagem de perl, o que resultar nos contornos da mesma. Agora, alm da informao
da matiz, de o

pixel

ser azul, tambm analisa-se a existncia de um contorno na imagem

correspondente aos contornos gerados pelo Canny. Isso resulta em um perl muito mais
denido e dedigno da imagem original.

A gura 4.4 mostra o comparativo dos dois

mtodos.
Aps ressaltar-se o fundo com a cor branca, aplica-se o algoritmo de Canny para gerar
a linha do perl da face. A gura 4.5 mostra a linha de perl gerada aps a aplicao do
mtodo de segmentao do fundo.
Quanto maior for a preciso ao segmentar-se o fundo, maior ser a denio da linha
do perl. Para a seo 5.2, a segmentao do fundo fundamental para seu sucesso na
extrao dos pontos caractersticos.

CAPTULO 4.

NORMALIZAO E SEGMENTAO

44

Figura 4.4: Imagem da face original (cima, esquerda). Deteco dos contornos gerados
pelo algoritmo de Canny (cima, direita). Segmentao do fundo utilizando somente a
informao da componente matiz (baixo, esquerda). Segmentao do fundo utilizando
a componente matiz e a imagem dos contornos (baixo, direita).

Figura 4.5: Imagem com o fundo em branco ( esquerda). Linha de perl gerada pelo
algortimo Canny ( direita).

Captulo 5
Extrao das Caractersticas Faciais
5.1 Extrao dos pontos caractersticos em imagens
frontais
Uma vez segmentada a regio dos olhos e sombrancelhas atravs das projees integrais
dos gradientes, a etapa de extrao destina-se a renar a busca internamente as regies
delimitadas. Novas projees podem ser aplicadas, alm de outras tcnicas que utilizem,
por exemplo, contornos ativos e padres deformveis. Por uma restrio de tempo durante
a implementao, at o momento atual, o projeto apenas dene os limites dessas regies
como sendo as coordenadas dos pontos caractersticos da face.
Para a extrao da ponta do nariz, percorre-se o eixo de simetria da face, da altura
inferior dos olhos para baixo.

O ponto mdio da regio (segmento) que tiver a maior

luminncia, dada pela componente

do espao de cores

HSV,

a ponta do nariz. Em

[Shan et al., 2000], este mtodo utilizado, demonstrando bons resultados, pois a regio
de maior iluminao utilizado para a aquisio das imagens era frontal face.
Como se possu o ponto mdio horizontal dos olhos e a ponta do nariz, pode-se calcular
a distncia (como feito na parte de extrao das caractersticas na imagem de perl) entre
eles e correlacionar com a distncia calculada para estes mesmos pontos na extrao dos
pontos de perl.

Com isso, ter-se- um fator de multiplicao entre as duas imagens.

45

CAPTULO 5.

EXTRAO DAS CARACTERSTICAS FACIAIS

46

Para coloc-las em escala, basta multiplicar uma delas por este fator.

DOp Np = Op Np

DOf Nf = Of Nf

F AT OR =

DOp Np
DOf Nf

Na localizao dos pontos caractersticos da boca, a regio de busca estimada por


mtricas.
perl.

Essas medidas so calculadas a partir dos pontos extrados na imagem de

Uma vez restringidas as regies de busca pelos pontos caractersticos da boca,

pode-se aplicar em cada uma delas o mtodo de integrao.

Figura 5.1: Imagem original da face ( esquerda). Linhas que restringem as regies de
busca ( direita)

Contudo, na localizao dos pontos correspondentes aos lbios superior e inferior,


utiliza-se o mtodo de interseco entre a linha do eixo de simetria e os contornos gerados
(Seo 4.2.1), adaptado de [Zhang, 1997], na regio segmentada pelas mtricas. A estimao dos pontos candidatos a contorno do lbio consiste em duas partes: a deteco dos
contornos (utiliza-se o algoritmo de Canny) e a seleo dos candidatos a pontos labiais.
Este mtodo no obteve bons resultados at o momento, pois os contornos gerados pelo
algoritmo de Canny nem sempre geram informao sobre o eixo de simetria. Outra questo
a exibilidade nas expresses faciais permitidas ao modelo analisado. Estas deformaes
possibilitam a variao no nmero de contornos sobre o eixo, o que compromete este
mtodo de extrao. Por isso, optou-se por mudar a abordagem a ser utilizada na extrao
dos pontos caractersticos da boca para o mtodo que ser referenciado como uma proposta
futura, na Seo 7.2, deste trabalho.

CAPTULO 5.

EXTRAO DAS CARACTERSTICAS FACIAIS

47

5.2 Extrao dos pontos caractersticos do perl


Na seo 4.2.4 descreveu-se a tcnica utilizada de segmentao do fundo para extrao da
linha do perl da face. O presente mtodo depende integralmente do mtodo de extrao
da linha de perl. Quanto mais preciso for, maior ser a taxa de acerto desse mtodo.
Segundo [Shan et al., 2000], todos os pontos (pretos e vermelhos), exceto o ponto verde,
dados pela gura 5.2, so pontos fundamentais para o perl. Utilizando a imagem de perl,
se extrair somente os pontos vermelhos e o ponto verde inserido na nossa aplicao para
obter a informao do canto da boca. Em [Harmon and Hunt, 1978], so utilizados, na
extrao do perl, nove pontos. Em nosso trabalho extraem-se oito desses pontos e, por
necessidade, desloca-se o nono ponto para a regio entre boca e o queixo.

Figura 5.2: Pontos de perl (vermelho e verde) [Shan et al., 2000].

Para a anlise do perl, cria-se um vetor contendo o valor da coluna onde est o
primeiro

pixel

de cor branca.

Esse vetor conter os pontos de uma curva que dene o

perl da face. Toda a anlise para a extrao dos pontos caractersticos do perl feita
atravs desta curva.
Inicialmente, procura-se pela ponta do nariz, considerando que este o mximo global
desta curva e, portanto, o ponto mais esquerda, como mostra a Figura 5.3.
Aps encontrar-se a ponta do nariz, surge o desao de encontrar os demais pontos do
perl que, ao contrrio da ponta do nariz, no so to triviais de identicar. Partindo da
hiptese de que os mximos locais e mnimos locais so pontos de picos e vales do perl,
respectivamente, criou-se um mtodo que pudesse encontr-los de maneira seqencial.
Este mtodo funciona da seguinte maneira:

Do nariz pra baixo, procura-se por trs picos e trs vales, correspondentes ao ponto

CAPTULO 5.

EXTRAO DAS CARACTERSTICAS FACIAIS

48

Figura 5.3: Imagem original da face ( esquerda). Ponta do nariz extrada ( direita).

abaixo do nariz, ao lbio superior, ao canto da boca, ao lbio inferior, ao ponto


entre a boca e ao queixo, e o queixo.

Do nariz pra cima, procura-se por um pico e um vale, correspondentes ao meio dos
olhos e sobrancelha.

A busca por picos e vales foi implementada da seguinte maneira, considerando que a
face est virada para a esquerda (se a face estiver vira pra direita, troca-se pico por vales
e vice-versa, e maior por menor e vice-versa):

Para cada ponto j da curva de perl

Se o ponto anterior [j-1], for menor que o ponto atual [j], se est na iminncia de um
vale. Se nesse ponto houver uma eminncia anterior de pico, esta ir se conrmar.

Se o ponto anterior [j-1], for maior que o ponto atual [j], se est na iminncia de um
pico. Se nesse ponto houver uma eminncia anterior de vale, esta ir se conrmar.

Se o ponto anterior [j-1], for igual ao ponto atual [j], computa-se a tamanho desta
reta.

O problema deste mtodo que, se por uma impreciso do processo de segmentao


do fundo, o perl que ruidoso, tendo picos e vales em locais que no deveriam ser ou at
poder-se-ia no achar os pontos do perl. Isso tambm pode ocorrer se a imagem estiver
com uma qualidade ruim. Para resolver este problema, foi criado um novo mtodo que
ordena a busca pelos pontos, baseado na busca do ponto anterior.

Portanto, criam-se

CAPTULO 5.

49

EXTRAO DAS CARACTERSTICAS FACIAIS

regies de busca pelos pontos.

A busca pelos picos e vales feita da mesma maneira,

porm com uma preciso maior.


As regies de busca no podem ser impostas a regio da boca, pois esta contm pontos
que tem grande mobilidade (movimento de abrir e fechar a boca).
O mtodo implementado com uma ordem pr-estabelecida, denida para achar os
pontos do perl.
1. Procura-se pela ponta do nariz (ponto

N ),

da mesma maneira como relatado ante-

riormente.

2. A partir do ponto

N , para cima, procura-se o primeiro vale (ponto O), considerando

que na regio entre os olhos existe um vale. Calcula-se a distncia entre as linhas
dos pontos

(Equao 5.1), sendo usada como uma mtrica para determinar

as demais regies de busca por pontos. Se a remota possibilidade de no se encontrar o vale entre os olhos acontecer, seta-se como tal ponto o meio da maior reta

encontrada nessa busca.

DOp Np = Op Np
3. Com o clculo de

DOp Np ,

(5.1)

procura-se pelo primeiro vale abaixo do nariz (ponto

B ).

Essa busca feita dentro do intervalo dado pela equao 5.2. Caso no se encontre
um vale nesse intervalo, seta-se como o ponto

o incio (de cima pra baixo) da

maior reta encontrada nessa regio (essa reta tem que ter, no mnimo, 4
a reta for pequena (menos de 4

pixels),

o ponto

pixels).

Se

denido pela equao 5.3.

N <= B <= (N + 0, 6 DOp Np )

(5.2)

B = N + 0, 4 DOp Np

(5.3)

4. A seguir, parti-se para a busca do pico correspondente a sobrancelha (ponto

S ).

Essa busca feita dentro do intervalo dado pela equao 5.4. Caso no se encontre
um pico nesse intervalo, seta-se como o ponto

o incio (de baixo para cima) da

maior reta encontrada nessa regio.

O >= S >= (O 0, 5 DOp Np )


1A

(5.4)

maior reta a maior dentre as retas encontradas no item 4 da descrio da busca de picos e vales

feita acima.

CAPTULO 5.

50

EXTRAO DAS CARACTERSTICAS FACIAIS

5. O ltimo ponto xo a ser buscado o lbio superior (ponto

U ).

A busca do pico

correspondente ao lbio superior feita dentro do intervalo dado pela equao 5.5.
Caso no se encontre um pico nesse intervalo, seta-se como o ponto

o m (de

baixo pra cima) da maior reta encontrada nessa regio (essa reta tem que ter no
mnimo 3

pixels).

Se a reta for pequena (menos de 3

pixels),

o ponto

denido

pela equao 5.6.

S <= U <= (S + 0, 35 DOp Np )

(5.5)

U = S + 0, 3 DOp Np

(5.6)

6. Agora, os pontos abaixo do lbio superior podem ter uma mobilidade que no pode
ser estimada por mtricas. Por isso, procura-se, de maneira seqencial, at encontrar
dois picos e 2 vales, que correspondem ao canto da boca, lbio inferior, ponto entre
a boca e o queixo, e o queixo.

Figura 5.4: Exemplos de extrao dos pontos caractersticos de perl.

As constantes utilizadas nas equaes 5.2, 5.3, 5.2, 5.5 e 5.6, foram estimadas segundo as mtricas denidas por [Alattar and Rajala, 1999] e [Gu et al., 2003].

Em

[Alattar and Rajala, 1999], utilizou-se um modelo elptico de uma face com mtricas baseadas no tamanho do maior dimetro desta elipse. J em [Gu et al., 2003], citado um

CAPTULO 5.

EXTRAO DAS CARACTERSTICAS FACIAIS

51

mtodo muito comum para extrair as formas dos olhos, nariz, boca e queixo, pela distncia e escala entre estes rgos. No nosso trabalho, todas as mtricas so proporcionais
distncia entre a ponta do nariz e os olhos (DOp Np ). Em [Liposcak and Loncaric, 1999],
um mtodo semelhante, baseado em escalas, foi utilizado.
Para comprovar os bons resultados adquiridos na aplicao desse mtodo, apresenta-se
na Figura 5.4 alguns exemplos da extrao dos pontos, em faces distintas, com expresses
variadas.

Captulo 6
Aspectos de Implementao
Nesse captulo apresentar-se- nossa aplicao. Aspectos como

interface,

caractersticas,

recursos e linguagem de programao foram pontos desaadores e decisivos ao longo deste


processo.

6.1 Caractersticas
Primeiramente, quando se idealizou os aspectos que se gostaria de abordar, e os problemas
que se teria que resolver, surgiu o questionamento sobre qual linguagem de programao
utilizar.

Nesta escolha, no estava-se interessado em optar por uma linguagem que se

dominasse, mas por uma que proporcionasse toda a estrutura e recursos onde se pudesse
fazer a aquisio dos vdeos e process-los.
A alternativa escolhida foi a linguagem de programao JAVA. Na Seo 6.3 se apresentar a estrutura do interpretador JAVA, bem como todas as caractersticas que a
credenciam como uma das linguagens mais aceitas no mbito acadmico.
Na presente seo, se discutir as caractersticas da

interface

e do funcionamento da

aplicao como um todo, bem como, apresentar-se- toda a estrutura criada para dar
suporte a aquisio e processamento das imagens (ou

frames).

Para se criar um ambiente amigvel, sugeriu-se a estruturao por projetos.

Um

projeto uma abstrao do ambiente restrito a um par de vdeos (frontal e lateral), que
funciona, basicamente, como uma chave de acesso a estes vdeos e, por conseqncia a
seus

frames.
52

CAPTULO 6.

ASPECTOS DE IMPLEMENTAO

53

Aps a criao do projeto, podem-se importar os vdeos. O processo de importao


dos vdeos explicado na Seo 6.3.3. A partir deste momento, pode-se comear a realizar
o processamento de cada uma das etapas do mtodo de extrao de caractersticas faciais.
Para cada projeto, a execuo da aplicao retornar todas as etapas envolvidas no
processo de extrao de caractersticas faciais (vdeos (aquisio), localizao, normalizao, segmentao e extrao).

Portanto, pode-se visualizar cada uma das etapas em

separado. Esta uma grande vantagem do ponto de vista didtico do trabalho.


Abaixo, na Figura 6.1, apresenta-se a

Figura 6.1:

ScreenShot

interface

da aplicao.

da tela da aplicao que valida nosso trabalho.

Na esquerda, pode-se ter acesso a cada uma das etapas. direita, esto as imagens
que comprovam as aplicaes dos mtodos descritos anteriormente.

6.2 Sntese do Processo


Para propiciar um melhor entendimento do sistema para extrao de caractersticas proposto, a Figura 6.2 expe cada etapa do processo.

CAPTULO 6.

ASPECTOS DE IMPLEMENTAO

54

Figura 6.2: Etapas do processo de extrao de caractersticas proposto.

6.3 Linguagem de Programao


O Java uma linguagem de programao orientada a objetos que foi desenvolvida para
ser suportada em diferentes plataformas e sistemas operacionais [Java, 2005].
Desenvolvida pela Sun Microsystems Java possui um modelo conforme a linguagem de
programao C++ e possui recursos especiais que a tornam ideal para o uso na internet.
Com Java possvel colocar grcos interativos e outros efeitos especiais em pginas da
Internet utilizando programas especiais em Java chamados Applets, que so executados
dentro de um ambiente hospedeiro (o browser) [Bicho et al., 2002].

CAPTULO 6.

6.3.1

55

ASPECTOS DE IMPLEMENTAO

Histrico

Inicialmente o Java foi desenvolvido para programar

chips

de aparelhos domsticos e de

uso pessoal como, PDA's, forno de microondas, etc.


A equipe que desenvolvia o projeto na Sun, liderado por James Gosling, tinha inicialmente pensado em utilizar C ou C++, mas descobriu logo cedo que a linguagem no se
adequava ao projeto. Como resultado, em 1990, Gosling comeou a projetar uma nova
linguagem que ele batizou de Oak, segundo ele, por causa da rvore que ele via da sua janela. O nome posteriormente teve que ser mudado por que j existia uma outra linguagem
registrada com o mesmo nome.
O projeto avanou, mas o mercado decepcionou e a Sun decidiu redirecionar o rumo
do projeto investindo no ramo da TV interativa. O programa durou dois anos e consumiu
milhes de dlares.
Consistia no desenvolvimento de um prottipo de controle para TV interativa, usando
uma linguagem desenvolvida especialmente para este m (Oak). Quando o projeto nalmente foi apresentado em 1993, descobriu-se que o mercado de TV interativa no existia,
e no havia uma previso para quando iria deslanchar.
O nanciamento para o projeto estava para ser cortado e a equipe transferida para
outros projetos, quando a Sun decidiu abandonar o hardware do projeto, e focar o seu
desenvolvimento na Web. A partir da, a equipe trabalhou em um ritmo alucinante e em
segredo at liberar a primeira verso Alfa da linguagem, em maio de 1995.

6.3.2

Caractersticas

Java uma linguagem de alto nvel, com sintaxe similar a do C++.

antes de tudo

uma linguagem simples, fortemente tipada, independente de arquitetura, robusta, segura, extensvel, bem estruturada, distribuda, multithreaded e com garbage collection
[Wester, 2003]. Abaixo est uma descrio de cada uma das caractersticas mencionadas:

Simplicidade:

Java muito parecida com C++, mas muito mais simples.

Java

no possui varias facilidades que possibilitam uma maior exibilidade na hora de se


desenvolver. Alguns exemplos disso so: sobrecarga de operadores, structs, unions,
aritmtica de ponteiros, herana mltipla, diretivas de pr-processamento e a mem-

CAPTULO 6.

56

ASPECTOS DE IMPLEMENTAO

ria alocada dinamicamente gerenciada pela prpria linguagem, que usa algoritmos
de coleta de lixo (garbage

collection)

para desalocar regies de memrias que no

esto mais sendo usadas.

Orientao a Objetos:

Com a exceo dos tipos bsicos da linguagem (int, oat,

double, etc.), a maior parte das estruturas do Java so objetos.

O cdigo ca

bem organizado na forma de classes, que podem estabelecer relacionamentos de


herana simples entre si. Para utilizar os mtodos e atributos de uma classe no
necessariamente ela precisa ser instanciada, outra facilidade encontrada.

Multithreading:

Sistemas mais modernos do suporte multitarefa, ou seja, o

computador capaz e executar diversas tarefas ao mesmo tempo. Cada um desses


sistemas tem o seu tipo de multitarefa, preemptiva ou no, com ou sem multiprocessamento. Java tem o suporte a multitarefa embutido na linguagem: um programa
Java pode possuir mais de uma linha de execuo (thread).

Excees:

A mquina virtual Java faz uma vericao em tempo de execuo

quanto aos acessos de memria, abertura de arquivos e uma srie de eventos que
podem travar em outras linguagens, mas que geram excees em programas Java.

Processamento Distribudo:

Possui vrias API 's que do suporte a acesso re-

moto (sockets) e a protocolos utilizados na internet (HTTP, FTP, Telnet, etc.). Isso
facilita demais a elaborao de aplicativos baseados em arquiteturas cliente-servidor.

Independncia de Mquina:

O Java multiplataforma,

i.e., pode ser compilado

em uma mquina e rodar em outra, inclusive com sistemas operacionais distintos.


O cdigo-fonte em Java pr-compilado em bytecodes, que so conjuntos de instrues semelhantes ao cdigo de mquina, mas sem serem especcos de qualquer
plataforma [Bicho et al., 2002]. O cdigo Java compilado, pode ser executado por
um interpretador chamado Mquina Virtual Java (JVM), que um emulador de
processador.

1 Application

Programming Interface (API) - conjunto de rotinas e padres estabelecidos por um

software para utilizao de suas funcionalidades

CAPTULO 6.

57

ASPECTOS DE IMPLEMENTAO

Garbage Collector:

Em Java, os programadores no necessitam preocupar-se com o

gerenciamento de memria. Java, ao contrrio, utiliza-se de um conceito de

collection (coleta de lixo).

garbage

Sua funo a de varrer a memria de tempos em tempos,

liberando automaticamente os blocos que no esto sendo utilizados.

6.3.3

Java Media FrameWork

(JMF)

Uma das principais justicativas para a escolha da linguagem JAVA para a implementao
do sistema aqui apresentado foi exatamente a existncia de uma API prpria para a
manipulao de vdeos. A JMF permitiu que fossem criados CODECs para acessar
e

frame

os vdeos selecionados dentro do sistema.

Dessa forma, cada

frame

frame

pde ser

armazenado vinculado ao projeto que o importou. Essa disposio se mostrou bastante


til para a nalidade buscada, uma vez que possibilitou o acesso incondicional a cada

frame

salvo. Para que as etapas do processo de extrao de caractersticas fossem processadas


em etapas e no necessariamente em tempo real.

Captulo 7
Consideraes Finais
Os objetivos traados na proposta deste trabalho foram parcialmente alcanados.

Um

grande apanhado de mtodos foi estudado para tornar vivel esta implementao, visto
que o prvio conhecimento da linha de pesquisa deste trabalho era muito supercial. A
seguir se relatar as diculdades encontradas e as propostas futuras para este trabalho.

7.1 Diculdades Encontradas


Desde o inicio, encontraram-se diculdades na realizao de nosso trabalho. Com o total
desconhecimento da rea que se optou por desenvolver nossa pesquisa, comeou-se sempre
dos aspectos mais bsicos at propostas mais elaboradas para a resoluo do problema.
Esse foi o motivo pelo qual se demorou muito para comear a implementao propriamente
dita.
Utilizou-se, para a aquisio dos vdeos, recursos simples e com qualidade limitada,
sem nenhum tipo de calibrao, o que provocou a insero de diversos rudos em nossas
imagens.
A iluminao do ambiente de aquisio dos vdeos foi feita de maneira simples e no parametrizada. Ao realizarem-se os primeiros testes com os vdeos que se adquiriu utilizando
lmpadas de luz uorescente, os mtodos de localizao de cor de pele no funcionavam.
Depois de um tempo, detectou-se que o problema era a luz uorescente.

Adicionou-se

uma iluminao com lmpadas incandescentes e o mtodo passou a funcionar.


Na aquisio dos vdeos, utilizaram-se duas

58

webcams independentes.

Porm, por restri-

CAPTULO 7.

es de

59

CONSIDERAES FINAIS

software,

os vdeos foram adquiridos em computadores distintos, o que acarretou

na no sincronizao de alguns vdeos, agravada pela variao dos

framerates

de cada

cmera. Dessa forma, a sincronizao teve de ser feita manualmente.


A linguagem de programao (JAVA) utilizada para o desenvolvimento da aplicao,
no era de nosso domnio. Por isso, foi desaante o aprendizado da linguagem ao longo
do projeto. Em contra partida, sua escolha foi de total satisfatoriedade para o sucesso de
nosso sistema.

7.2 Propostas Futuras


Atualmente, a aquisio dos vdeos feita em um ambiente propcio, mas no totalmente
controlado. Nossa perspectiva dar maior exibilidade ao sistema para ser aplicado em
ambientes complexos.
Para isso, deve-se aprimorar o mtodo de localizao dos pontos de cor de pele. Atu-

YIQ

almente, esta localizao feita segundo um limiar nos espaos de cores

YCbCr,

porm em [Feris et al., 2000, Wang and Sung, 1999, Saber and Tekalp, 1998] foi utilizado
uma distribuio gaussiana para modelar a regio de cor de pele humana.
Por se tratar de uma aplicao que visa extrair pontos caractersticos de uma face,
para que estes sejam animados em um modelo virtual tridimensional em [Krting, 2005],
o aperfeioamento do processo de extrao dos pontos caractersticos da regio da boca
de fundamental importncia para dar maior realidade ao processo.

deformable templates proposta em [Yuille

A aplicao de

et al., 1992], apresentou grandes resultados para

a estimao dos pontos caractersticos da boca em [Zhang, 1997, Reinders et al., 1993,
Rudianto and Ngan, 1996]. Este o mtodo que se gostaria de, futuramente, implementar
em nosso trabalho.
Nosso

objetivo

nal

integrar

completamente

nosso

sistema

[Krting, 2005] que faz a animao dos pontos caractersticas extrados

ao

trabalho

frame

de

frame.

Bibliograa
[Abrantes and Pereira, 1999] Abrantes, G. A. and Pereira, F. (1999).
Animation Technology: Survey, Implementation and Results.

on Circuits and Systems for Video Technology,

In

MPEG-4 Facial

IEEE Transactions

volume 9, pages 290305.

[Agostini et al., 2004] Agostini, L. V., Silva, I. S., and Bampi, S. (2004). Parallel color
space converters for JPEG image compression. 44(4):697703.

[Alattar and Rajala, 1999] Alattar, A. M. and Rajala, S. A. (1999). Facial features localization in front view head and shoulders images.

In

Proceedings of the IEEE In-

ternational Conference on Acoustics, Speech and Signal Processing,

volume 6, pages

35573560.

[Battaiola et al., 2001] Battaiola, A. L., de G. Domingues, R., Feij, B., Scwarcman, D.,
Clua, E. W. G., Kosovitz, L. E., Dreux, M., Pessoa, C. A., and Ramalho, G. (2001).
Desenvolvimento de Jogos em Computadores e Celulares.

RITA,

VIII(2):746.

[Bicho et al., 2002] Bicho, A. L., da Silveira Jr., L. G., da Cruz, A. J. A., and Raposo,
A. B. (2002). Programao Grca 3D com OpenGL, Open Inventor e Java 3D. In

Revista Eletrnica de Iniciao Cientca (REIC).


[Buhiyan et al., 2003] Buhiyan, M. A. A., Ampornaramveth, V., and Ueno, S. Y. H.
(2003). Face Detection and Facial Feature Localization for Human-machine Interface.

Nll,

(5).

[Canny, 1986] Canny, J. (1986).

A computational approach to edge detection.

Trans. Pattern Anal. Mach. Intell.,

8(6):679698.

60

IEEE

61

BIBLIOGRAFIA

[Chan et al., 2004] Chan, M., Chia-Yen, C., Barton, G., Delmas, P., Gimel'farb, G., Leclercq, P., and Fischer, T. (2004).
chniques.

In

Evaluation of 3D face analysis and synthesis te-

ICME '04  IEEE International Conference on Multimedia and Expo,

volume 2, pages 12031206.

[Chen et al., 2005] Chen, X., Flynn, P. J., and Bowyer, K. W. (2005). Fully Automated
Facial Symmetry Axis Detection in Frontal Color Images. In

on Automatic Identication Advanced Technologies,

Fourth IEEE Workshop

pages 106111.

[da Silva and de Castro Santa Rosa, 2003] da Silva, P. Q. and de Castro Santa Rosa,
A. N. (2003). Face Recognition Based on Eigeneyes. 13(2):419423.

[Feris, 2001] Feris, R. S. (2001).

Rastreamento Eciente de Faces em um Subespao

Wavelet. Master's thesis, IME-USP.

[Feris et al., 2000] Feris, R. S., Campos, T. E., and Cesar-Jr., R. M. (2000). Detection
and Tracking of Facial Features in Video Sequences.

Intelligence,

In

Lecture Notes in Articial

volume 1973, pages 129137.

[Figueir, 2003] Figueir, T. (2003).

Converso RGB-HSV-GrayScale.

disponvel em

http://www.lapsi.eletro.ufrgs.br/lili/doc/image-processing/conversao.
pdf.

acessado em 15/12/2005.

[Garcia et al., 2001] Garcia, E., Dugelay, J.-L., and Delingette, H. (2001). Low cost 3D
face acquisition and modeling. In

ITCC 2001, IEEE International Conference on In-

formation Technology: Coding and Computing, April 2-4, 2001, Las Vegas, USA.
[Gonzalez and Woods, 2000] Gonzalez, R. C. and Woods, R. E. (2000).

de Imagens Digitais.

Editora Edgard Blcher Ltda.

[Gu et al., 2003] Gu, H., Su, G., and Du, C. (2003).
Faces. In

Processamento

Feature Points Extraction from

Image and Vision Computing NZ, Palmerston North, pages 154158, Beijing,

China.

[Hadid et al., 2002] Hadid, A., Pietikainen, M., and Martinkauppi, B. (2002). Color-based
face detection using skin locus model and hierarchical ltering. pages IV: 196200.

62

BIBLIOGRAFIA

[Harmon and Hunt, 1978] Harmon, L. D. and Hunt, W. F. (1978). Automatic recognition
of human face proles.

[IHC, 2005] IHC (2005).

br/ihc/.

Computer Graphics and Image Processing,


IHC Brasil.

http://www.serg.inf.puc-rio.

Acessado em 13/12/2005.

[Java, 2005] Java, P. (2005).

com.br/.

Disponvel em

6(2):135156.

O que Java?

disponvel em

http://www.portaljava.

acessado em 26/12/2005.

[Krting, 2005] Krting, T. S. (2005). Animador Tridimensional de Faces. In

Engenharia de Computao (FURG),

Projeto de

Rio Grande, RS, Brasil.

[Lanzarotti et al., 2002] Lanzarotti, R., Borghese, N. A., and Campadelli, P. (2002). Robust identication and matching of ducial points for the reconstruction of 3D human
faces from raw video sequences. In

First International Symposium on 3D Data Proces-

sing Visualization and Transmission,

pages 690693.

[Lee et al., 1995] Lee, Y., Terzopoulos, D., and Walters, K. (1995).
for facial animation. In

Realistic modeling

SIGGRAPH '95: Proceedings of the 22nd annual conference

on Computer graphics and interactive techniques,

pages 5562, New York, NY, USA.

ACM Press.

[Liposcak and Loncaric, 1999] Liposcak, Z. and Loncaric, S. (1999). A Scale-Space Approach to Face Recognition from Proles.

In

CAIP '99: Proceedings of the 8th In-

ternational Conference on Computer Analysis of Images and Patterns,

pages 243250,

London, UK. Springer-Verlag.

[Martins, 2005] Martins, I. (2005).

Pesquisa em bases fotogrcas, a partir do retrato

falado - uma soluo para integrao atravs da antropometria de Bertillon.

[Ming et al., 2000] Ming, Y., Yingchun, G., and Youan, K. (2000). Human face orientation estimation using symmetry and feature points analysis. In

WCCC-ICSP 2000. 5th

International Conference on Signal Processing Proceedings, volume 2, pages 14191422.


[Parke and Waters, 1996] Parke, F. I. and Waters, K. (1996).
A. K. Peters, Ltd., Natick, MA, USA.

Computer facial animation.

63

BIBLIOGRAFIA

[Pilu et al., 1996] Pilu, M., Fitzgibbon, A., and Fisher, R. (1996). Ellipse-specic direct
least-square tting.

[Precioso et al., 2005] Precioso, F., Barlaud, M., and Blu, T. (2005). Robust Real-Time
Segmentation of Images and Videos Using a Smooth-Spline Snake-based algorithm.
volume 14.

[Pritchard, 1977] Pritchard, D. H. (1977).

Trans. Consumer Eletronics,

U.S. Color Television Fundamentals.

IEEE

CE-23(4):467478.

[Reinders et al., 1993] Reinders, M., Odijk, F., van der Lubbe, J., and Gerbrands, J.
(1993).

Tracking of global motion and facial expressions of a human face in image

sequences.

In

Visual Communications and Image Processing'93,

volume SPIE Vol.

2904, pages 15161527, Cambridge.

[Ribeiro, 2004] Ribeiro, N. (2004).

Multimdia e Tecnologias Interactivas.

Fca - Editora

Informtica.

[Rozinaj and Mistral, 2003] Rozinaj, G. and Mistral, F.-L. (2003). Facial Features Detection For 3D Face Modeling.

4th International Conference on Industrial Tools,

03:951

954.

[Rudianto and Ngan, 1996] Rudianto, R. and Ngan, K. (1996). Automatic 3D wireframe
model tting to frontal facial image in model-based video coding. In

Symposium (PCS'96),

Picture Coding

volume SPIE Vol. 2904, pages 585588.

[Saber and Tekalp, 1998] Saber, E. and Tekalp, A. M. (1998).

Frontal-view Face De-

tection and Facial Features extraction Using Color, Shape and Symetry Based Cost
Functions. pages 669680. Ed. Elsevier.

[Seara, 1998] Seara, D. M. (1998). Algoritmos para Deteco de Bordas. disponvel em

http://www.inf.ufsc.br/~visao/1998/seara/.
[Shan et al., 2000] Shan, S., Gao, W., Yan, J., Zhang, H., and Chen, X. (2000). Individual
3d face synthesis based on orthogonal photos and speech-driven facial animation. In

ICIP.

64

BIBLIOGRAFIA

[Sheng, 2003] Sheng, Y. (2003). Fast and Automatic Facial Feature Extraction for 3-D
Model-Based Video Coding.

Research Excellence Awards Competition 2003.

[Singh et al., 2003] Singh, S. K., Chauhan, D. S., Vatsa, M., and Singh, R. (2003).
Robust Skin Color Based Face Detection Algorithm. In

and Engineering,,

Tamkang Journal of Science

volume 6, pages 227234.

[Sirohey, 1993] Sirohey, S. A. (1993). Human Face Segmentation and Identication. Technical Report CS-TR-3176.

[Smith, 1978] Smith, A. R. (1978).

Color gamut transform pairs.

In

SIGGRAPH '78:

Proceedings of the 5th annual conference on Computer graphics and interactive techniques,

pages 1219, New York, NY, USA. ACM Press.

[Su and Yin, 2004] Su, S. and Yin, B. (2004). A robust face detection method. In

International Conference on Image and Graphics,

Third

pages 302305.

[Tang and Huang, 1996] Tang, L.-A. and Huang, T. S. (1996). Automatic construction
of 3D human face models based on 2D images. In

Processing,

International Conference on Image

volume 3, pages 467470.

[Valente and Dugelay, 2000] Valente, S. and Dugelay, J.-L. (2000).


Realistic Animations for Telecommunicant Clones.

Face Tracking and

IEEE MultiMedia,

7(1):3443.

[Wang and Sung, 1999] Wang, J. G. and Sung, E. (1999). Frontal-view Face Detection
and Facial Features extraction Using Color and Morphological Operations.

Recognition Letters 20,

pages 10531068.

[Watt and Watt, 1992] Watt, A. and Watt, M. (1992).

techniques : theory and practic.


[Wester, 2003] Wester,

infowester.com/.

Pattern

I. (2003).

Advanced animation and rendering

Addison-Wesley.

Linguagem JAVA.

disponvel em

http://www.

acessado em 26/12/2005.

[Wikipedia, 2005a] Wikipedia (2005a). Avatar (Realidade Virtual). disponvel em

//pt.wikipedia.org/wiki/Avatar_(Realidade_Virtual).

http:

acessado em 28/12/2005.

65

BIBLIOGRAFIA

[Wikipedia, 2005b] Wikipedia (2005b). Biometria. disponvel em

org/wiki/Biometria.

acessado em 28/12/2005.

[Wikipedia, 2005c] Wikipedia (2005c). CCD. disponvel em

wiki/CCD.

http://pt.wikipedia.

http://pt.wikipedia.org/

acessado em 31/12/2005.

[Wikipedia, 2005d] Wikipedia (2005d).

HSV Color Spaces.

wikipedia.org/wiki/Image:HSV_cone.jpg.

disponvel em

http://en.

acessado em 14/12/2005.

[Yang et al., 2002] Yang, M.-H., Kriegman, D. J., and Ahuja, N. (2002). Detecting Faces
in Images: A Survey.

IEEE Trans. Pattern Anal. Mach. Intell.,

24(1):3458.

[Yokoyama et al., 1996] Yokoyama, T., Wu, H., and Yachida, M. (1996). Automatic detection of facial feature points and contours.

1996., 5th IEEE International Workshop,

In

Robot and Human Communication,

pages 335340.

[Yuille et al., 1992] Yuille, A. L., Hallinan, P. W., and Cohen, D. S. (1992).
extraction from faces using deformable templates.

Feature

Int. J. Comput. Vision, 8(2):99111.

[Zhang, 1997] Zhang, L. (1997). Estimation of the mouth features using deformable template matching. pages 328335.

[Zhao et al., 2003] Zhao, W., Chellappa, R., Phillips, P. J., and Rosenfeld, A. (2003).
Face recognition: A literature survey.