Recuperação de imagens por conteúdo utilizando Lógica Fuzzy

Propaganda
VII Workshop de Visão Computacional – WVC 2011
Recuperação de imagens por conteúdo utilizando Lógica Fuzzy - um estudo de
caso sobre imagens faciais
Leila Cristina Carneiro Bergamasco; Fátima L.S. Nunes
Universidade de São Paulo – Escola de Artes, Ciências e Humanidades
[email protected]; [email protected]
vem aumentando a sua significância na medida em que se
mostra eficaz nas rotinas aplicadas [1].
Para o processamento e busca das imagens é possível
utilizar CBIR (Content Based Image Retrieval), que por
meio de extratores (algoritmos que extraem características
das imagens) e funções de similaridade, comparam as
imagens de uma base de dados a uma imagem modelo,
retornando as mais semelhantes ao modelo fornecido.
Para aumentar a qualidade das respostas do sistema, é
possível utilizar a lógica Fuzzy, uma técnica amplamente
divulgada em Inteligência Artificial, que tem por objetivo
diminuir o gap semântico entre o usuário e a lógica
matemática do computador [2].
A proposta desse artigo é discutir os resultados e
eficácia da aplicação da lógica Fuzzy em um sistema
CBIR no contexto da rotina de reconhecimento facial.
Na seção 2 são apresentados os trabalhos que serviram
como base para o presente estudo, nas seções 3 e 4 são
definidos os conceitos de CBIR, realimentação por
relevância e lógica Fuzzy e a metodologia empregada para
a conclusão do trabalho, respectivamente, e nas seções 4 e
5 os resultados obtidos são mostrados e discutidos.
Resumo
A técnica de CBIR (Content-Based Image Retrieval)
consiste em recuperar imagens de um banco de dados
com base na similaridade entre uma imagem modelo e as
imagens armazenadas. A lógica Fuzzy tem por objetivo
classificar essa similaridade considerando graus de
pertinência, sendo que quanto maior o grau, maior a
similaridade. O presente trabalho propõe a
implementação e a análise da recuperação de imagens
por conteúdo utilizando a técnica de Inteligência
Artificial de lógica Fuzzy. A integração entre CBIR e
lógica Fuzzy ocorrerá por meio da técnica de
realimentação por relevância, na qual o usuário
classifica cada imagem resultante como relevante ou não
a sua busca, de modo que o algoritmo ‘aprenda’ e
adeque seus graus de pertinência de acordo com as
especificidades do usuário.
Abstract
The CBIR (Content-Based Image Retrieval) technique
consists in retrieve images from a database based on the
similarity among stored images in a database and
another image used as a model. Fuzzy Logic, aims at
classify this similarity on relevance degrees, as higher the
level, greater the similarity. This paper proposes the
implementation and analysis of image retrieval by content
using the technique of Fuzzy Logic. The integration of
Fuzzy Logic and CBIR occurs through by relevance
feedback technique, which the user rates each resulting
image as relevant or not, in such way the algorithm
'learns' and compute its relevance degree according to
the specific user.
2. Trabalhos correlatos
Para esse estudo de caso foram analisadas técnicas
principalmente de realimentação por relevância e CBIR
para entender qual o estado de conhecimento de ambos os
assuntos. Em [3], Torres e Falcão fazem uma revisão das
principais técnicas de CBIR de cor, textura e forma, além
de elucidar sobre algumas funções de similaridade
utilizadas atualmente e sob quais aspectos esses quesitos
são funcionais ou não.
No trabalho de Marques [4] foi empregada a técnica de
realimentação por relevância por meio de duas técnicas:
Relevance Feedback Projection que separa as
características em faixas de relevância e gera um novo
valor calculado a partir de projeções sobre a faixa de
objetos relevantes, e a técnica Multiple Point Projection
que combina a técnica anterior ao uso de múltiplos centros
de consulta.
Em [5] foi utilizada a técnica de Programação
Genética, conceito extraído da Inteligência Artificial para
executar a realimentação por relevância nos vetores de
características extraídos da imagem.
1. Introdução
Soluções automatizadas estão cada vez mais presentes
no cotidiano das pessoas com o objetivo de facilitar e
garantir resultados com grande qualidade.
O reconhecimento facial é uma dessas soluções e está
sendo empregado com maior frequência na sociedade,
principalmente nas áreas de segurança e investigação. Por
esse motivo, a otimização desse processo é estudado e
324
VII Workshop de Visão Computacional – WVC 2011
determinado conjunto, ou seja, tem valores 0 ou 1 de
pertinência, nos conjuntos Fuzzy um determinado
elemento pode pertencer com grau em um intervalo de 0 a
1.
Um sistema Fuzzy, é composto por três processos base:
fuzzyficação, inferência e defuzzyficação.
Tomando por base, um exemplo de um sistema de
controle de temperatura, demonstrado graficamente na
Figura 1, onde o eixo x representa a temperatura em graus
Celsius e o eixo y, a pertinência de cada grau a cada uma
das variáveis linguísticas {muito baixa, baixa, agradável,
alta}, será explicada a função de cada etapa de um sistema
Fuzzy.
O principal objetivo desse trabalho é propor uma nova
abordagem para a realimentação por relevância utilizando
a lógica Fuzzy a fim de tornar a interação entre usuário e o
sistema CBIR mais intuitivo.
3. Conceitos
A técnica de CBIR, conhecida como reconhecimento
de imagens baseada em conteúdo, tem por objetivo, a
partir de uma imagem modelo, apresentar ao usuário as
imagens mais relevantes que constam na base de dados.
A busca pelas imagens mais relevantes ocorre por meio
das funções de similaridade que são aplicadas nas
imagens, gerando os vetores de características de cada
uma delas. Esse vetor é composto de dados matemáticos
extraídos das imagens usando-se extratores. A partir do
resultado proposto, o usuário pode, por meio do sistema
de CBIR, definir quais as imagens são mais relevantes no
resultado da busca e quais imagens não foram relevantes,
na sua concepção [3].
Os extratores são algoritmos que extraem
características matemáticas que, quando transformadas em
números, representam o conteúdo da imagem. Os
extratores podem ser globais, recuperando características
da imagem inteira, ou locais, agindo em regiões
específicas da imagem. As características extraídas
formam um vetor de características que define
matematicamente a imagem [6]. Os extratores podem
representar características diversas, sendo bastante
aplicados para representar aspectos de cor, forma e
textura.
As funções de similaridade buscam demonstrar
matematicamente o quanto uma imagem é similar a outra.
Esse processo envolve a escolha de uma ou mais funções
de distâncias métricas e sua aplicação nos vetores de
características das imagens obtidos por meio dos
extratores.
A técnica de CBIR permite qualificar as respostas
dadas como relevantes ou não, fazendo com que o
algoritmo ‘aprenda’ quais propriedades visuais são
melhores para determinado contexto.
Esse conceito chamado por realimentação por
relevância tem dois objetivos principais: reduzir o gap
semântico entre a análise visual de alto nível feita pelo
usuário e a análise de baixo nível feita por meio dos
extratores e funções de similaridade; e reduzir a
subjetividade da percepção humana, uma vez que
diferentes usuários podem ter diferentes percepções de
relevância para a mesma imagem [4].
A lógica Fuzzy é uma proposta que procura atender o
aspecto vago deixado pela teoria clássica dos conjuntos,
em relação a informações com dados imprecisos [6].
Enquanto na teoria clássica, aqui chamada por
conjuntos ‘crisp’, um elemento pertence ou não a um
Figura 1: Sistema Fuzzy de controle de temperatura
O processo de fuzzyficação consiste em transformar os
valores de entrada, que são valores crisp, em valores
Fuzzy [7]. No exemplo anterior, dada uma temperatura de
25 graus, é verificado o grau de pertinência em cada
variável lingüística e dessa forma não é mais analisada a
informação pelo seu valor matemático, mas sim como
parte integrante de um dos conjuntos de variáveis. Assim
25 graus pode ser uma “temperatura agradável” e uma
“temperatura alta” com grau de pertinência menor.
Na inferência Fuzzy, são aplicadas as regras definidas
do tipo “Se <premissa> então <conclusão>”. Esse
processo é o mais importante de um sistema Fuzzy devido
ao fato que nele a lógica Fuzzy é amplamente utilizada por
meio dos operadores de implicação. Para cada dado de
entrada é feita uma análise em cada regra definida e as
conclusões obtidas individualmente são agrupadas para
obtenção de um resultado global.
No processo de defuzzyficação é implementado um
algoritmo para extração de um valor crisp a partir de um
conjunto de dados nebulosos. Alguns exemplos são: maior
dos máximos, menor dos mínimos, média dos máximos e
centróide.
4. Metodologia
Para atender aos objetivos do presente trabalho e
baseado na revisão bibliográfica feita, foi visto que o
desenvolvimento de um sistema de reconhecimento facial
seria a forma mais adequada para se avaliar a eficácia do
processo, dessa forma, três módulos foram desenvolvidos:
325
VII Workshop de Visão Computacional – WVC 2011
módulo CBIR, módulo Fuzzy e o módulo de
Realimentação por Relevância.
A primeira etapa do módulo CBIR consistiu em
escolher uma base de dados para que fosse possível
extrair mais facilmente características e testar a eficiência
do sistema. Foi escolhido um cenário controlado, com
fotografias de rostos de homens e mulheres de diferentes
raças na fase adulta. A base de dados é da Universidade
de Essex [7].
No sistema foram implementados 17 extratores,
contemplando as categorias de cor, forma e textura. Na
Tabela 1 é apresentado a finalidade de cada um deles.
Para enriquecer a pesquisa os extratores de cor foram
calculados por meio de histogramas, que dão uma visão
global da imagem, e também utilizando os pixels com os
seus valores individuais.
Média dos
Pixels em
Nivel de
Cinza
Média dos
Pixels em
RGB
Obter informação sobre a
tonalidade da imagem (mais
clara ou mais escura),
analisando os valores dos
pixels individualmente.
Obter informação sobre a
tonalidade da imagem (mais
clara ou mais escura) em cada
canal de cor, analisando os
valores dos pixels
individualmente.
Desvio
Padrão dos
Pixels em
Nivel de
Cinza
Obter informação do índice de
variação de cores em uma
imagem, analisando os pixels
individualmente.
Desvio
Padrão dos
Pixels em
RGB
Obter informação do índice de
variação de cores em uma
imagem, em cada canal de cor,
analisando os pixels
individualmente.
Obliquidade
dos Pixels
em Nível de
Cinza
Obter o valor da variação das
cores, analisando os pixels
individualmente.
Obliquidade
dos Pixels
em RGB
Obter o valor da variação das
cores, analisando os pixels
individualmente, em cada
canal de cor e analisando os
pixels individualmente.
Contraste
Determinar a variação dos
pixels, que indica o seu
contraste
Entropia
Determinar o índice de
dispersão dos pixels.
Tabela 1: Extratores implementados
Tipo
Cor
Extrator
Finalidade
Média do
Histograma
em Nivel de
Cinza
Obter informação sobre a
tonalidade da imagem (mais
clara ou mais escura)
Média do
Histograma
em RGB
Obter informação relativa ao
tom da imagem (mais clara ou
mais escura) em cada canal de
cor.
Desvio
Padrão do
Histograma
em Nivel de
Cinza
Desvio
Padrão do
Histograma
em RGB
Obter informação do índice de
variação de cores em uma
imagem
Obter informação do índice de
variação de cores em uma
imagem, em cada canal de cor.
Textura
Obliquidade
do
Histograma
em Nível de
Cinza
Obter o valor da variação das
cores
Obliquidade
do
Histograma
em RGB
Obter o valor da variação das
cores em cada canal de cor.
326
VII Workshop de Visão Computacional – WVC 2011
Forma
Escala
Por meio do índice de escala,
comparar duas imagens e ver a
diferença entre os tamanho
dos rostos
Rotação
Encontrar os eixos de inércia
da imagem para comparação.
Translação
Encontrar os prolongamentos
e orientações da forma do
rosto.
usuário escolher a imagem modelo e, em seguida as cinco
mais parecidas com ela são apresentadas para avaliação.
A realimentação por relevância acontece quando, a
partir da nota atribuída pelo usuário, o algoritmo
identifica quais imagens pode descartar e quais deve usar
como referência em uma próxima busca. A interação com
o usuário termina somente quando ele julga que todas as
imagens candidatas atendem a sua solicitação. Na Figura
3 é apresentado o fluxograma do funcionamento do
sistema de reconhecimento facial.
A função de similaridade implementada foi a distância
Euclidiana e para as imagens de testes foram escolhidos
três imagens faciais, denominadas R1, R2 e R3
respectivamente, conforme mostrado na Figura 2.
Figura 3: Fluxograma do funcionamento do sistema
Para cada um dos rostos escolhidos para o teste há
outras quatro imagens similares, apenas alterando a
expressão facial. Elas estão em uma base de dados com
outras 40 imagens de outras pessoas. O objetivo do teste
foi verificar se através da realimentação por lógica Fuzzy,
o sistema é capaz de selecionar as quatro imagens
corretamente para cada rosto buscado.
Figura 2: Imagens faciais utilizadas para o teste[7].
No módulo Fuzzy foram definidas as variáveis para o
processo de fuzzyficação, as regras para a inferência
Fuzzy e escolhido o método centróide para a extração do
valor crisp do sistema, esse valor corresponde ao peso a
ser ajustado de cada imagem.
Cada imagem possui um peso que é ajustado a cada
iteração de treinamento, de acordo com a resposta do
sistema Fuzzy. O valor do peso encontrado é, então,
multiplicado pela distância Euclidiana da respectiva
imagem, o que implica que pesos maiores causarão um
aumento substancial na distância da imagem. Esta ação
levará consequentemente, em uma próxima iteração, a não
retornar a imagem como sendo uma das imagens
candidatas. Dessa forma, o algoritmo diminui a margem
de erros causada pelo uso dos extratores puramente
matemáticos e faz com que a busca por imagens
candidatas fique mais refinada.
Para implementar o módulo de Realimentação por
Relevância foi construída uma interface que permite ao
5. Resultados
Na Figura 4 é possível ver que na primeira interação,
nem todas as imagens retornadas são as similares a
imagem-objetivo, denominada R1.
Figura 4: Primeira interação da imagem R1
Tendo em vista que com a função Euclidiana é possível
ter apenas a visão global da imagem, é de se concluir que
327
VII Workshop de Visão Computacional – WVC 2011
alguns extratores podem ter prejudicado no cálculo da
função de similaridade, levando a um valor errado. Isso
pode ser constatado na Tabela 2, nos extratores em
negrito, que mostram a distância Euclidiana entre o rosto
representado na imagem R1 e as cinco primeiras imagens
que foram retornadas na primeira interação.
Interações x Acertos
1,2
Índice de Acerto
1
0,8
R1
0,6
R2
R3
0,4
0,2
Tabela 2: Distância Euclidiana entre R1 e imagens
candidatas
0
1
2
3
4
5
6
7
8
9
10
Nº Interações
1
Imagens - Candidatas
2
3
4
Figura 5: Interações x Acertos
5
0,00
0,071
0,006
0,039
0,036
0,00
0,578
0,003
6,417
3,533
0,00
2,372
2,593
0,864
2,372
0,00
0,130
0,002
0,030
0,044
0,00
38,583
12,505
78,023
118,81
0,00
0,000
0,000
142,88
37,992
0,00
0,071
0,006
0,039
0,036
0,00
28,930
45,328
40,039
178,834
0,00
17,961
35,033
40,997
17,961
Conforme o número de interações com o usuário foi
aumentando, a busca se tornou mais refinada e começou a
retornar resultados melhores, fazendo com que a área dos
gráficos de precisão e revocação também crescessem,
indicando sucesso na busca. A evolução dos resultados da
imagem R1 estão apresentados na Figura 6, que mostra
três momentos do sistema, o momento A indica a primeira
interação com o usuário, o momento B a quinta interação,
e o momento C a sétima e última interação.
A)
1ª Interação
Precisão x Revocação
1,2
1
0,8
0,00
0,130
0,002
0,030
0,044
0,00
36,871
188,85
54,031
58,956
0,00
0,00
0,00
0,00
0,00
0,00
498,90
0,007
0,005
0,013
0,016
0,006
467,52
0,011
0,005
0,052
0,063
0,104
140,08
0,016
0,008
0,060
0,074
0,083
150,48
0,007
0,005
0,062
0,077
0,044
Precisão
Extratores
Média do Histograma em
Nivel de Cinza
Média do Histograma em
RGB
Desvio Padrão do
Histograma em Nivel de
Cinza
Desvio Padrão do
Histograma em RGB
Obliquidade do
Histograma em Nível de
Cinza
Obliquidade do
Histograma em RGB
Média dos Pixels em
Nivel de Cinza
Média dos Pixels em
RGB
Desvio Padrão dos Pixels
em Nivel de Cinza
Desvio Padrão dos Pixels
em RGB
Obliquidade dos Pixels
em Nível de Cinza
Obliquidade dos Pixels
em RGB
Contraste
Entropia
Escala
Rotação
Translação
0,6
0,4
0,2
0
0,2
0,4
0,6
0,8
1
0,8
1
Revocação
B)
5ª Interação
Precisão x Revocação
Aplicando a realimentação por relevância por meio de
notas variando de 0 a 10 e o processamento de ajustes de
peso por meio da lógica Fuzzy, o usuário consegue
minimizar o erro causado pelos extratores, refinando a sua
busca.
Isso pode ser constatado por meio do gráfico mostrado
pela Figura 5, onde para a imagem R1, houve a
necessidade de sete interações para a busca das outras
cinco imagens que eram similares à ela. Para a imagem
R2 foram feitas 10 interações e para a imagem R4, seis
avaliações.
1,2
1
Precisão
0,8
0,6
0,4
0,2
0
0,2
0,4
0,6
Revocação
328
VII Workshop de Visão Computacional – WVC 2011
C)
bastantes satisfatórios, e mostrou que a utilização de
métodos que aproximam o usuário do processo de busca,
diminuindo o gap semântico que ainda existe entre a
percepção do usuário e a lógica matemática da
computação é extremamente importante e que é possível
que ambas trabalhem juntas e produzam resultados cada
vez mais significativos.
7ª Interação
Precisão x Revocação
1,2
1
Precisão
0,8
0,6
0,4
7. Agradecimentos
0,2
0
0,2
0,4
0,6
0,8
1
Ao Projeto INCT – MACC (Institutos Nacionais de
Ciência e Tecnologia – Medicina Assistida por
Computação Científica), pelo apoio financeiro.
Revocação
Figura 6: Gráfico de precisão e revocação para a imagem
R1, representando diferentes momentos do sistema.
Gráfico A) 1ª interação; B) 5ª interação; C) 7ª interação.
8. Referências Bibliográficas
Na Figura 7 é possível analisar através da interface do
sistema, a evolução que houve no decorrer das interações
utilizando um sistema de lógica Fuzzy.
[1] MÁXIMO, A. A importância do mapeamento da
criminalidade utilizando-se tecnologia de sistema de
informação geográfica para auxiliar a segurança pública
no combate à violência. 2004. 101f. Dissertação
(Mestrado em Engenharia de Produção e Sistemas) –
PPGEP, Universidade Federal de Santa Catarina,
Florianópolis. cap. 1, p. 11-13.
[2] PEDRYCZ, W.; GOMIDE F. An introduction of
Fuzzy Sets: Analysis and Design. Mit Press, 1998.
Figura 7: Resultado da sexta interação com R1.
[3] TORRES, R. da S.; FALCÃO, A. X. Recuperação de
Imagens Baseadas em Conteúdo. In: Workshop de Visão
Computacional, 4. 2008, Bauru. São Paulo: Universidade
Estadual de São Paulo - UNESP, 2008.
6. Conclusões
Faz-se necessário discutir alguns pontos observados
durante a implementação do sistema, o primeiro deles é
sobre os extratores e funções de similaridade. Como visto
anteriormente, houve extratores que prejudicaram a
distância Euclidiana com valores que se diferenciavam em
grande escala dos demais. No sistema foram utilizados
extratores de todas as categorias (cor, textura e forma),
porém há alguns estudos que apontam para a relação da
eficiência de determinados extratores no contexto em que
são inseridos. Nesse sentido, um aspecto a ser
aprofundado é a escolha do melhor conjunto de extratores
de forma a diminuir a quantidade de iterações necessárias
ao processo.
Outro ponto em destaque foi a função de similaridade
usada. A distância Euclidiana retorna um valor global,
reflexo do conjunto de todos os extratores, isso também
ajudou a trazer resultados menos coerentes ao usuário.
Uma vez que o extrator estava retornando resultados
ruins, o valor da distância Euclidiana também piorava.
Uma ideia que pode ser explorada é como a lógica Fuzzy
poderia realimentar os valores de cada um dos extratores e
não da distância global obtida.
O uso da técnica de realimentação por relevância em
conjunto com a lógica Fuzzy produziu resultados
[4] MARQUES, J. Realimentação de relevância para
recuperação por conteúdo de imagens médicas visando
diminuir a descontinuidade semântica. In: Simpósio de
Teses e Dissertações, 11, 2008. São Paulo. São Paulo:
Instituto de Ciências Matemáticas e Computação,
Universidade de São Paulo, 2008.
[5] SILVA, A. T. Recuperação de Imagens por
Realimentação de Relevância. In: EADCA - Encontro dos
Alunos e Docentes do Departamento de Engenharia de
Computação e Automação Industrial, 2, 2009, Campinas.
Anais.. São Paulo: Universidade de Campinas –
UNICAMP, 2009.
[6] SANDRI, S.; CORREA, C. Lógica Nebulosa. In:
Escola de Redes Neurais, 5. 1999, São Paulo. São Paulo:
Instituto de Tecnologia e Aeronáutica – ITA, 1999.
[7] ESSEX UNIVERSITY. Collection of Facial Images.
Inglaterra, 2008. Disponível em: http://www.face-rec.org.
Acessada em: Março, 2011.
329
Download