projetos.inf.ufsc.br · Web viewA todos os meus amigos e pessoas próximas que me incentivaram a...

126
1 JEAN GONÇALVES (bolsista de iniciação científica) AVALIAÇÃO DO DESCRITOR SCD DO PADRÃO MPEG-7 E ÍNDICE MÉTRICO PARA RECUPERAR IMAGENS DO COPHIR POR SIMILARIDADE

Transcript of projetos.inf.ufsc.br · Web viewA todos os meus amigos e pessoas próximas que me incentivaram a...

1

JEAN GONÇALVES(bolsista de iniciação científica)

AVALIAÇÃO DO DESCRITOR SCD DO PADRÃO MPEG-7 E ÍNDICE MÉTRICO PARA RECUPERAR IMAGENS DO COPHIR POR

SIMILARIDADE

Florianópolis – SC 2013

2

UNIVERSIDADE FEDERAL DE SANTA CATARINADEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA

CURSO DE CIÊNCIAS DA COMPUTAÇÃO

AVALIAÇÃO DO DESCRITOR SCD DO PADRÃO MPEG-7 E ÍNDICE MÉTRICO PARA RECUPERAR IMAGENS DO COPHIR POR

SIMILARIDADE

JEAN GONÇALVES(bolsista de iniciação científica)

Orientador:Prof. Dr. Renato Fileto

Trabalho de conclusão de curso apresentado como parte dos requisitos para obtenção do grau de Bacharel em Ciências da Computação na Universidade Federal de Santa Catarina

Florianópolis – SC 2013

3

AGRADECIMENTOS

Agradeço a todos que me ajudaram direta e indiretamente na construção deste trabalho. Agradeço a meu pai e minha mãe por terem me dado todo o tipo de apoio durante todo este processo, principalmente a estrutura e o apoio moral, agradeço também a minha família e a todos os meus parentes que, com muito carinho e apoio, não mediram esforços para que eu chegasse até essa etapa da minha vida.

A todos os meus amigos e pessoas próximas que me incentivaram a continuar na luta e me reerguer diante de tantas dificuldades enfrentadas. Ao Marcelo Krüger que me deu suportes essenciais para viabilizar a realização deste trabalho. A todos os companheiros do laboratório LISA cujas opiniões me ajudaram e muito a desenvolver partes importantes do trabalho. A todos os professores do curso, que foram muito importantes na minha vida acadêmica.

Ao meu orientador Renato Fileto pelo seu incentivo, total apoio e devida orientação para que este trabalho tenha o seu devido andamento, ao meu coorientador Eros Comunello e ao Rogério Richa por me ajudarem em partes fundamentais deste trabalho.

4

RESUMO

A recuperação por similaridade de conteúdo pode ser aplicada a vários tipos de dados. No caso de um banco de dados de imagens, a recuperação por similaridade faz uso de duas componentes. Uma delas é um conjunto de vetores de características extraídos do conteúdo das imagens (e.g., referentes a cores, formas e texturas). A outra é uma métrica que mede a similaridade entre duas imagens quaisquer de uma coleção, com base nos respectivos vetores de características (e.g., histogramas de cores). As combinações de descritores e métricas que podem ser usados na recuperação por similaridade são inúmeras. Algumas delas são mais específicas e eficientes para determinadas coleções de dados e operações de recuperação. É importante escolher vetores de características e uma métrica de similaridade que permitam um bom desempenho das operações de recuperação de uma coleção de dados, tanto em termos do tempo de execução quanto em termos da qualidade (precisão e cobertura) dos resultados. O objetivo deste trabalho é estudar métricas e vetores de características apropriados para recuperar imagens de cunho geral descritas segundo o padrão MPEG-7. É necessário compactar os vetores de características para melhorar o processo de recuperação. A implementação efetuada utiliza o FMI-SiR, uma extensão do SGBD Oracle para a recuperação de dados complexos por similaridade de conteúdo. O trabalho inclui revisão bibliográfica, testes e experimentos com as métricas e descritores estudados na recuperação de imagens do CoPhIR por por conteúdo.

Palavras-chave: Recuperação de imagens por similaridade. Buscas por similaridade. Métricas de similaridade. Descritores de conteúdo de imagens.Metadados.Padrão MPEG-7.

5

ABSTRACT

Content-based similarity retrieval can be applied to many kinds of data. Similarity retrieval in image databases makes use of two components. One of them is a set of characteristics vectors extracted from images contents (e.g., regarding colors, shapes and textures). The other one is a metric thatmeasures the similarity between any given images of a collection, based on some chosen descriptors of these images (e.g., color histogram). The number of combinations of descriptorsand metrics that can be used in similarity retrieval is possibly unbounded.Some of them are more specific and effective to certain sets of data and retrieval operations. It is important to choose a metric and characteristics vectors that allow a good performance of retrieval operations, in terms of both execution time and results quality (precision and recall). The objective of this work is to study metrics and characteristics vectors suitable for retrieving images described according to the MPEG-7 standard. It is necessaryto compactthe characteristics vectors to improve the retrieval process. The implementationuses FMI-SiR, an extension of the Oracle SGBD for content-based complex data similarity retrieval. This work includes literature review, tests and experiments that employ the metrics and descriptors studied retrieving imagesof the CoPhIR dataset.

Keywords: Content-based image retrieval. Similarity search.Similarity metrics.Image content descriptors.Metadata. MPEG-7 standard descriptors.

6

SUMÁRIO

SUMÁRIO........................................................................................................................................61 INTRODUÇÃO.............................................................................................................................8

1.1 OBJETIVOS.........................................................................................................................101.1.1 OBJETIVO GERAL......................................................................................................111.1.2 OBJETIVOS ESPECÍFICOS........................................................................................11

1.2 METODOLOGIA.................................................................................................................121.3 MOTIVAÇÃO......................................................................................................................121.4 ORGANIZAÇÃO DO RESTANTE DO TRABALHO...................................................13

2 FUNDAMENTOS.......................................................................................................................152.1 DADOS COMPLEXOS.......................................................................................................152.2 RECUPERAÇÃO POR SIMILARIDADE DE CONTEÚDO.............................................152.3 ESPAÇO MÉTRICO E MÉTRICAS DE SIMILARIDADE...............................................162.4 CONSULTAS POR SIMILARIDADE.................................................................................232.5 ÍNDICES..............................................................................................................................24

2.5.1 B-TREE.........................................................................................................................252.5.1 SLIM-TREE..................................................................................................................26

2.6 PADRÃO MPEG-7...............................................................................................................272.6.1 ARQUITETURA DO MPEG-7.....................................................................................282.6.2 DESCRITORES MPEG-7.............................................................................................31

3 ESTUDOS DOS DESCRITORES DE CONTEÚDO E MÉTRICAS DE SIMILARIDADE PARA O PADRAO MPEG-7..........................................................................................................33

3.1 MEDIDAS DE DESEMPENHO PARA RECUPERAÇÃO DE INFORMAÇÃO..............333.2 ESTRATÉGIAS PARA RECUPERAÇÃO EFICIENTE DE IMAGENS POR SIMILARIDADE DE CONTEÚDO..........................................................................................36

3.2.1 MESCLAGEM DE PALETAS DE HISTOGRAMAS COM USO CONTÍNUO DE FEEDBACK...........................................................................................................................373.2.2 COMPACTAÇÃO NOS DESCRITORES SCD E HTD...............................................393.2.3 MODIFICAÇÃO NO DCD E EHD..............................................................................413.2.4 SÍNTESE E USO DO DESCRITOR DCSD (DOMINANT COLOR STRUCTURE DESCRIPTOR).......................................................................................................................433.2.5 COMBINAÇÃO DE UM DESCRITOR DE TEXTURA COM VÁRIOS DESCRITORES DE COR......................................................................................................443.2.6 OUTRAS ESTRATÉGIAS ESTUDADAS...................................................................473.2.7 QUADRO COMPARATIVO........................................................................................48

4 IMPLEMENTAÇÃO, EXPERIMENTOS E ANÁLISE DOS RESULTADOS..........................52

7

4.1 IMPLEMENTAÇÃO............................................................................................................534.2 EXPERIMENTOS E AVALIAÇÃO.....................................................................................62

5 TRABALHOS RELACIONADOS.............................................................................................775.1 USO DAS MÉTRICAS QHDM E MPHSM JUNTAMENTE COM FEEDBACK DE USUÁRIO..................................................................................................................................775.2 USO DA MÉTRICA MANHATTAN EM IMAGENS DE CUNHO ESPECÍFICO............78

6 CONCLUSÕES E TRABALHOS FUTUROS...........................................................................79REFERÊNCIAS.............................................................................................................................81ANEXOS........................................................................................................................................84

A.1 - CRONOGRAMA..............................................................................................................84A.2 - CUSTOS............................................................................................................................84A.3 - RISCOS.............................................................................................................................85A.4 - COMUNICAÇÃO.............................................................................................................85

8

1 INTRODUÇÃO

Atualmente a quantidade de dados armazenados pelo mundo tem crescido

tanto em quantidade quanto em complexidade. Um dos principais problemas

resultantes desse crescimento é a dificuldade para obter eficiência nas operações de

recuperação de informação realizadas sobre grandes volumes de dados complexos.

Nesse contexto, bancos de dados multimídia ganharam muita importância devido ao

seu uso intenso, pois podem armazenar dados que são usados tanto para o lazer

quanto para trabalhos profissionais. Segundo Rüger (2009), um banco de dados

multimídia inclui “duas ou mais mídias e se refere a diferentes modos de consumo

de informação, dentre eles: escutar, ver, ler, assistir, cheirar, etc...” e envolve aúdio,

vídeo e imagens. Tais dados são chamados complexos, porque não possuem a

representação de seu conteúdo na forma de simples números e cadeias de

caracteres, ou seja, não são considerados dados convencionais. Devido a esse fato,

eles não são manipuláveis somente através de técnicas tradicionais de

gerenciamento de dados, tornando-se necessário usar técnicas mais sofisticadas

para realizar tal tarefa. Os dados complexos (multimídia, séries temporais, etc.)

posssuem pelo menos uma dentre as seguintes características:

(i) representação em vários formatos (e.g. bases de dados, textos, imagens, sons, vídeos, ...); (ii) coleções podendo possuir estruturas diversificadas(e.g. banco de dados relacionais, documentos XML, ...); (iii) sua origem pode se dar em diversas fontes (e.g. ); (iv) podem ser descritos de diversas maneiras através de canais ou pontos de vista (e.g. um vídeo ou um texto que descrevem o mesmo fenômeno meteorológico, dados expressos em diferentes idiomas, ...); (v) mudam em termos de definição e valor ao longo do tempo (e.g. banco de dados temporais, ...). (DARMONT et al, 2005, apud MAHBOUBI et al, 2009, p.39, livre tradução nossa).

Dados complexos, diferentemente dos dados tradicionais, não podem ser

ordenados (e.g., imagens ou vídeos usualmente não podem ser ordenados de

maneira consistente e universalmente aceitável, tal como se ordenam números por

seu valor e cadeias de caracteres pela ordem léxica). Dependendo de como os

objetos complexos estiverem descritos ou armazendados e do objetivo das

consultas, estas podem incluir predicados sobre dois tipos de componentes de

dados: (i) predicados de comparação dos metadados usados para descrever objetos

complexos, tais como a sua data de criação ou palavras-chave que os descrevam;

ou (ii) predicados baseados em similaridade do conteúdo dos objetos em questão.

9

Este trabalho foca no segundo tipo de predicado de consulta, i.e., baseados em

similaridade de conteúdo. Segundo Barioni (2006) consultas por similaridade

“retornam objetos do conjunto de dados que sejam similares a um objeto de

referência (ou objeto de consulta), de acordo com um critério de similaridade”. Além

das consultas por similaridade, também foram propostos na literatura vários outros

operadores baseados em similaridade, incluindo junções por similaridade e o uso da

similaridade em métodos de classificação e agrupamento de dados complexos

(Datta et al. 2008).

No caso da recuperação de dados tradicionais, estes podem ser

representados através de cadeias de caracteres ou números. Tais dados simples

satisfazem a propriedade de relação de ordem total, que permite compará-los com

operadores como <, ≤, >, ≥ e =, ou seja, é possível comparar pares de strings ou de

números e dizer se são iguais ou qual deles é maior ou menor em comparação ao

outro, segundo a ordenação léxica e numérica, respectivamente. A maioria dos

domínios dos dados complexos não satisfaz a relação de ordem total. É muito raro o

uso do operador de igualdade com dados complexos, visto que, em um banco de

dados com dados complexos, a grande maioria dos dados não são idênticos.

Também não faz sentido em grande parte das aplicações comparar dados

complexos como imagens através de desigualdades.

Os dados complexos podem ser recuperados com busca por similaridade.

Barioni (2009) afirma que dados dessa categoria podem ser armazenadas no banco

de dados de duas formas: como vetores de características dos objetos complexos

(ela cita como exemplo posições geográficas dos dados que podem ser localizados

através de sua latitude e longitude) ou como um objeto binário largo (em inglês

BLOB, Binary Large Object). Caso os objetos complexos estejam armazenados da

primeira forma, pode-se fazer uma consulta por similaridade usando função de

similaridade dos vetores de características. No segundo caso, o dado armazenado é

chamado bruto (raw data) e somente ele não é suficiente para suportar a execução

de consultas por similaridade. Para resolver esse problema é necessário extrair um

conjunto de características do conteúdo e usar tais características, juntamente com

uma métrica de similaridade calculada a partir de tais caractrísticas, para realizar a

consulta por similaridade. A busca por similaridade pode usar vários tipos de

predicados. Um predicado kNN (k Nearest Neighbors) retorna os ‘k’ vizinhos mais

próximos de um objeto de consulta, de acordo com uma métrica de similaridade

10

escolhida, sendo ‘k’ um número inteiro positivo arbitrário. Um predicado dentro de

um raio (range), por outro lado, retornados objetos da base de dados a até uma

dada distância (raio) de um objeto de cosulta. Os processos de indexação e

recuperação por similaridade são usualmente mais caros, pois requerem

processamento do conteúdo (e.g., imagens) para a extração de características, o

cálculo de funções de similaridade que podem ser complexas e o uso de índices

métricos, muitas vezes menos eficientes que os convencionais. Dependendo de

como os dados forem tratados e indexados essa complexidade computacional pode

aumentar ou diminuir.

Buscas por similaridade em um espaço métrico (definido por uma coleção de

objetos e uma métrica de similaridade baseada em algum vetor de características

dos objetos) podem ser agilizadas por métodos de acesso métricos. Sem indexação

cada busca é sequencial, com complexidade linear no número de objetos da

coleção, podendo resultar em baixo desempenho. Índices podem reduzir o número

de cálculos de similaridade, permitindo melhorar o desempenho das consultas por

similaridade. Slim-tree, M-tree e BK-tree, dentre outras estruturas, são exemplos de

índices métricos (Zezula et al. 2006). O bom funcionamento dessas estruturas

depende de espaços métricos apropriados para permitir podas baseadas na

desigualdade triangular (e consequentemente processamento de consulta em

tempo) sub-linear ao mesmo tempo em que se gere resultados com bons níveis de

cobertura e precisão.

1.1 OBJETIVOS

O trabalho aqui apresentado visa estudar, selecionar e aplicar métricas de

similaridade e descritores de conteúdo de imagens do padrão MPEG-7 apropriados

para a recuperação de imagens. Segundo Rüger (2009, p.16, tradução nossa),

MPEG-7 é um padrão para descrição e procura de recursos audiovisuais. O

acrônimo MPEG refere-se ao Grupo de Especialistas em Imagens Animadas

(tradução nossa do inglês Moving Picture Expert Group). O objetivo é avaliar qual

métrica e descritores desse padrão conferem melhor desempenho à recuperação de

imagens de cunho geral por similaridade de conteúdo, em termos de tempo de

execução e qualidade dos resultados. Para isso, se realizam experimentos em uma

base de dados chamada CoPhIR (Content-based Photo Image Retrieval), um grande

11

repositório de vetores de características no formato MPEG-7, juntamente com

alguns metadados associados (tags, local, etc.). Esses metadados foram extraídos

de mais de 100 milhões de imagens do Flickr por pesquisadores europeus, os quais

disponibilizam os dados resultantes mediante contrato, para fins de pesquisa. Para

maiores informações sobre o CoPhIR, consultar a tese de Molková (2011). Essa

base de dados está armazenada em um computador no Laboratório para Aplicações

de Sistemas Avançados (LISA) na Universidade Federal de Santa Catarina e o

SGBD a ser usado será o Oracle Enterprise 11g versão 2. A realização de busca por

similaridade é feita em conjunto com uma ferramenta criada por Kaster (2010) cuja

abreviação é FMI-SiR (user-defined Features, Metrics and Indexes for Similarity

Retrieval), trata-se de uma ferramenta que permite o uso de índices específicos

sobre coleções de imagens. O FMI-SIR e permite a implementação e o uso de

descritores e métricas para indexação e recuperação eficiente de imagens usando

índice métrico, particularmente a Slim-Tree. Outros trabalhos serão feitos em

paralelo com o uso desse conjunto de ferramentas tais como a criação de

fragmentos dos dados, porém o foco desse trabalho se limita ao estudo de métricas

e descritores e suas implementações.

1.1.1 OBJETIVO GERAL

O objetivo geral deste trabalho é estudar as métricas e descritores

recomendados para se utilizar em processos de recuperação por similaridade,

selecionar os mais apropriados para recuperar imagens de cunho geral (extraídas de

rede social) e implementá-los no FMI-SiR, uma ferramenta criada por Kaster et al.

(2010), com o objetivo de se recuperar dados multimídia por similaridade sobre o

Oracle.

1.1.2 OBJETIVOS ESPECÍFICOS

Os objetivos específicos são:

1. Estudar a literatura sobre recuperação de dados multimídia por similaridade,

métricas de similaridade, descritores de imagens e ferramentas de software

para esta finalidade.

2. Selecionar a métrica e o descritor apropriado (ou descritores apropriados)

para a recuperação eficiente de imagens descritas segundo o padrão MPEG-

12

7.

3. Implementar o descritor e, se necessário, também, métrica selecionados na

ferramenta FMI-SiR sobre Oracle.

4. Realizar experimentos de recuperação de informações do CoPhIR com a

métrica e descritores de conteúdo selecionados, e de modo a avaliar seu

desempenho ao menos do ponto de vista da eficiência computacional

(memória utilizada, tempo de criação dos índices, tempo de execução,

número de acessos a disco e número de cálculos da métrica de similaridade

para executar as consultas).

1.2 METODOLOGIA

Este trabalho parte de uma revisão bibliográfica sobre recuperação por

similaridade de um modo geral, o padrão MPEG-7 e os descritores desse padrão.

Abrange também consultas por similaridade e funções de similaridadee distância. É

necessária uma busca mais abrangente no início do trabalho para se ter um

discernimento das métricas apropriadas ou não para os descritores do padrão em

questão. Após a realização da revisão bibliográfica e a obtenção de conhecimentos

teóricos e práticos necessários para se realizar operações com as ferramentas

propostas, deve-se implementar a métrica selecionada na ferramenta FMI-SiR caso

ela ainda não esteja implementada, implementar o descritor necessário (ou

descritores necessários) para a recuperação eficiente por similaridade e executar

diversas consultas para fins experimentais. Uma consulta por similaridade tem uma

imagem como entrada e outras imagens semelhantes à de entrada como resultado.

Seu processamento consiste em capturar as características da imagem de busca

submetida como entrada e filtrar os dados contidos e previamente indexados no

repositório de modo a obter as imagens próximas à imagem de consulta.

1.3 MOTIVAÇÃO

A recuperação de um conjunto de imagens pode ter um desempenho

diferente de acordo com as características extraídas, métrica de similaridade usada

na comparação dessas características e consultas realizadas. Determinadas

métricas podem ser eficientes para a recuperação de imagens médicas, mas as

mesmas métricas podem ser muito ineficientes para a recuperação de fotos que

13

envolvam paisagens, por exemplo.

A motivação para a realização deste trabalho é encontrar respostas para

questões que envolvem avaliações de métricas e descritores em relação a imagens

de um modo geral e elaborar uma metodologia de avaliação de métricas e

descritores. Outra motivação para o trabalho é explorar o uso do FMI-SiR, uma

alternativa para o uso de ferramentas mais pesadas e mais complexas tais como o

Oracle Intermedia (produto desenvolvido pela Oracle com documentação no site da

empresa) e o SiReN (desenvolvido por Barioni (2006)). Os resultados deste TCC

devem contribuir para a realização de experimentos sobre diversos fragmentos do

CoPhIR, no âmbito do projeto “Informação de Contexto e Similaridade de Conteúdo

para a Recuperação Eficiente de Dados Complexos” (Edital Universal MCT/CNPq

2011), visando validar algumas propostas teóricas já formalizadas e aguardando

validação para a publicação na forma de artigos.

1.4ORGANIZAÇÃO DO RESTANTE DO TRABALHO

Após uma breve introdução teórica do trabalho e apresentação dos objetivos

e motivações, o trabalho segue com a fundamentação teórica e, em seguida, com a

introdução, desenvolvimento e conclusão do projeto, assim como a relação com

possíveis trabalhos futuros.

A fundamentação teórica é muito importante para esclarecer conceitos que

serão abordados na parte de projetos e deixar o leitor desse trabalho ciente dos

mecanismos que serão usados com as ferramentas. O fato de o trabalho envolver

métricas implica a necessidade de se explicar vários conceitos relacionados ao seu

uso tais como dados complexos e espaço métrico, além disso torna-se necessário

exemplificar algumas das várias métricas existentes a fim de diferenciá-las quanto

ao caso de uso de cada uma em particular. A seguir, a abordagem do projeto visa

explicar como os trabalhos de implementação serão conduzidos dentro do LISA para

pôr em prática as fundamentações abordadas, conhecer as ferramentas de trabalho,

operar com elas, obter os resultados e documentar o que for necessário. A

documentação do processo será útil para o desenvolvimento do artigo e para a

conclusão deste trabalho.

14

15

2 FUNDAMENTOS

Este capítulo aborda fundamentos necessários para a solução do problema

proposto, incluindo o conceito dados complexos, métricas de similaridade, espaços

métricos, recuperação de informação por similaridade de conteúdo, descritores de

conteúdo de imagens, padrão MPEG-7 e sua estrutura.

2.1 DADOS COMPLEXOS

Ao se comparar dados complexos com tradicionais, observa-se que os dados

complexos possuem uma estrutura mais robusta, pois ocupam mais espaço no

banco de dados e a forma como esta se encontra organizada dificulta a sua

manipulação. Os dados complexos geralmente possuem muitas informações

atribuídas ao conteúdo eo tratamento desse tipo de conteúdo deve ser diferenciado

para a sua manipulação e recuperação. Trata-se de dados contidos em vários meios

de armazenamento que vão desde bibliotecas digitais até banco de dados

convencionais, e a principal dificuldade na sua manipulação é a diversidade de seu

formato. Darmont et al, 2005, apud Mahboudi et al, 2009 exemplifica esse fato

citando o ambiente médico como um exemplo onde ocorre essa diversidade de

formatos possíveis de caracterizar um dado complexo, nesse meio os dados de um

paciente podem ocorrer de diversos formatos tais como dados cadastrais (no caso

de um banco de dados clássico), histórico (formato texto), radiografias e

ultrassonografias (dados multimídia), diagnósticos médicos (textos ou gravações em

áudio), dentre outros. Os mesmos autores ainda afirmam que esses dados, em

geral, podem ser representados em XML devido ás características e formas de

representação que essa linguagem possui. De fato, os dados complexos podem ser

representados de forma relacional e serem armazenados em bancos de dados

relacionais, porém vale ressaltar que as operações mais simples que funcionam

sobre dados tradicionais não oferecem recursos para medir dissimilaridades, pois

um banco de dados relacional normalmente não contém as funções e complementos

necessários para se realizar tal tarefa.

2.2 RECUPERAÇÃO POR SIMILARIDADE DE CONTEÚDO

16

Recuperação de dados baseado em conteúdo é uma forma de se resgatar

dados que vem sendo muito estudada e que vem despertando muito interesse nas

últimas décadas devido ao rápido avanço da tecnologia e devido ao crescimento

contínuo na quantidade de dados. A recuperação de similaridade por conteúdo é

muito utilizada na comparação entre dados complexos, esta faz uso de consultas

cujos resultados são objetos similares a um determinado objeto alvo segundo alguns

critérios determinados pelo usuário. Segundo Barioni(2006), recuperação baseada

em conteúdo pode ser usada em vários tipos de dados tais como vídeos, imagens e

áudios, sendo que, historicamente, surgiram primeiro os métodos de recuperação

por conteúdo para imagens(Recuperação de imagens baseada em conteúdo, ou

Content Based Image Retrieval em inglês), depois o do restante.

Pattanaik e Bhalke (2012) afirmam que a recuperação por similaridade de

conteúdo é dividido em duas partes, elas são extração de características e

comparação por similaridade. Dependendo do tipo de dado a ser tratado o processo

de extração de características e comparação por similaridade serão diferentes,

desse modo não é possível extraírmos características de uma imagem da mesma

forma como extraímos características de áudios, tratam-se de dados de naturezas

diferentes. Para a recuperação de similaridade por conteúdo ocorrer, o SGBD deve

ser configurado para tais tarefas, além disso programas complementares devem ser

instalados.

2.3 ESPAÇO MÉTRICO E MÉTRICAS DE SIMILARIDADE

Um espaço métrico M é definido como um par {S, d()}no qual S é o conjunto

de dados e d() é uma função de distância que, segundo Zezula (2006, p.8) deve

atender as seguintes propriedades para ser considerada uma métrica:

Não negatividade: x, y S, d(x, y) ≥ 0

Simetria: x, y S, d(x, y) = d(y, x)

Identidade: x, y S, d(x, y) = 0

Desigualdade triangular: x, y, z S, d(x, z) ≤ d(x, y) + d(y, z)

As métricas, ou funções de distância, retornam um valor que mostram o quão

dissimilares são os dados entre sí dentro de um espaço métrico. As métricas

geralmente são feitas para se avaliar distâncias entre determinados tipos de dados

e, na prática, são especificadas por especialistas de domínios. A escolha de uma

17

métrica deve ser apropriada para a distância que se deseja calcular, isso implicará

na distância (ou dissimilaridade) adequada entre os objetos. A fórmula em questão

deve conter informações que sejam suficientes para um cálculo preciso da

dissimilaridade, o resultado desse cálculo deve se assemelhar á percepção humana

da realidade. Para se entender melhor essa linha de raciocínio, pode-se “aplicar”

uma “função de distância” entre duas pessoas quaisquer para ver o quão diferente

elas são e poderíamos pôr na fórmula somente a cor da camisa, assim duas

pessoas com camisas de cor preta seriam iguais, e caso as cores fossem diferentes

se avaliaria através do bom senso o quão diferente as cores são. Segundo a

percepção humana, estão faltando alguns elementos a mais nessa fórmula, pois

uma das pessoas pode ser homem e a outra mulher, ou as duas terem rostos

completamente diferentes, corpos completamente diferentes, dentre outros detalhes

que não são cobertos por essa “função de distância” e essa métrica seria

inadequada para esse fim.

De um modo geral, as métricas são classificadas em dois grupos, discretas ou

contínuas. As funções de distância discretas retornam apenas um pequeno e

predefinido conjunto de valores, enquanto que as contínuas retornam um conjunto

de valores muito largo ou infinito. Um exemplo de função contínua é a distância

euclidiana, usada para medir a distância entre dois vetores em um espaço n

dimensional, e um exemplo de uma função discreta é a distância de edição, usada

para medir dissimilaridade entre strings. Além da distância euclidiana e a distância

de edição, existem outras, porém as mais conhecidas são: a distância Minkowski

(incluindo a distância euclidiana), distância forma quadrática, distância de edição,

distância de edição de árvore, coeficiente de Jaccard e a distância Hausdorff.

A distância Minkowski forma uma família grande de funções de distância

conhecida como as métricas Lp e cada valor inteiro que o parâmetro p assume

equivale a uma função de distância diferente. A métrica está representada na Figura

1.

18

Figura 1 – Distância Minkowski

Fonte: Zezula, P., Amato, G., Dohnal, V., & Batko, M. (2006, )

A métrica L1 é conhecida como a distância Manhattan, L2 é conhecida como a

distância euclidiana e L∞ é a distância infinita, ou a distância do campo de xadrez. A

figura 2 mostra o conjunto de pontos cuja distância de cada um até o ponto central é

igual para parâmetros p diferentes. Uma observação a se fazer é com relação á

diferença entre duas dessas métricas, a distância Manhattan e a distância

euclidiana. A distância Manhattan entre dois pontos é o cálculo da diferença absoluta

entre as coordenadas dos dois pontos, desse modo a geometria de distância entre

dois pontos não leva em conta geometrias circulares e o espaço métrico acaba se

assemelhando a um conjunto de blocos onde as distâncias entre dois pontos são

calculadas a partir de movimentos entre os blocos, ou seja, a soma de movimentos

horizontais e verticais de um ponto até outro resultariam a distância. Já a distância

euclidiana é a fórmula de Pitágoras de distância entre dois pontos e o cálculo da

distância não é a soma dos movimentos horizontais e verticais de um ponto até

outro, e sim um cálculo que resulta em uma linha reta que liga os dois pontos. É

possível notar essa observação através da figura 2, que mostra os pontos

equidistantes ao ponto central.

Figura 2 - O conjunto de pontos á uma distância constante do ponto central para cada função

Lp diferente.

Fonte: Zezula, P., Amato, G., Dohnal, V., & Batko, M. (2006, )

19

A distância forma quadrática, diferentemente da distância Minkowski,

aplica alguns elementos diferentes na fórmula. Trata-se de um modelo satisfatório

para se trabalhar em histogramas de cores de imagens, nesse caso o histograma

tem diferentes dimensões, cada dimensão representa uma cor e as cores são

comparadas entre sí quanto á sua similaridade. Para um conjunto de vetores de n

cores com dimensão n cada, a distância forma quadrática usa uma matriz M = [m i,j]

em que mi,j representa a força da conexão entre os componentes i e j de dois vetores

x e y respectivamente, sendo que todos os pesos assumem valores 0 ≤ m i,j ≤ 1 e a

diagonal mi,i é igual a 1. Existem duas métricas correspondentes á forma quadrática,

a primeira, representada na Figura 3, é a distância forma quadrática generalizada e

a segunda, representada na Figura 4, é a distância euclidiana com pesos, obtida

através da forma quadrática generalizada com a matriz M = diag(w1, w2, ..., wn), o T

denota a operação de transposição de vetores.

Figura 3 – Fórmula da distância forma quadrática generalizada

Fonte: Zezula, P., Amato, G., Dohnal, V., & Batko, M. (2006, )

Figura 4 – Fórmula da distância euclidiana com pesos

Fonte: Fonte: Zezula, P., Amato, G., Dohnal, V., & Batko, M. (2006, )

Como exemplo para ilustrar essa situação, podemos considerar

histogramas com três diferentes cores, vermelho, laranja e azul e estão

representadas como vetores 3-D. Ao assumirmos três histogramas normalizados de

uma imagem vermelha pura x = (0, 1, 0), uma imagem laranja pura y = (0, 0, 1) e

uma imagem azul pura z = (1, 0, 0), a distância euclidiana calcularia as distâncias

L2(x,y) = √2 e L2(x,z) = √2, o que implicaria dizer que a dissimilaridade entre as cores

20

vermelho e laranja é igual á dissimilaridade entre as cores vermelho e azul, o que

significaria dizer que no espaço métrico em questão as cores azul e laranja são

equidistantes do vermelho. Porém, para a percepção humana, essas

dissimilaridades são diferentes, para resolver esse problema a abordagem da

métrica deve ser diferente. Assim, usando a fórmula (1) e a matriz M da figura 5, a

distância entre x e y seria √0.2 e a distância entre x e z seria igual á √2, o que

implicaria dizer que as cores laranja e vermelho são mais similares entre sí do que

as cores vermelho e azul. Trata-se de um método que é computacionalmente mais

caro devido ás matrizes, mas seu custo pode subir ainda mais dependendo da

dimensionalidade dos vetores, pois histogramas de imagens de cores geralmente

usam vetores com uma dimensão muito grande.

Figura 5: Matriz M usada no problema envolvendo histograma de cores na distância forma

quadrática.

Fonte: :Zezula, P., Amato, G., Dohnal, V., & Batko, M. (2006)

A distância de edição mede a dissimilaridade entre duas cadeias de

strings a partir de operações de edição (inserção, deleção e reposição) que

transformam uma string na outra. O número de operações deve ser mínimo e a

função de distância retorna a soma dos pesos de cada operação, assim quanto mais

operações forem necessárias para a transformação de uma string em outra, maior a

dissimilaridade entre elas. Os pesos assinalados para as operações devem ser

iguais pois, caso contrário, a distância de edição não será simétrica, pois

desobedecerá a propriedade (p2) dos postulados de espaços métricos. Um exemplo

citado pelo próprio Zezula(2006, p.12) atribui peso 2 á operação de inserção e peso

1 á operação de deleção e reposição, após essas atribuições de pesos o exemplo

mostra o cálculo da distância de edição entre “combine” e “combination” e vice

versa. A figura 6 ilustra o exemplo citado. No caso, a distância de “combine” até

“combination” é de 9 unidades, enquanto que a distância de “combination” até

combine é de 5 unidades. Se o peso de todas as operações atômicas fossem 1, as

21

duas distâncias de edição citadas seriam 5.

Figura 6 - Aplicação da distância de edição entre “combine” e “combination” e vice versa.

Fonte: Zezula, P., Amato, G., Dohnal, V., & Batko, M. (2006).

A distância de edição de árvores mede a dissimilaridade entre duas

árvores e segue um processo análogo á distância de edição, sendo que um conjunto

predefinido de operações (elas podem ser de inserção, deleção e reposição

também) ocorrem nos nodos de uma árvore a fim de transformá-la em outra e medir

a distância. Os pesos das operações podem ser iguais ou diferentes no caso de se

considerar a diferença de inserção ou deleção em níveis diferentes da árvore. Essa

métrica pode ser usada no cálculo de similaridade entre documentos XML devido ao

fato de esses documentos serem modelados em formato árvore.

O coeficiente de Jaccard mede a distância entre dois conjuntos de

dados, trata-se de uma razão entre as cardinalidades de interseção e união entre um

conjunto A e um conjunto B e a métrica é dada por:

(j1) d(A,B) = 1 - |A∩B| / |AUB|

Essa métrica possui utilidade em várias situações que se possa usar

conjuntos, dentre elas pode-se citar, por exemplo, os campos de interesses que são

pesquisados na internet onde, no caso, cada pessoa seria um conjunto e cada área

de interesse seria um dado a entrar em um conjunto(por exemplo futebol, notícias,

saúde, música, dentre outros). O coeficiente de Jaccard pode medir o quão similar é

o conjunto de interesses de uma pessoa A e de uma pessoa B através da fórmula

(j1). A aplicação dessa métrica á vetores, representada na figura 7, é conhecida

como a similaridade de Tanimoto, sendo que x. y é o produto escalar dos vetores x e

y e ||x|| é a norma euclidiana do vetor x.

22

Figura 7: função de distância Tanimoto.

Fonte: Zezula, P., Amato, G., Dohnal, V., & Batko, M. (2006).

A distância Hausdorff também opera sobre conjuntos, porém não se

calcula a similaridade a partir de elementos que estão em ambos os conjuntos ou

não estão em nenhum deles. Dados dois conjuntos, X e Y, primeiramente para cada

elemento em Y se calcula a distância até o elemento mais próximo em X, a maior

distância calculada será armazenado em C, depois para cada elemento de X se

calcula a sua distância até o elemento mais próximo em Y, a maior distância

calculada será armazenado em D. Assim, o cálculo da distância será: dH(X, Y) =

max{C, D}.

As explicações acima sobre métricas visam esclarecer que a escolha

de métricas para se calcular a distância entre determinados elementos deve ser

cuidadosa.

2.4 CONSULTAS POR SIMILARIDADE

Uma consulta por similaridade é uma consulta que usa um objeto de

consultaq como o centro do espaço métrico (ou objeto de consulta), uma função (ou

algumas funções) de distância f para se medir a dissimilaridade entre o objeto

central q e os outros objetos oi (com i variando de 1 até n, sendo n a quantidade de

dados complexos no banco) e alguns predicados que dão algumas especificações a

mais para a pesquisa ocorrer. Os predicados em questão usam algumas diretrizes

para a seleção de resultados. A diretriz vai determinar qual o é tipo de consulta por

similaridade que está em execução.

As diretrizes mais usadas são: a seleção de elementos o i que estejam a uma

distância mínima do objeto q e a seleção dos k elementos o i mais próximos do objeto

q. A escolha de uma diretriz para a busca ocorrer depende da necessidade da

consulta. Buscas que adotam a primeira diretriz correspondem ás buscas por um

alcance r, ou Range Query, definida como:

(C1) R(q, r) = { o X, d(o, q) ≤ r }

23

Nessa definição, X é um subconjunto do conjunto que contém todos os dados

e d(o, q) é a distância entre o objeto o e o objeto q.Para se entender o

funcionamento dessa busca, basta imaginarmos o objeto q como sendo um

comércio em uma cidade e os elementos o como sendo comércios ao redor do

comércio q. A busca R(q, r) retorna todos os objetos o que estejam dentro de um raio

de distância r do objeto q. Porém, os dados retornados dependerão do valor

especificado para o parâmetro r, caso não se tenha certo conhecimento sobre os

dados e métricas, consequentemente pode-se ter um parâmetro r mal especificado e

os dados retornados podem não ser satisfatórios. Por exemplo, configurar o valor r =

4 para a consulta Range cuja métrica adotada é a edit distance vai retornar objetos

que são distantes entre sí por, no máximo, 4 edições, porém usar o mesmo valor

para uma busca sobre imagens pode ser arriscado, trata-se de um conjunto cujas

distâncias são números reais e o valor 4 pode ser muito pequeno (resultando em

uma quantidade de dados retornada muito aquém do desejado, podendo inclusive

ser nula) ou muito grande(resultando em uma quantidade enorme e indesejável de

dados retornados) para a consulta.

Buscas que adotam a segunda diretriz correspondem á buscas que retornam

os k vizinhos mais próximos a um objeto q e o nome delas é kNN(K-Nearest-

Neighbor), também definida como:

(C2) kNN(q) = { R ⊆ X, |R| = k ˄ x R, y X – R : d(q, x) ≤ d(q, y) }

Para se entender o funcionamento dessa busca basta nos situarmos no

mesmo cenário proposto para a busca Range, desse modo o objeto q é um

comércio em uma cidade e os elementos o são os comércios ao redor de q, uma

busca 4NN retorna os 4 objetos o mais próximos ao objeto q. Pode ocorrer um

empate entre a distância de q para outros dois ou mais objetos, nesse caso é

arbitrário o critério para se escolher qual dos objetos é o mais próximo.

Há várias outras buscas com diferentes diretrizes, porém essas duas são as

mais usadas. Há buscas que são derivadas de uma das duas principais citadas aquí

como, por exemplo, a consulta reversa pelos k vizinhos mais próximos. Outras são

mais específicas e podem não ter relação alguma com uma das duas principais

como, por exemplo, a junção por similaridade. Caso uma busca não sirva para um

propósito específico, é possível fazer uma combinação entre as consultas com o

objeto de satisfazer o propósito em questão como, por exemplo, especificar que os

dados retornados devem ser os k mais próximos ao dado q e estar dentro de um raio

24

de distância r ao mesmo tempo, trata-se de uma combinação de uma consulta

Range com uma consulta kNN.

2.5 ÍNDICES

Índices são estruturas de dados auxiliares usados para organizar arquivos, o

objetivo dessa organização é reduzir o tempo de acesso aos dados, se aplica o

índice a atributos considerados chave única. Em sua forma mais simples, o índice

caracteriza-se por pares com uma associação entre cada valor de chave com o

respectivo endereço do registro, esses pares ocupam espaços a mais em disco e na

memória, porém a ausência de índice faz com que o acesso aos dados seja

sequencial e mais demorado de um modo geral.

O uso de índices neste trabalho é essencial devido á enorme quantidade de

dados existente. Não fosse a presença de índices, algumas consultas durariam dias,

ou até semanas, para concluirem. Este trabalho faz uso de duas estruturas de

indexação, a B-Tree e a Slim-Tree.

2.5.1 B-TREE

B-Tree é uma lista ordenada de valores dividida em intervalos, cada intervalo

é formado por uma tupla ou conjunto de tuplas e á cada intervalo é associado um

ponteiro para outros intervalos. Trata-se de uma árvore que pode ser considerada

uma generalização natural das árvores de pesquisa binária, os seus nodos são os

intervalos da lista ordenada e os tamanhos desses nodos equivale ao dobro de um

número padrão atribuido á árvore, sendo que esse número padrão é a ordem da

árvore.

Cada operação que envolva esses nodos demanda balanceamento na árvore

e o objetivo é minimizar o número de operações de movimentação dos dados em

alguma pesquisa ou alteração. Trata-se de um algoritmo que mantém os elementos

ordenados dentro da árvore e o seu funcionamento é diferente dependendo do tipo

de alteração, se a alteração é inserção o algoritmo é mais simples, e se a alteração

for uma deleção o algoritmo é mais complexo. De fato, a B-Tree oferece um

excelente desempenho para grandes números de consultas que envolvam

operadores de igualdade e procura por alcances, é por esse motivo que os bancos

de dados da Oracle usam esta árvore como índice funcional padrão. A figura 8 ilustra

25

a organização de números inteiros em uma B-Tree, os nodos folha são os leaf blocks

e os nodos ramo são os branch blocks. Figura 8. Indexação através de B-Tree.

Fonte: Oracle Corporation - Disponível em

<http://docs.oracle.com/cd/E11882_01/server.112/e25789/indexiot.htm#CNCPT1170>. Acesso em out.

2013

2.5.1 SLIM-TREE

A Slim-Tree é uma árvore de indexação usada pela ferramenta FMI-SiR para

indexação dos dados. Trata-se de uma árvore balanceada por pesos e construída de

baixo para cima. A sua estrutura é a mesma da M-Tree, porém o algoritmo de

inserção é otimizado com relação ao da M-Tree. Existem dois tipos de nodos na

Slim-Tree, nodos folha e nodos índices.

Na construção da Slim-Tree o espaço métrico é dividido em sub-regiões de

acordo com elementos pivôs e de acordo com raios mínimos pré-definidos. Em

seguida, constroi-se os nodos da árvore. Cada nodo contém um elemento

representativo, um raio de distância mínima cuja função é considerar elementos não

representativos como sendo elementos do nodo, distância até elementos não

26

representativos e ponteiros para outros nodos caso não se trate de nodos folha. O

processo de construção começa pelos nodos folha e prossegue com a construção

dos nodos índices, e para isso ocorrer necessita-se que tenha replicação de

elementos representativos nas sub-árvores. Os elementos representativos são

importantes pois guiarão a busca que responde a uma consulta e permitirá a poda

das sub-árvores que não contém resultados significativos. A figura 9 ilustra um

exemplo de Slim-Tree construída, note que os elementos dos nodos índices são

replicados com relação ao nodo folha.Figura 9. Estrutura da M-Tree, a mesma estrutura da Slim-Tree.

Fonte: Zezula, P., Amato, G., Dohnal, V., & Batko, M. (2006).

2.6 PADRÃO MPEG-7

Este padrão foi desenvolvido por um grupo chamado MPEG (Moving Picture

Expert Group) que faz parte da Organização Internacional de Padrões/Comissão

Eletrônica Internacional (em inglês International Standard Organization / International

Electronic Comission ou ISO/IEC). Esse grupo é responsável por desenvolver

padrões internacionais para compressão, descompressão, processamento e

representação codificada de vídeos, imagens, aúdios e a combinação deles.

A motivação para a criação do MPEG-7 surgiu com a necessidade de atribuir

27

significado a conteúdos audiovisuais para se executar tarefas que transcendem

simples buscas e filtros como, por exemplo, compressão de imagens e conversão de

mídias. O grupo desenvolvedor que assumiu essa responsabilidade criou esse

padrão e fez dele uma extensão de outros padrões já criados por eles próprios tais

como MPEG-1, MPEG-2, MPEG-4 e MPEG-21. O primeiro dos quatro padrões

possui como característica principal a viabilização do armazenamento e resgate de

dados multimídia na mídia de armazenamento, o segundo possui como principal

característica o armazenamento de vídeos em diferentes níveis de qualidade,

inclusive trata-se de um padrão usado para se trabalhar com imagens de alta

definição. Esses dois primeiros padrões permitem o uso de vídeo MP3 de CD-ROM

em transmissão de áudio digital e em televisão digital via compressão dos dados. O

terceiro dos quatro padrões citados oferece tecnologias para satisfazer as

necessidades de autores, provedores de serviço e usuários finais de modo a,

respectivamente, evitar problemas com registros autorais, formatos incompatíveis e

reprodutores de mídias incompatíveis. O último deles, MPEG-21, é um padrão para

entrega de conteúdos e gerenciamento de direitos. O MPEG-7 é um padrão que

estende todos os outros três e tem como principal objetivo padronizar uma interface

comum para a descrição de materiais multimídia. Nesse contexto se faz o uso de

metadados para facilitar as operações sobre dados e oferecer suporte à

administração dos mesmos. Os três principais elementos do MPEG-7 são:

Descritores e Esquemas de Descrição: Segundo J.R. Smith (2001,

p.748, tradução nossa) Esquemas de Descrição são estruturas de

metadados que descrevem e registram conteúdos audiovisuais.

Descritores são informações que descrevem sintaticamente e

semanticamente alguma característica.

Linguagem para definição de descrição: com ela é possível definir e

criar os Descritores e os Esquemas de Descrição.

Ferramentas de sistema e implementação de referências: Elas se

tornam necessárias para suportar a representação em codificação

binária dos arquivos a fim de oferecer benefícios tais como transmissão

e armazenamento eficiente de dados, multiplexação de descrições,

sincronização de descrições com o conteúdo, dentre outros.

2.6.1 ARQUITETURA DO MPEG-7

28

Olivier Avaro e Philippe Salembier (2001, p. 760) afirmam que MPEG-7 é uma

“caixa de ferramentas” padrão e apresentam um resumo que explica como funciona

a estrutura de componentes responsáveis pelo processamento das informações

MPEG-7 anexadas ao conteúdo. Trata-se de um esquema que mostra o fluxo de

informações entre a mídia de armazenamento/transmissão e a aplicação em

questão, o projeto apresentado é um resumo, muitos detalhes foram abstraídos por

questões didáticas.

A arquitetura é formada por quatro camadas e a sua estrutura é mostrada na

figura 10. A primeira camada, de cima para baixo, é a mídia de transmissão e

armazenamento que manda dados MPEG-7 inteiros ou fragmentados para a

segunda camada, chamada de camada de entrega. Os dados MPEG-7 podem ter

chego na camada sem os seus conteúdos associados e para resolver isso ocorre a

demultiplexação das informações, ou seja, as informações que chegaram

multiplexadas e separadas se juntarão. Logo depois da demultiplexação as

informações são enviadas á terceira camada, chamada de camada de compressão.

Nessa fase Unidades de Acesso (tradução literal de “Acess Unit”) são enviadas á

essa terceira camada. Segundo Olivier Avaro e Philippe Salembier (2001, p. 761),

uma Unidade de Acesso é a menor unidade de informação á qual um dado temporal

pode ser atribuído. Elas podem ser descrições MPEG-7 inteiras ou um fragmento de

uma descrição MPEG-7, caso uma Unidade de Acesso seja um fragmento de uma

descrição, ela se unirá aos outros fragmentos com o auxílio de informações

anexadas a ela na camada de compressão.

29

Figura 10 - Arquitetura do Sistema MPEG-7

Fonte: Olivier e Salembier(2001, p.762).

Essas unidades de acessos contêm três informações, elas são:

O tipo de comando a ser executado no terminal (adicionar, excluir,

atualizar, etc.)

A descrição MPEG-7 a ser usada na modificação (seja ela uma

descrição inteira ou um fragmento)

O local no nodo onde a modificação foi feita

Quando a Unidade de Acesso chegar à camada de compressão, a descrição

MPEG-7 inteira será reconstruída de acordo com as informações contidas nela. A

figura 11 ilustra esse processo. Na parte superior da figura, a descrição MPEG-7 não

é fragmentada e ela é transmitida sem quebras, já na parte inferior da figura a

mesma descrição é quebrada em três pedaços, transmitida e reconstruída na

camada de compressão, assim ao chegar na camada de compressão olha-se o tipo

de comando a ser executado no terminal e o local no nodo onde a modificação foi

feita para se fazer a remontagem.

30

Figura 11 - Descrições MPEG-7 e Unidades de Acesso

Fonte: Olivier e Salembier(2001, p.763).

2.6.2 DESCRITORES MPEG-7

Esta seção explica os descritores MPEG-7 contidos nos dados do CoPhIR.

Trata-se de metadados que descrevem imagens no nível físico. Esses metadados

podem descrever características de cor, textura ou formato de uma imagem.

Segundo Bolettieri et al. (2009), constatou-se, através de experimentos, que a

importância desses descritores se deve ao fato de eles serem melhores para

recuperação de imagens de cunho geral. De fato, este trabalho usa imagens de

cunho geral e os descritores MPEG-7 devem ser muito úteis. Dos descritores

MPEG-7 existentes, o CoPhIR contém três descritores de cor e dois descritores de

textura, o conjunto de descritores de cor é formado pelos descritores Scalable Color

Descriptor (SCD), Color Layout Descriptor (CLD) e Color Structure Descriptor (CSD)

e o conjunto de descritores de textura é formado pelos descritores Edge Histogram

Descriptor (EHD) e Homogeneous Texture Descriptor (HTD). Dependendo da forma

como são extraídos, esses descritores podem ser detalhados de diversas formas.

Bolettieri et al. (2009) descreve a maneira como esses cinco descritores encontram-

se detalhados no CoPhIR. Vale lembrar que existem outros descritores do padrão

MPEG-7 além desses cinco citados, porém o CoPhIR contém somente esses cinco.

31

O descritor SCD é derivado de um histograma de cores definido no espaço de

cores Hue-Saturation-Value. Os seus valores, após extraídos, são normalizados,

não-linearmente mapeados em um formato inteiro de quatro bits e transformados

segundo a transformação Haar. Para esse descritor usa-se a versão de 64

coeficientes.

O descritor CSD é baseado no histograma de cores, mas o seu objetivo é

identificar a localização da distribuição de cores usando-se uma janela com pequena

estrutura. Usa-se uma versão de 64 coeficientes para esse descritor.

O descritor CLD tem origem na aplicação da transformação DCT em um array

2D com uma representação local de cores cujo espaço de cor é Y, Cr ou Cb. Trata-

se de um descritor que captura informações locais e espaciais. Usa-se uma versão

de 12 coeficientes para esse descritor.

O descritor EHD representa distribuição de bordas locais na imagem. A

imagem é dividida em 4x4 sub-imagens, depois cada sub-imagem é categorizada

em cinco tipos conforme a borda nela contida: vertical, horizontal, 45 graus na

diagonal, 135 graus na diagonal e bordas sem direção. Essas informações são

transformadas em um vetor de 80 coeficientes.

O descritor HTD usa informações de regiões de textura através de energia e

desvio de energia de um conjunto de 30 canais de frequência. Usa-se a versão mais

completa desse descritor, a qual contém 62 coeficientes.

32

3ESTUDOS DOS DESCRITORES DE CONTEÚDO E MÉTRICAS DE SIMILARIDADE PARA O PADRAO MPEG-7

Esta seção descreve e compara alguns descritores e métricas de similaridade

compatíveis com o padrão MPEG-7. Não é possível avaliar a eficiência de uma

métrica sem levar em conta os descritores usados no processo de recuperação por

similaridade. Por esse motivo, os estudos realizados avaliam o(s) descritor(es)

usado(s) e a métrica compatível com o(s) correspondente(s) descritor(es). Trata-se

de uma avaliação de estratégias para recuperação eficiente de imagens por

similaridade de conteúdo. Nos trabalhos estudados, observa-se o uso de várias

estratégias para se obter métricas e descritores eficientes. Cada estudo propõe uma

metodologia diferente para se atingir tal objetivo. Dentre as várias estratégias, estão:

fazer mudanças nos descritores das imagens para simplificar ou enfatizar

características específicas de certos descritores, fazer uso de dois descritores

(geralmente um de cor e outro de textura) em uma função de similaridade para

retornar imagens que melhor se assemelhem, fazer uso de feedback do usuário para

melhorar a busca, modificar o algoritmo de extração de características para se obter

descritores otimizados cujo uso resulte em maior eficiência. Em cada um dos

diferentes trabalhos, após a aplicação da estratégia em questão, se usa uma medida

de desempenho para se avaliar a eficiência das métricas e descritores dessa

estratégia.

O restante dessa seção está organizado da seguinte maneira. A seção 3.1

descreve medidas de desempenho para recuperação de informação e aborda em

detalhes a medida de desempenho sugerida pelo grupo MPEG para se avaliar o

mecanismo de busca. A seção 3.2 aborda as diferentes estratégias de obtenção de

um mecanismo eficiente de busca por similaridade e avalia as mais úteis e eficientes

para se usar na base de dados do CoPhIR.

3.1 MEDIDAS DE DESEMPENHO PARA RECUPERAÇÃO DE INFORMAÇÃO

Depois de se aplicar a busca por similaridade e se obter um conjunto de

dados similares a um dado de consulta, se avalia o quão similares os dados

resultantes são como dado de consulta. Medidas da qualidade de resultados avaliam

o desempenho das estratégias de recuperação de informação. Estas avaliações

33

podem ser diferentes de acordo com o tipo de dado com o qual se está trabalhando

(vídeos, imagens, áudio, dentre outros). Este trabalho aborda a avaliação de

resultados de buscas por similaridade sobre imagens.

Diferentes medidas de desempenho foram usadas nos trabalhos estudados.

Elas vão desde as clássicas cobertura e precisão até poluição de clusters de

imagens similares. Desse modo, não foi possível comparar vários dos estudos entre

si. Cada autor teve uma justificativa diferente para usar determinadas formas de

medição de desempenho. No entanto, algumas medidas foram adotadas por mais

de um autor. As medidas de eficiência que se verificou serem mais frequentemente

usadas nos trabalhos analisados são as desenvolvidas pelo grupo do MPEG:

Retrieval Rank (RR) e seus derivados tais como Normalized Modified Retrieval Rank

(NMRR) e Averaged Normalized Modified Retrieval Rank (ANMRR). Essas medidas

de desempenho estão descritas no trabalho de [Manjunath et al., 2009]. O clássico

conceito de cobertura e precisão não foi tão usado quanto essas medidas. Os

motivos são vários, porém a razão principal pode ser a credibilidade da medida RR e

seus derivados, pois foram desenvolvidos pelo próprio grupo MPEG, o mesmo grupo

que criou os descritores de cor e textura usados hoje. RR e seus derivados

penalizam a não recuperação de resultados relevantes e levam em conta o quão

relevante são os objetos relevantes recuperados. [Missaoui et al., 2001], por

exemplo, citam dois motivos pelos quais precisão e cobertura não seriam bons o

suficiente para avaliar efetivamente uma busca por similaridade sobre imagens: (i)

não levam em conta o peso de cada imagem no processo de recuperação de

imagens, sendo o peso da imagem definido pelo seu ranking nos resultados e (ii)

determinar um conjunto de imagens relevantes é algo mais subjetivo e dá mais

margem a diferentes interpretações do que determinar um conjunto de documentos

texto relevantes.

As medidas NMRR e ANMRR são baseadas em um teste feito pelo grupo

MPEG para recuperação de imagens similares de conjuntos de dados específicos. A

resposta conhecida (perfeita) é chamada regra ouro (Ground Truth). Pode-se incluir

a percepção humana para formar o conjunto de critérios perfeitos e obter a regra

ouro. Dada uma busca por similaridade, a regra ouro é a lista ordenada das imagens

mais similares a imagem de consulta. As medidas NMRR e ANMRR levam em

consideração a ordem que determinada imagem similar é recuperada, ou seja, se o

processo de recuperação coloca as imagens mais similares a imagem de consulta

34

no topo da lista ordenada de resultados. O cálculo de NMRR vem de uma

normalização de MRR (Modified Retrieval Rank) que, por sua vez, vem de uma

modificação de AVR (Average Ranking), sendo esse último uma média aritmética

dos valores do Rank k das imagens contidas no Ground Truth.

As fórmulas de (1) a (6) representam as medidas de desempenho da família

MPEG-7. O Rank de uma imagem na k-ésima posição no conjunto Ground Truth é a

posição dessa imagem na lista ordenada de resultados retornados por um método

de busca (primeira, segunda, terceira, ...). NG(q) é o número de imagens similares a

imagem q segundo algum critério. K(q), definido na equação (2), é uma constante

que define um valor máximo que o rank de uma imagem pode assumir. K(q) assume

o maior dentre os valores 4*NG(q), para q sendo a imagem da consulta em questão,

e 2*NG(q), para q sendo todas as imagens usadas para consulta até o momento.

Caso o rank de uma imagem seja maior que K(q), atribui-se ao seu rank o valor

1,25*K(q). Essa atribuição de valor para o rank da imagem é considerada uma

penalidade para o processo de recuperação de imagens porque o alto valor de um

ranking colabora para o valor do ANMRR e NMRR serem maiores. Maiores detalhes

podem ser encontrados em [Manjunath et al.] e [Ohm et al.]. 

Para exemplificar o uso dessas medidas de desempenho, suponhamos, para

uma dada imagem q, que NG(q) = 5, ou seja, temos um conjunto de 5 imagens

similares a imagem q segundo algum critério. Esse critério depende da montagem

do conjunto de dados ground truth. Se 4*NG(q), para q sendo o objeto de consulta

em questão, for o menor valor, então K(q) = 20. Para as imagens dentro do Ground

Truth, uma estratégia de busca por similaridade pode apresentar os seguintes

resultados:

35

Tabela 1. Valores de k e seu respectivo Rank(k), Rank*(k) e K(q)

K Rank(k) Rank*(k) K(q)1 8 8 82 50 25 203 143 25 204 2 2 25 200 25 20

O valor k é a ordem da imagem no Ground Truth, Rank(k) é a posição que a

imagem do Ground Truth retorna na busca, Rank*(k) é um número que avalia o

“peso” da imagem do Ground Truth, o cálculo de Rank*(k) é feito em (1). Através

desse exemplo vemos que, quanto mais cedo uma imagem dentro do Ground Truth

é recuperada, menor é o resultado das somas de Rank*(k). Os valores de AVR(q),

MRR(q) e NMRR(q) são calculados logo abaixo segundo as fórmulas descritas.

AVR(q) = 85/5 = 17

MRR(q) = 17 - 3 = 14

NMRR(q) = 14 / (25 - 3) = 14 / 22 = 7/11 = 0,64

Para se calcular ANMRR(q), é necessário se fazer outras consultas, calcular a

soma de todos os valores NMRR(q) obtidos  com as outras consultas e dividir pelo

número de consultas. Assim, o valor final avaliaria melhor a implementação da busca

como um todo. Se a estratégia de busca por similaridade fosse diferente, para o

mesmo q poderíamos ter valores de Rank(k) diferentes e, consequentemente,

valores de AVR(q), MRR(q), NMRR(q) e ANMRR(q) diferentes.

3.2 ESTRATÉGIAS PARA RECUPERAÇÃO EFICIENTE DE IMAGENS POR SIMILARIDADE DE CONTEÚDO

Essa seção aborda as diferentes estratégias para recuperação eficiente de

imagens por similaridade de conteúdo. No geral, as estratégias diferem entre si pela

métrica e pelos descritores a serem usados com as métricas na busca por

similaridade em questão, porém algumas estratégias apresentam outras variações,

uma delas é uma otimização na extração de características e uso de mecanismo de

feedback continuo como um complemento para melhorar a eficácia da busca.

Os principais métodos abordados para uma possível solução encontram-se

em subseções separadas dentro dessa seção. Desse modo, A seção 3.1 aborda um

método de busca que usa mesclagem de paletas de histogramas com uso contínuo

de feedback. A seção 3.2 aborda um método de busca que usa compactação do

36

descritor de cor SCD (Scalable Color Descriptor) e HTD(Homogeneous Texture

Descriptor). A seção 3.3 aborda um método de busca que modifica um dos

descritores de cor (DCD, Dominant Color Descriptor) e um de textura(EHD, Edge

Histogram Descriptor) para fazer a busca ficar mais eficiente. A seção 3.4 aborda um

método de busca que usa um descritor sintetizado chamado DCSD (Dominant Color

Structure Descriptor). A seção 3.5 aborda a estratégia de junção de um descritor de

textura com um ou mais descritores de cor para fazer a busca ficar mais eficiente. A

seção 3.6 aborda estratégias estudadas que não puderam ser comparadas com as

outras estratégias devido ao método de avaliação usada no processo. A seção 3.7

exibe as tabelas referentes aos experimentos e mostra um quadro comparativo de

todos os experimentos realizados, sendo que os detalhes desse quadro dizem

respeito á métricas usadas, descritores usados e melhor índice obtido por cada

experimento.

3.2.1 MESCLAGEM DE PALETAS DE HISTOGRAMAS COM USO CONTÍNUO DE FEEDBACK

No trabalho de [Wong e Po, 2004], o autor sugere aplicar uma técnica

chamada histograma de mistura de paletas (Merged Palette Histogram, ou MPH)

nos descritores de cores dominantes (Dominant Color Descriptor, ou DCD) e usar

um mecanismo de relevância de feedback. Nesta técnica uma imagem Q serve

como objeto da busca e os objetos no banco de dados mais similares á Q são

resgatados. Duas métricas diferentes são usadas para esse resgate (por

consequência, se obtém dois resultados diferentes), uma das métricas é a distância

quadrática de histogramas (Quadratic Histogram Distance Measure em inglês, ou

QHDM) e a outra delas é a distância de histogramas com paletas mescladas

(Merged Palette Histogram Similarity Measure, ou MPHSM). O objetivo de se usar

as duas métricas é comparar o resultado que cada uma produz.

Após a primeira busca por similaridade ocorrer, o usuário irá selecionar as

imagens que ele considera mais similares á imagem Q. Essas imagens escolhidas

terão as suas paletas mescladas através de um método específico de mesclagem de

paletas e o resultado do processo fornecerá uma nova imagem com paletas

mescladas. O objetivo é obter uma nova paleta que represente as cores

selecionadas pelo usuário, porém a mesclagem de paletas torna-se necessária

devido á uma limitação imposta pelo próprio padrão MPEG para a definição do

37

descritor de cor, a limitação é o número de paletas permitido para o descritor. Essa

técnica de mistura de paletas contorna esse problema pois ela é um modo de

representar várias cores em uma paleta só sem aumentar o número de cores

diferentes. O processo de obter uma nova imagem com paletas fundidas é iterativo e

a iteração acaba quando houver uma distância euclidiana mínima entre as paletas

do descritor, essa distância mínima é um limite configurado arbitrariamente, porém o

autor sugere um número entre 10 e 15 para esse valor. Assim, se obtém uma nova

imagem com paletas mescladas que será usada como o objeto Q em uma nova

busca, a expectativa é para o desempenho dessa nova busca ser melhor que a

anterior, porém em alguns casos isso não acontece, esse resultado varia muito de

imagem para imagem.

Com relação ás métricas usadas e representação dos descritores,

esclarecidas em um dos trabalhos de [Wang e Po, 2003], os descritores de cor

dominante estão representados em (7), (8) e (9). O Descritor de Cor Dominante F é

representado por ci e pi , sendo que esses dois valores são, respectivamente, o vetor

de cor de índice i e a frequência de sua ocorrência. Para se calcular a distância

entre dois DCDs, usa-se a distância quadrática de histogramas (ou Quadratic

Histogram Distance Measure, ou QHDM) cuja fórmula está especificada em (10) e o

valor de a na fórmula está especificado em (11).

Td é a distância euclidiana mínima entre as cores da paleta e ela serve como

parâmetro para formar o componente aij. Sem essa consideração para o cálculo do

QHDM haveria cores não dominantes sendo dominantes.

O cálculo do MPHSM caracteriza-se pela obtenção de cor após mesclagem

de paletas e seguida intersecção dos novos histogramas de paletas mescladas. A

mesclagem de paletas, indicada pela fórmula (12), é uma junção entre uma cor i e

38

uma cor j. p1mi=p1i caso a distância entre cmi e cli seja menor ou igual a Td, 0 caso

contrário, pensamento análogo se tem com o valor de p2mi. O cálculo da MPHSM é

definida como a intersecção dos dois histogramas em (15):

Quanto maior o valor de  I(F1m, F2m), mais similares são as duas imagens,

se esse valor for igual á 1 é porque as imagens são iguais. Essas métricas foram

aplicadas em um conjunto de dados com 1000 imagens do COREL e o resultado dos

experimentos estao na tabela 3. A idéia de usar um só descritor para a recuperação

dos dados não é tão recomendada segundo [Namuduri e Dorairaj, 2004], um

descritor de textura teria que ser usado juntamente com um de cor para tornar a

busca mais significativa e robusta. Porém, esse problema é compensado com o uso

de uma relevância de feedback que pega as imagens e mescla as paletas para

formar novas busca.

Há alguns questionamentos no uso dessa estratégia. Os resultados mostram

que o desempenho varia bastante de imagem para imagem com o passar das

iterações nas buscas, a mesma estratégia aplicada ao cophir pode originar uma

variação de desempenho maior ou menor, pois se trata de um banco de dados com

muito mais dados. Mesmo com a possibilidade de se considerar essa técnica uma

forte candidata a ser a mais eficiente na busca por similaridade, existem outras

estratégias que oferecem um desempenho melhor.

3.2.2 COMPACTAÇÃO NOS DESCRITORES SCD E HTD

Em [Namuduri e Dorairaj, 2004], o autor usa uma representação compacta do

descritor SCD (Scalable Color Descriptor) e HTD(Homogeneous Texture Descriptor)

para tornar a busca mais eficiente segundo as métricas de desempenho MPEG-7 já

mencionadas. O SCD é um descritor de histograma de cores computado a partir do

espaço de cores HSV(Hue, Saturation, Value, ou Matriz, Saturação e Valor em

português).  O espaço HSV envolvido possui 16 níveis possíveis de representação

de H(Hue), 4 níveis de representação de S(Saturation) e 4 níveis de representação

39

de V(Value). Inicialmente, esse espaço de cor é representado através de 256 bins,

truncados com 11 bits de representação cada um e mapeado para uma

representação de 4 bits. Para representar de forma compacta esse descritor, é

usada a transformação Haar, trata-se de uma transformação que envolve adição e

subtração de bins adjacentes, sendo que a soma de bins adjacentes resulta em

coeficientes de passa-baixa e a subtração resulta em coeficientes de passa-alta. A

representação compacta consiste em usar os coeficientes de passa-alta e a

justificativa, segundo [Manjunath et al., 2001] é que esse coeficiente contém

informações da imagem em um nível melhor de resolução usando menos valores. O

processo é iterativo e, a cada iteração, o número de coeficiente se reduz até se

chegar em um nível com poucos bins de representação que, no caso citado, é 16

bins. A figura 12 exemplifica o processo citado.  Figura 12. A transformação Haar e a obtenção de coeficientes passa-baixa e coeficientes

passa-alta

Fonte: Ohm et al. (2001, p.21)

O descritor de textura HTD é representado através de um vetor de valores

que mostram os níveis de energia calculados para a imagem. Níveis de energia são

variações de textura em determinadas regiões da imagem. Os dois primeiros

componentes do vetor, desvio médio e desvio padrão, são de domínio espacial, ou

seja, descrevem a mudança de textura na imagem de um modo geral, e os outros 60

componentes são partes do domínio de frequência, sendo que 30 deles representam

o componente energia e os outros 30 representam o componente desvio de energia.

O processo de extração desse descritor nos permite entender melhor o que é

cada componente do vetor de característica em questão. O extrator divide a imagem

40

em 30 áreas diferentes chamadas canais, primeiro se calcula os componentes

espaciais, para depois se calcular os componentes que dizem respeito á frequência

(energia e desvio de energia), no trabalho de [Shao et al., 2009] é possível analisar

com detalhes o processo de construção do descritor.

Existem três formas distintas de se representar a forma compacta  desse

descritor, são elas: representação através de agrupamento de bits, representação

baseada em uma correlação com um padrão e o terceiro é a representação através

de pesos. Em ambos os 3 métodos se leva em consideração apenas 30 bits, sendo

cada bit o sinal da parte imaginária da energia ou desvio de energia (tanto energia

como desvio de energia são números complexos e possuem uma parte real e uma

parte imaginária). A primeira estratégia consiste em agrupar os 30 bits em 10 grupos

de 3 e, em cada grupo, somar os bits para se obter um digito, assim se obtém 10

dígitos, ou seja, se obtém um número de 10 dígitos que servirá como ctd. No

segundo método esses 30 bits passam por uma operação XOR com outro número

representado através de 30 bits(sendo esse o referencial) e, depois dessa operação,

se obtém 10 grupos de 3 bits que, juntos, formarão um número decimal de 10 dígitos

(cada grupo de 3 bits representaria um digito) para representar a textura (ctd, ou

compact texture descriptor). O terceiro método confere pesos a cada bit para depois

todos serem somados e se tornarem um só número. Os 16 bits de representação de

cor compacta são convertidos em um único número decimal que representará CCD,

o número obtido através da representação compacta de textura é o CTD. Seja CCDi

e CTDi os descritores obtidos da imagem no banco de dados e seja CCDq e CTDq

os descritores obtidos da imagem de consulta, a métrica que calcularia a distância

seria:

Os experimentos realizados com essas métricas tiveram seu desempenho

medido através da métrica ANMRR e está computada na tabela 4. A escolha dessa

estratégia é parcialmente satisfatória, pois se trata de uma estratégia que envolve

descritores já extraídos e o ANMRR obtido é satisfatório se comparado com os

outros experimentos realizados, porém o descritor EHD do autor que propôs essa

compactação não coincide com o EHD do CoPhIR.

3.2.3 MODIFICAÇÃO NO DCD E EHD

41

No trabalho de [Yanhong et al., 2009] a estratégia de busca por similaridade

eficiente ocorre de outra forma, usa-se descritor de cor dominante (Dominant Color

Descriptor, ou DCD) e descritor de bordas de histograma (Edge Histogram

Descriptor, ou EHD) modificados. Nos procedimentos, calculam-se os valores para o

descritor da maneira mostrada em (15), tal que h[i] é o valor do histograma de cores

após a extração, EH é o valor parcial do histograma, GH é a textura global do

histograma e SGH é a textura global dividida do histograma. Esses três valores de

histograma são obtidos através da extração de características da forma como o

autor propõe. A extração da característica de cor é feita através de uma otimização

no algoritmo generalizado de Lloyd e a extração do descritor de textura é feito

através de um algoritmo de divisão otimizada da imagem em segmentos e seguida

extração através desses segmentos, no entanto o autor não fornece o nome desse

último algoritmo. Os experimentos foram realizados em um conjunto de 1000

imagens de flores, animais e cenários naturais, a medida de desempenho MPEG-7

está especificada na tabela 5. Quanto ás métricas, a métrica para cor e textura estão

mencionadas em (17) e (18), sendo que (17) corresponde a d1 e (18) corresponde a

d2. Depois, d1 e d2 são normalizados da seguinte forma: se d1 é um valor no intervalo

[0, max1] e d2 é um valor no intervalo [0, max2], então d1 = (max1 – d1)/max1 e d2 =

(max2 – d2)/max2, sem essa normalização d1 e d2 teriam pesos diferentes no cálculo

da métrica final que envolve d1 e d2. Após a normalização, se calcula a medida final

d=w1*d1 + w2*d2 , sendo que w1 e w2 são os pesos referentes ao quão importante é a

medida d1 e d2 no cálculo de d.

Apesar do ótimo ANMRR obtido de 0,0920, o grande problema dessa técnica

é que o coração da otimização está na modificação da extração de características.

Para experimentos a serem realizados no cophir essa estratégia pode não servir,

pois o conteúdo disponível para experimentos são os vetores de características já

extraídos. Se o grupo de pesquisadores usa o algoritmo GLA otimizado para

extração de características e a extração otimizada de textura conforme indica

[Yanhong et al., 2009], é possível aplicar a estratégia.

42

3.2.4 SÍNTESE E USO DO DESCRITOR DCSD (DOMINANT COLOR STRUCTURE DESCRIPTOR)

No trabalho de [Wong et al., 2007] há a criação de um descritor de cor

chamado Dominant Color Structure Descriptor(DCSD), um descritor que possui

muitas semelhanças com o Dominant Color Descriptor (DCD). Com um novo

descritor que represente a organização das cores consideradas dominantes em uma

imagem é possível obter ótimos indices ANMRR, a prova disso encontra-se nos

experimentos feitos nesse trabalho. Através dos experimentos, realizados em cima

de uma base de dados com 5466 imagens, se obteve um índice ANMRR de 0.0993

com um DCSD de 8 cores, trata-se de um índice ótimo com relação a muitos outros

comumente obtidos em vários outros experimentos, o resultado encontra-se em

detalhes na tabela 8.

O nome desse descritor pode sugerir uma combinação dos descritores DCD e

CSD (Color Structure Descriptor, ou Descritor de Estrutura de Cor), porém a forma

de se obter esse descritor é diferente. O processo de obtenção desse descritor

ocorre através da extração de características da imagem em dois passos, o primeiro

chama-se quantização de cores e o segundo chama-se escaneamento de estruturas

de blocos. Primeiramente se aplica o algoritmo generalizado de Lloyd na imagem

para se obter um conjunto de cores dominantes Cq = {c1, c2, …, cn}, desse conjunto de

cores dominantes realiza-se o primeiro passo: aplicar um filtro para reduzir a

quantidade de cores nesse conjunto.

Para se realizar o filtro usa-se (19) e (20). Através de (19) e (20) observa-se

43

que cxy vai ser descartado (ter seu valor anulado) caso a distância entre ele e o

elemento c mais próximo a ele não exceder Td(um parâmetro pré estabelecido para

teste).

O segundo passo consiste em um escaneamento nos blocos da imagem para

se obter a frequência com que cada cor ocorre em cada bloco e para se obter a

posição das cores registradas. O processo encontra-se resumido na Figura 13 e o

seu fim já resulta o descritor DCSD. Figura 13. Obtenção do descritor DCSD em etapas

Fonte: Wong et al. (2007, p.613)

Embora o objetivo principal do trabalho de [Wong et al., 2007] tenha sido

desenvolver esse novo descritor, o experimento envolve testes com os outros

descritores modificados com o uso de métricas diferentes para cada um. Os

resultados obtidos, se comparados com os outros explorados nesse trabalho, é

considerado muito bom, porém houve modificações na forma de extração do

descritor para se obter descritores mais eficientes e, por esse motivo, essa

estratégia de uma busca por similaridade eficiente não é aplicável nos dados do

CoPhIR.

3.2.5 COMBINAÇÃO DE UM DESCRITOR DE TEXTURA COM VÁRIOS DESCRITORES DE COR

Em [Bleschke, 2009] o autor realiza buscas por similaridade em um conjunto

de 1000 imagens e divide essas buscas por similaridade em conjuntos que se

diferem pelos descritores e pela métrica usados em cada uma. Cada conjunto de

buscas por similaridade foi avaliado e comparado com os outros conjuntos. O autor

faz uso de quatro descritores em seu trabalho de avaliações de buscas, elas são: o

44

descritor de textura EHD (Edge Histogram Descriptor) e os descritores de cor SCD

(Scalable Color Descriptor), CSD (Color Structure Descriptor) e CLD (Color Layout

Descriptor). Primeiramente o autor apresenta informações sobre cada um dos

descritores tais como descrição, formas de extração e a métrica que usa o descritor

em questão, depois o autor apresenta um método para combinar diferentes métricas

usando uma outra métrica, desse modo se obtém o resultado da busca de ambas as

métricas.

Para o descritor EHD, o autor explica o método para a sua extração e a

métrica usada para este descritor em particular. O processo de extração já foi

executado pelo grupo de pesquisadores do CoPhIR e não vem ao caso, e a métrica

usada para o cálculo está especificada em (21). A Figura 14 fornece uma explicação

visual para cada componente da fórmula. Cada bloco de borda é composto de 5 bins

(5 valores em formato binário que representam o segmento em questão) e a imagem

é dividida em 16 blocos de bordas locais, um bloco de borda global e 13 blocos de

bordas semilocais, os somatórios em (21) levam em conta cada conjunto de blocos

multiplicados pelo respectivo número de bins em cada bloco, sendo que o conjunto

de blocos globais ainda recebe uma multiplicação a mais por ser considerado mais

relevante para se representar melhor a distância. Figura 14. Extração dos componentes do descritor EHD

Fonte: Pattanaik, Bhalke (2012, p.22)

45

O descritor SCD representa o espaço codificado de cores HSV para as figuras

envolvidas no processo. Para o descritor SCD, o autor esclarece o processo de

extração e a métrica para se calcular distâncias entre imagens usando SCD. A

métrica para seu cálculo se resume á norma L1, ou seja, se resume á distância

Manhattan entre os números que representam os bins do espaço de cores HSV.

Caso somente o sinal de bit seja usado, a norma L1 se transforma na distância de

Hamming, fato que reduz a complexidade computacional da busca.

O CSD é parecido com o histograma de cores, porém esse descritor

representa a frequência com que cada cor aparece na imagem e mostra

informações sobre a organização espacial das cores. O autor ressalta que esse

descritor é idêntico ao histograma de cores quanto á sua forma, porém os conteúdos

semânticos se diferenciam. Nesses experimentos realizados pelo autor, realiza-se o

cálculo da similaridade entre imagens usando esse descritor calculando-se a norma

L1 entre cada componente desse descritor, esse cálculo é simples pois a sua

estrutura consiste em um histograma de cores.

O CLD representa a distribuição espacial de cor nas imagens. Trata-se de um

descritor obtido através de uma DCT (Discrete Cosine Transform, ou Transformação

Discreta de Cosseno) dos valores em um espaço de cor YCrCb. O cálculo dessa

métrica, representado em (22), segue algumas diretrizes, a começar pelos pesos w.

Os pesos wyi , wci e wri entram no cálculo dessa métrica pois os componentes Y, Cr

e Cb possuem frequências diferentes após a transformação DCT e precisam ser

ajustados para se obter uma distância mais próxima da realidade. Outra diretriz a ser

seguida são os valores que i assume, os valores que i assume segue uma ordem

zigue-zague na matriz de elementos de Y, Cr e Cb.

46

A combinação dos valores das métricas segue o método Late Fusion Method

(a tradução ao pé da letra seria Método de Fusão Atrasada) que consiste em

calcular um valor normalizado de cor, um valor normalizado de textura e calcular um

valor Q que representa a soma dos pesos dos valores normalizados de cor e textura,

esses valores estão representados em (23), (24) e (25). O peso w é um valor tal que

0 ≤ w ≤ 1, o valor atribuído a w vai depender do enfoque que se dá ao descritor de

cor e ao descritor de textura, se o peso concedido a nT é w, o peso concedido a nC

é 1 - w.

Inicialmente o autor avalia a recuperação de dados em cima de buscas que

usam descritores individualmente, os resultados ANMRR estão expostos na tabela 6

e depois ele combina os descritores usando a métrica Late Fusion Method, os

valores combinados foram: EHD+CLD, EHD+SCD, EHD+CSD, EHD+(CLD, SCD,

CSD) e os resultados obtidos estão representados na tabela 7. O melhor resultado

ANMRR é satisfatório, porém o descritor que o autor usa na combinação de

descritores é composto pelo descritor Scalable Color Descriptor com 256

coeficientes, trata-se de um descritor que não consta nos dados do CoPhIR e não é

possível obtê-lo sem o processo de extração de características.

3.2.6 OUTRAS ESTRATÉGIAS ESTUDADAS

Outras sugestões de melhores métricas de desempenho também foram

sugeridas em vários outros trabalhos, tal como um comparativo entre as métricas

47

sugeridas pelo padrão MPEG-7 e as de uso geral para cada descritor feito por

[Eidenberger, 2003]. Nesse trabalho é proposto um modelo de quantização que

converte métricas baseadas em predicados para métricas baseadas em contagem, o

objetivo é ter a capacidade de se comparar essas duas naturezas de métricas entre

sí. Para se medir o desempenho de cada métrica com cada descritor o trabalho

sugere dividir os dados em clusters, onde teoricamente em cada cluster os objetos

devem ser similares entre sí, mas na prática é possível ter objetos não similares e

esse fenômeno é chamado de “poluição de clusters”, ele ocorre com maior ou menor

intensidade dependendo da métrica que se adota e de um parâmetro p usado no

modelo de quantização. Portanto, a medida de desempenho que foi usada no

trabalho em questão é a “poluição de clusters” para cada métrica. Apesar da boa

fundamentação do trabalho, não é possível comparar os resultados de trabalhos

como esse com os outros mencionados aquí devido ao critério usado, não temos

como comparar poluição de clusters com as métricas de desempenho do MPEG-7.

O mesmo aconteceu com a análise de outros trabalhos, tal como no trabalho de

[Pattanaik e Bhalke, 2012] e de [Missaoui et al., 2005].

3.2.7 QUADRO COMPARATIVO

Para se comparar as propostas estudadas na literatura é preciso analisar os

resultados obtidos em experimentos. O ANMRR foi usado neste trabalho como

principal critério de comparação de desempenho. A justificativa encontra-se no

capítulo 3.1.

Observa-se que os melhores resultados obtidos vêm de propostas usando

descritores distintos daqueles disponíveis no CoPhIR, é importante ressaltar que,

quanto menor o valor ANMRR, melhores os resultados obtidos. Caso o trabalho

envolvesse extração de descritores de um conjunto de imagens, seria válido aplicar

os trabalhos com os menores ANMRRs obtidos, porém a base de dados CoPhIR

contém os descritores já extraídos das imagens e seria inviável extrair novos

descritores de milhões de imagens. É importante notar que melhorar o desempenho

da consulta envolve manipular todo o processo de busca por similaridade sobre

conteúdo em imagens incluindo a parte da extração. A prova dessa observação

encontra-se na comparação entre os valores ANMRR obtidos com melhora no

processo todo e os valores ANMRR obtidos com melhora em somente poucas partes

48

do processo. Segue abaixo os experimentos, descritores usados, métricas usadas e

o melhor ANMRR obtido por experimento para comparações.

A tabela 2 compara os diferentes experimentos tendo em mente métricas

usadas, descritores usados e o melhor índice ANMRR obtido. A tabela registra o

melhor índice ANMRR obtido devido ao fato de alguns experimentos usarem mais de

uma configuração ou métrica. Vale lembrar que o conjunto de dados utilizados em

cada experimento é diferente e não encontram-se disponíveis as implementações,

porém a medida de desempenho usada em todos eles é a mesma. As conclusões

que surgem dessas comparações servirão para a seção de implementação,

experimentos e análise dos resultados.

Após esse estudo, optou-se por se compactar o descritor SCD e usar a

métrica Manhattan na seção 4 deste trabalho. Essa escolha se deve à viabilidade de

sua implementação. Não é possível implementar os estudos 3 e 4 por envolver

extração de descritores, não é possível também implementar o estudo 5 por

envolver um descritor que não consta nos dados do CoPhIR. O estudo 1 não oferece

um ANMRR superior ao experimento 2, portanto decidiu-se implementar a

compactação de descritor SCD proposto pelo experimento 2. Tabela 2 - Comparativo entre as propostas

Número Proposta Descritores Métrica Melhor ANMRR

1 Mesclagem de paletas de histogramas

DCD QHDM e MPHSM 0,3531

2 Compactação do descritor SCD

SCD L1 (Manhattan) 0,30152

3 Modificação no DCD e EHD

DCD e EHD Combinação de L1 (18) e (17)

0,0920

4 Síntese e uso do descritor DCSD

DCSD Color Matching Palette Similarity

Measure (CMPSM)

0,0993

5 Combinação de um descritor de textura com vários descritores de cor

EHD, SCD, CSD e CLD

Diversas combinações entre

L1 e L2

0,2982

As tabelas 3 a 8 mostram, com mais detalhes, os valores ANMRR obtidos nos

experimentos para recuperação eficiente de imagens por similaridade de conteúdo.

49

Tabela 3. É dividida em TABLE I e TABLE II, uma implementa o QHDM e a outra implementa o MPHSM

Fonte: Wong, Po (2004)

Tabela 4. Diferença de valores ANMRR para o uso compacto de CCD, CTD e CCD e CTD ao

mesmo tempo

Fonte: Dorairaj e Namuduri (2004, p.391)

Tabela 5. Modificação na extração dos descritores de cor dominante e histograma de textura

melhoram o índice ANMRR obtido

Fonte: Yanhong et al. (2009, p.132)

50

Tabela 6. Aplicação de descritores de forma individual e seguida obtenção de seus índices

ANMRR

Fonte: Bleschke et al. (2009, p.638)

Tabela 7. Aplicação de descritores de forma combinada e seguida obtenção de seus índices

ANMRR

Fonte: Bleschke et al. (2009, p.638)

51

Tabela 8. Descriptor DCSD e comparação de seu desempenho com a recuperação que usa

outros descritores

Fonte: Wong et al. (2007, p.614)

4 IMPLEMENTAÇÃO, EXPERIMENTOS E ANÁLISE DOS RESULTADOS

Esta seção descreve a implementação dos descritores e da métrica

selecionados, experimentos realizados com esses artefatos sobre a base de dados

CoPhIR e análise dos resultados obtidos nesses experimentos. O estudo

desenvolvido na seção 3 sugeriu o uso da métrica Manhattan juntamente com o

descritor SCD para a execução de buscas por similaridade. De fato, Krüger (2013)

afirma, através de experimentos com o próprio CoPhIR, que a métrica Manhattan é

mais efetiva do que a Euclideana quando se trata de usar descritores de cor para

recuperação de imagens por similaridade. Os seus experimentos também mostram

que essas duas métricas de cunho geral não são adequadas para recuperação de

imagens por similaridade usando-se descritores MPEG-7. Devido ao fato de os seus

experimentos não envolverem recuperação de imagens com descritores

compactados, decidiu-se compactar o descritor SCD das imagens e avaliar o

processo com o descritor em diferentes níveis de compactação.

52

Por padrão, o SCD do CoPhIR possui 64 coeficientes (ou dimensões). Nesse

trabalho esse descritor é referenciado por SCD64, versões compactas têm dimensão

menor. Os diferentes níveis de compactação são denotados por SCD32 (32

dimensões) e SCDINT (uma dimensão). O descritor SCD32 contém os coeficientes

passa-alta do SCD. Tratam-se de coeficientes resultantes da subtração de

coeficientes adjacentes da versão SCD64. Para se obter o SCDINT, obtém-se o

SCD32 e monta-se um novo vetor com 0s e 1s, onde em uma posição i do novo

vetor se assinala 1 quando o i-ésimo coeficiente do SCD32 é negativo, e 0 caso

contrário. Tomando-se a sequência de bits resultante como um número binário,

obtém-se o descritor SCDINT, com uma dimensão.

Em resumo, esta seção descreve:

A elaboração do compactador do descritor SCD.

Indexação da base de dados completa do CoPhIR pelo metadado tag.

Fragmentação por tag.

Compactação dos descritores no fragmento.

Realização de consultas, obtenção de resultados e análise dos resultados

obtidos.

4.1 IMPLEMENTAÇÃO

A implementação envolveu fragmentação do CoPhIR, compactação do

descritor SCD, conversão do novos descritores produzidos para blob e indexação

das imagens nos fragmentos com a métrica Manhathan e cada um desses

descritores. Trata-se da preparação do conjunto de dados antes de se iniciar os

experimentos que envolvem consultas por similaridade.

O CoPhIR (Content-based Photo Image Retrieval), base de dados de imagens

utilizada nos experimentos, é ums grande coleção de vetores de características de

imagens no formato MPEG-7, juntamente com alguns metadados associados (tags,

local, etc.). Esses metadados foram extraídos de mais de 100 milhões de imagens

do Flickr por pesquisadores europeus os quais disponibilizam os dados resultantes

mediante contrato, para fins de pesquisa. A quantidade de dados é muito grande e a

fragmentação torna-se necessária por dois motivos. O primeiro motivo é o grande

volume de imagens contido no banco de dados. Devido a isso, torna-se necessário

reduzir o espaço de busca das consultas para obter resultados em um tempo

53

aceitável. O segundo motivo é a realização de consultas com contendo predicados

convencionais lógicamente conectados com predicados baseados em similariade de

uma forma mais eficiente. Para tanto, a fragmentação a ser usada é a fragmentação

horizontal. Fragmentação horizontal é a divisão de tuplas em dois ou mais

fragmentos. Pode-se fragmentar manualmente ou segundo algum critério, tais como

valor de tag e autor. A relação original pode ser reconstruída por meio da união de

fragmentos.

Para os experimentos desse trabalho, houve a fragmentação por tags. Antes

de se criar fragmentos contendo descrições de imagens anotadas com diferentes

valores de tags, foi necessário criar um índice funcional baseado nas tags para o

processo de fragmentação ficar mais rápido O índice usado para isso foi a B-Tree,

estrutura de dado padrão da Oracle para aplicação de índices funcionais. De fato,

este índice oferece um melhor desempenho para consultas envolvendo operadores

de igualdade, tal como em uma seleção de dados cuja tag seja igual á ‘gato’. Depois

foram criados fragmentos com as descrições de imagens anotadas com as tags

‘gato’, ‘salsa’ e ‘pathetic’, os quais têm com 22.688, 16.211 e 372 imagens,

respectivamente. Note que uma tag pode se referir semanticamente a algo

totalmente diferente do que alguém imagina ao usá-la em uma consulta. Por

exemplo, observa-se a atribuição da tag ‘gato’ à imagem de uma pessoa bonita ao

invés da atribuição desta tag a um animal. A tag ‘salsa’, por outro lado, pode ser

referir à dança ou à planta usada como tempero.

A produção de um novo valor de SCD compactado implica adicionar novas

colunas e fazer operações sobre o descritor SCD. Para isso, foi necessário o uso de

programas Java e procedures no banco de dados. O programa Java serve para

manipular os descritores com mais praticidade e usar instruções SQL embutidas

para resgatar e armazenar descritores. As procedures são necessárias para

serializar os valores novos e transformá-los em valores tipo blob serializados Dessa

forma o FMI-SiR pode lê-los e manipulá-los com segurança.

54

Figura 15. Código Java para conexão com o banco de dados da Oracle.

A figura 15 ilustra as instruções para se conectar ao banco de dados da

Oracle. Essa conexão ocorre em dois programas Java produzidos pelo autor deste

trabalho, ReduzSCD e ReduzSCDint. O primeiro programa realiza a compactação

de SCD64 para SCD32, o segundo programa realiza a compactação de SCD32 para

SCDINT. Esse processo de compactação começa logo após a conexão, realiza-se a

declaração de variáveis para lidar com o fragmento, prepara-se a instrução sql a ser

usada e se usa a classe PreparedStatament para obter resultados do comando sql.

As declarações encontram-se na figura 16.Figura 16. Declaração de variáveis para execução de compactação.

O objeto result será o responsável por obter as tuplas retornadas das

consultas. Este objeto contém o resultado da consulta feita e possui um ponteiro que

se inicia na primeira tupla obtida, a instrução result.next() moverá o ponteiro para a a

próxima tupla, o acesso aos atributos da tupla ocorre através de métodos get().

55

Figura 17. Conversão de valores para um formato manipulável.

O processamento de cada tupla envolve converter os valores necessários da

tupla para um formato manipulável, manipular os valores de acordo com o esperado

e armazenar o novo valor em uma nova coluna. No banco de dados Oracle, os

valores dos descritores SCD das tuplas estão armazenados em varchar2(4000 byte),

é necessário converte-los para valores inteiros antes de se operar sobre eles, essa

conversão encontra-se descrita na figura 17. Trata-se de uma conversão de valores

que ocorre tanto em ReduzSCD como em ReduzSCDint, a manipulação de valores

dos dois programas já é diferente.

A figura 18 mostra a obtenção de coeficientes passa-alta para a formação do

descritor SCD32, esse processo ocorre no programa ReduzSCD. Subtraem-se

valores adjacentes de SCD64, armazena-os em uma nova variável do tipo int e

converte-se esse valor para um formato String, a conversão para um formato String

é essencial para o armazenamento do vetor através do uso de uma instrução sql

embutida.

56

Figura 18. Compactação do descritor SCD64 para obtenção do descritor SCD32.

A obtenção do SCDINT ocorre logo após a obtenção de SCD32. O método de

compactação em RedSCDint contém a obtenção de coeficientes passa-alta, porém a

conversão de valor para inteiro ocorre de outra forma. Primeiro obtém-se um número

binário cujo bit n desse vetor será 1 caso o coeficiente n do SCD32 seja negativo e 0

caso contrário, depois converte-se esse número binário para um inteiro e obtém-se o

SCDINT. O método para obtenção desse descritor encontra-se ilustrado na figura 19,

usa-se condicionais if-else para se decidir se o bit n do valor binário será 1 ou 0, logo

depois usa-se o construtor da clase BigInteger para se construir um valor grande em

formato string com base definida no segundo parâmetro, neste caso o segundo

parâmetro é dois, pois queremos construir um número binário.

57

Figura 19. Obtenção do descritor SCDINT.

Após a obtenção de um descritor compactado ocorre a abertura de um novo

posStatement do tipo PreparedStatement, armazenamento do novo descritor e o

fechamento desse novo PreparedStatement. É importante salientar, para fins de

programação, o fechamento de posStatement, pois caso contrário o programa irá

interromper a execução na presença de um número limite de posStatement abertos. Figura 20. Armazenamento de descritor compactado.

Logo após a redução dos descritores o FMI-SiR deve ler os valores,

processá-los e mostrar resultados. O parâmetro de entrada para métodos que

envolvam processamento dentro desta ferramenta são valores em formato blob

(Binary Large Object), o qual obtém-se através de duas formas. O Oracle contém um

método de conversão de valores para blob, porém os valores providos dessa

conversão não são serializados e tais valores não serão lidos pelo FMI-SiR por

questões de segurança da própria ferramenta. Resolveu-se o problema usando-se

procedures PLSQL para conversão de valores blob serializados. As figuras 21, 22 e

24 ilustram o processamento dos valores contidos no descritor SCD32 com o

objetivo de serializá-los e torná-los manipuláveis com o uso do FMI-SiR. O

procedimento é análogo para o processamento do descritor SCDINT, porém o que

muda são os valores scd_coef, scd_coeffred_blob e o parâmetro 32 como terceiro

58

parâmetro em READSIGNATUREFROMFILE(). O valor scd_coef é o descritor

SCD32, o valor scd_coeffred_blob é o descritor SCD32 convertido corretamente

para blob no final do processo e o parâmetro 32 é a dimensão do descritor SCD32

convertido. Entende-se por dimensão como sendo o tamanho do vetor que

representa o descritor SCD. O procedimento que converte o valor SCDINT usa os

valores scd_coeffredint, scd_coeffredint_blob e o parâmetro 1 como o terceiro

parâmetro da função READSIGNATUREFROMFILE(), o primeiro valor é o descritor

SCDINT, o valor scd_coeffredint_blob é o descritor SCDINT convertido corretamente

para blob no final do processo e o parâmetro 1 é a dimensão do descritor SCDINT

convertido.Figura 21. Primeira parte da procedure desenvolvida em PLSQL para conversão de valores

para formato BLOB.

59

Figura 22. Segunda parte da procedure desenvolvida em PLSQL para conversão de valores

para formato BLOB.

O próximo passo da implementação é indexar os elementos convertidos.

Diferentemente da indexação por tags, os índices usados para cálculos de

distâncias no FMI-SiR é a Slim-Tree, uma árvore de indexação mais otimizada que a

M-Tree. Como a busca por similaridade não trabalha com operadores de igualdade,

e sim com noções de similaridade, a B-Tree não seria uma boa escolha.

Realiza-se a indexação através de instruções específicas da Oracle. As

instruções, especificadas na figura 23, ilustram a indexação dos descritores SCD32

e SCDINT para a métrica Manhattan. O FMI-SiR contém a implementação de índices

Slim-Tree para as métricas Manhattan e Euclidean, porém é possível usar a Slim-

Tree para a indexação com base em outras métricas quaisquer que se implemente

na ferramenta.Figura 23. Indexação dos descritores SCD32 e SCDINTpara o fragmento FRAG_184

60

Figura 24. Terceira parte da procedure desenvolvida em PLSQL para conversão de valores

para formato BLOB.

A execução das instruções de criação de índice implicará a chamada do

método Index Create ilustrado na figura 25. É importante notar que esse e outros

métodos do FMI-SiR exigem um interfaceamento entre o Oracle e o Arboretum. O

primeiro passo deste método consiste em passar informações sobre o índice a ser

criado tais como o atributo de indexação e a tabela que possui o atributo. No

segundo passo, o FMI-SiR requisita o Arboretum a criar uma Slim-Tree vazia.

Depois, consulta-se os dados na tabela (assinatura e número da linha) no passo 3.

O passo 4 usa a assinatura da tupla retornada no passo anterior e usa uma função

para obter o dado BLOB do objeto. O passo 5 consiste em inserir o elemento na

Slim-Tree através do uso do Arboretum e o sexto passo retorna o código para o

processador de consultas da Oracle.

61

Figura 25. Criação de índices no FMI-SiR

Fonte: Kaster, Daniel S; Bugatti, Pedro H; Traina, Agma J M; Jr, Caetano Traina (2010,

p.236).

4.2 EXPERIMENTOS E AVALIAÇÃO

Essa seção contém buscas realizadas sobre os fragmentos e os resultados

obtidos delas, tais como tempo de execução, custo(acessos a disco) da consulta

pelo SGBD Oracle, distribuição de distâncias e visualização da precisão e cobertura.

Trata-se de buscas que, além de usarem predicados de similaridade, usam

predicados convencionais, tais como consultas envolvendo nome. Optou-se por

realizar consultas Range e Knn usando-se a métrica Manhattan devido ao seu

melhor desempenho para recuperação de imagens. Optou-se, também, por realizar

consultas por similaridade indexadas e não indexadas.

Seja a consulta da figura 26. A consulta ilustrada usa predicado convencional

(seleção de imagens com a tag igual a ‘gato’) e predicado de similaridade(seleção

das cinco imagens mais próximas, segundo a distância manhattan e descritor SCD,

á imagem 9435). Devido ao fato de essa consulta usar índice, dispara-se o comando

para o mecanismo de busca por similaridade indexada no FMI-SiR ilustrado na

figura 27. O FMI-SiR usa três métodos para se realizar tal tarefa, IndexStart,

IndexFetch e IndexClose. A sequência dos passos envolve, primeiramente, usar o

método IndexStart para inicializar o índice existente e isso envolve usar o arboretum,

na sequência tem o uso de IndexFetch para retornar os dados da consulta por

62

similaridade na ordem correta e, por último, tem o uso de IndexClose para fechar o

uso do índice e não deixá-lo aberto ocupando memória.Figura 26. Consulta envolvendo predicado convencional e predicado por similaridade

Figura 27. Execução de uma consulta por similaridade com índice.

Fonte: Kaster, Daniel S; Bugatti, Pedro H; Traina, Agma J M; Jr, Caetano Traina (2010, p.237).

Os primeiros experimentos realizados contam com a realização de consultas

pelos cinco vizinhos mais próximos usando-se a métrica Manhattan e os descritores

SCD64, SCD32 e SCDINT, logo a seguir se explica como as imagens retornadas

estão ilustradas.

O primeiro conjunto de cinco imagens diz respeito ao retorno da consulta

pelos cinco vizinhos mais próximos usando-se a métrica Manhattan e o descritor

SCD64. A imagem com borda vermelha é o centro do espaço métrico e, da esquerda

para a direita, estão registradas as imagens mais similares á imagem de consulta de

acordo com o nível de similaridade. Vale lembrar que a distância da imagem com

borda vermelha até ela mesma é zero. O segundo conjunto de imagens representa a

mesma consulta, porém com o descritor SCD32. De maneira análoga, o terceiro

conjunto de imagens representa a mesma consulta, porém com o descritor SCDINT.

63

O conjunto de imagens retornado muda conforme o a versão do descritor SCD que

se usa, porém observa-se uma diferença considerável entre os conjuntos

retornados. O conjunto de imagens retornado usando-se o descritor SCD32 contém

mais verde e tem uma similaridade visual maior com a imagem centro do espaço

métrico, porém quando se usa o descritor SCDINT a questão da similaridade visual

se perde a partir de uma determinada imagem na ordem de similaridade.

64

Figura 28. Imagens retornadas da consulta com imagens contendo a tag ‘gato’. Para a

primeira sequência de imagens, usa-se o descritor SCD64, para a segunda usa-se o descritor SCD32

e para a terceira usa-se o descritor SCDINT.

Outra forma de se medir a eficiência é através de um gráfico com distribuição

de distâncias. O gráfico registra uma relação entre imagem retornada na consulta e

a distância da imagem ao centro do espaço métrico, o eixo horizontal registra as

imagens e o eixo vertical registra a distância da imagem até o centro do espaço

métrico, é importante observar que as imagens mais á esquerda da relação são as

imagens mais similares á imagem do centro do espaço métrico, enquanto que á

direita estão as imagens menos similares, por conseguinte temos que a imagem

mais á esquerda do gráfico é a própria imagem do centro do espaço métrico. Outro

65

ponto importante a se observar são os valores normalizados, os valores das

distâncias calculados com cada descritor possuem uma abrangência de valores

diferente e a normalização foi importante para se comparar as distribuições de

distâncias entre sí.

A distribuição de distâncias é importante devido ao problema conhecido como

maldição da dimensionalidade e é decorrente do tamanho dos vetores com o qual se

trabalha, quanto maior o vetor maior o tempo de execução e menor é o efeito da

indexação nesse vetor. A maldição da dimensionalidade é um problema típico na

área de redes neurais que persiste, também, na área de processamento de imagens

quando se trata de desempenho de consultas. O descritor SCD64 é um vetor com

dimensão 64, o descritor SCD32 tem dimensão 32 e o SCDINT tem dimensão um.

Para o fragmento cujas imagens contêm a tag ‘gato’, a figura 29 mostra essa

distribuição. Observa-se que a distribuição de distâncias torna-se maior quando a

dimensionalidade fica menor. Para o descritor SCD64 e SCD32 as distâncias tem

uma distribuição menor, porém mais regular, já para o descritor SCDINT as

distâncias tem uma distribuição mais irregular, porém maior. Quando o quesito é a

distribuição de distâncias, o descritor SCDINT é mais eficiente para esse fragmento.

Observa-se a maldição da dimensionalidade através da análise do tempo e do custo

das operações com consultas por similaridade que usam o descritor SCD64, SCD32

e SCDINT, registrados nas tabelas 9, 10 e 11. O descritor SCD32 possui uma

distribuição de distânciasmais concentrada e o tempo de busca com índice acaba

sendo maior do que a busca com o descritor SCD64. Há uma observação a se fazer

nessa análise, o tempo de execução Range_Knn(busca por alcance seguido de

busca pelos ‘k’ vizinhos mais próximos)depende do parâmetro que se configurar

para o valor de Range, se o valor dessa configuração fosse menor para recuperar

imagens com SCDINT o tempo de execução também teria sido menor. As figuras 30

e 31 ilustram com mais detalhes as operações envolvidas com o custo da consulta,

nota-se uma redução enorme no custo final quando se usa índice.

66

Figura 29. Distribuição de distâncias para cada descritor.

Tabela 9. Tempo de execução e custo(acessos a disco) das consultas envolvendo o

fragmento cujas fotos são anotadas com a tag ‘gato’ e SCD64. A busca KNN(5) refere-se á uma

busca pelos 5 vizinhos mais próximos e a busca RANGE_KNN(60, 5) refere-se á aplicação de busca

por um raio de 60 unidades de distância seguido de uma busca pelos 5 vizinhos mais próximos.

Tabela 10. Tempo de execução e custo das consultas envolvendo o fragmento cujas fotos

possuem a tag ‘gato’ e SCD32.

67

Tabela 11. Tempo de execução e custo das consultas envolvendo o fragmento cujas fotos

possuem a tag ‘gato’ e SCDINT.

Figura 30. Custo das operações(acessos a disco realizados pelo SGBD) na consulta KNN(5)

para imagens contendo a tag ‘gato’.

Figura 31. Custo das operações na consulta KNN(5) indexada para imagens contendo a tag’

gato’.

68

Os dados de desempenho referentes ao fragmento cujas imagens contêm a

tag ‘pathetic’ estão registrados nas figuras 32 e 33 e nas tabelas 12, 13 e 14. A

consulta com imagens contendo esta tag e com centro do espaço métrico igual á

imagem com identificador 111731 está na figura 32. A distribuição de distâncias

encontra-se ilustrado na figura 33 e os dados que relatam tempo de execução e

custo estão nas tabelas 12, 13 e 14.

Observa-se que, para as imagens retornadas da consulta contendo essa tag,

a segunda consulta parece ser melhor do que a primeira quando se trata de captar

melhor algumas características das imagens, tais como luminosidade no canto

inferior direito das imagens e as cores mais escuras um pouco mais á direita do

centro das imagens, porém há um gap semântico da segunda para a terceira

consulta. Com relação á distribuição de distâncias, o SCD32 possui mais variação

de distância se comparado ao SCD64 e o SCDINT é o que possui a maior variação,

essa distribuição de distâncias mostra o motivo pelo qual os tempos de execução

diminuem á medida que se compacta o descritor, trata-se de um fato que não

aconteceu nos experimentos com as imagens contendo a tag ‘gato’. Observa-se

que, nesse caso, o tempo de execução não é proporcional ao custo, o uso da

indexação fez o custo da operação aumentar em aproximadamente 30%, porém o

efeito que se teve sobre o tempo de execução foi inverso se comparar a consulta

KNN(5) normal com a KNN(5) indexada.

69

Figura 32. Imagens retornadas da consulta com imagens contendo a tag ‘pathetic’.

70

Figura 33. Distribuição de distâncias para cada descritor.

Tabela 12. Tempo de execução e custo das consultas envolvendo o fragmento cujas fotos

possuem a tag ‘pathetic ‘ e SCD64.

Tabela 13. Tempo de execução e custo das consultas envolvendo o fragmento cujas fotos

possuem a tag ‘pathetic‘ e SCD32.

71

Tabela 14. Tempo de execução e custo das consultas envolvendo o fragmento cujas fotos

possuem a tag ‘pathetic’ e SCDINT.

Figura 34. Custo das operações na consulta KNN(5) para imagens contendo a tag ‘pathetic’.

Figura 35. Custo das operações na consulta KNN(5) indexada para imagens contendo a tag

‘pathetic’.

Os dados de desempenho referentes ao fragmento cujas imagens contêm a

tag ‘salsa’ estão registrados nas figuras 36 e 37 e nas tabelas 15, 16 e 17. A consulta

com imagens contendo esta tag e com centro do espaço métrico igual á imagem

com identificador 75681 está na figura 36, a distribuição de distâncias encontra-se

ilustrado na figura 37, os dados que relatam tempo de execução e custo estão nas

tabelas 15, 16 e 17 e as figuras 38 e 39 detalham as operações de custo.

Observa-se novamente uma troca na ordem de imagens mais similares

quando ocorre a compactação do descritor. Para as imagens contendo a tag ‘salsa’,

imagens mais similares se aproximam mais do centro de consulta, observa-se esse

72

fato quando, por exemplo, a terceira imagem mais próxima ao centro de consulta

para o descritor SCD64 se torna a segunda mais próxima ao centro para o descritor

SCD32, de fato as duas imagens contém a cena do céu nublado na parte de cima,

as árvores logo abaixo do céu e algumas cores no meio que se misturam na foto.

Por um lado, a precisão e cobertura visual parecem melhorar para essa

compactação, mas por outro lado a indexação nas imagens com descritor SCD32

não fornece uma melhora tão boa no tempo de execução quanto a indexação de

imagens com SCD64, esse problema com a indexação pode ser fruto da maldição

da dimensionalidade. Para esse conjunto de fotos, a compactação SCDINT parece

melhorar a cobertura e precisão visual e a melhora de tempo de execução com

indexação é proporcionalmente a maior de todas.

O gráfico de distribuição de distâncias, os tempos de execução e custo das

consultas mostram que há uma variação aparentemente menor de distâncias para o

descritor SCD32, uma variação enorme para o SCDINT como já esperado, um

ganho menor de tempo de consulta com a indexação das imagens através do

descritor SCD32 e uma diminuição considerável de custo com a indexação.

73

Figura 36. Imagens retornadas da consulta com imagens contendo a tag ‘salsa’.

74

Figura 37. Distribuição de distâncias para cada descritor.

Tabela 15. Tempo de execução e custo das consultas envolvendo o fragmento cujas fotos

possuem a tag ‘salsa‘ e SCD64.

Tabela 16. Tempo de execução e custo das consultas envolvendo o fragmento cujas fotos

possuem a tag ‘salsa‘ e SCD32.

75

Tabela 17. Tempo de execução e custo das consultas envolvendo o fragmento cujas fotos

possuem a tag ‘salsa‘ e SCDINT.

Figura 38. Custo das operações na consulta KNN(5) para imagens contendo a tag ‘salsa’.

Figura 39. Custo das operações na consulta KNN(5) indexada para imagens contendo a tag

‘salsa’.

De um modo geral, observa-se que a compactação do descritor SCD64

oferece uma melhora no tempo de execução, distribui menos as distâncias com a

compactação para SCD32 e distribui mais as distâncias com a compactação para

SCDINT, porém o custo pode aumentar caso o conjunto de imagens contendo

determinada tag seja pequeno demais. Outro fator observado é que, por um lado a

compactação desse descritor resolve o problema da dimensionalidade, mas por

outro, o gap semântico pode aumentar muito dependendo do conjunto de imagens

envolvido no processo.

76

5 TRABALHOS RELACIONADOS

Esta seção contém alguns trabalhos cujo tema envolve recuperação eficiente

de dados complexos e que estão relacionados com esse trabalho direta ou

indiretamente. O primeiro trabalho relacionado, desenvolvido por Wong e Po (2004),

é uma alternativa á compactação do descritor SCD para melhorar o processo de

recuperação de imagens, pelo menos sob o ponto de vista de qualidade dos

resultados obtidos, o trabalho relacionado em questão também faz uso de

descritores padrão MPEG-7 e medidas de desempenho ANMRR para fins de

comparação com outros trabalhos. O segundo trabalho relacionado, desenvolvido

por Chalechale et al. (2004), foi desenvolvido com o mesmo objetivo deste trabalho

e usa as mesmas medidas de desempenho, porém o conjunto de dados é de cunho

específico. Percebe-se que esta área de estudo ainda está em desenvolvimento e

não está madura o suficiente para se ter progressos significativos. Vários trabalhos

chegam a conclusões diferentes e não há como se tirar conclusões definitivas a

respeito da forma mais eficiente de se realizar recuperação por similaridade sobre

imagens.

5.1 USO DAS MÉTRICAS QHDM E MPHSM JUNTAMENTE COM FEEDBACK DE USUÁRIO

No trabalho de [Wong e Po, 2004], o autor sugere aplicar uma técnica

chamada histograma de mistura de paletas (Merged Palette Histogram, ou MPH)

nos descritores de cores dominantes (Dominant Color Descriptor, ou DCD) e usar

realimentação por relevância (relevance feedback), o propósito desta técnica é

supervisionar o processo de recuperação por similaridade com base na escolha das

imagens que o usuário achar mais relevante. Dado o objeto de busca Q, no início do

processo os objetos no banco de dados mais similares a Q são resgatados, após o

resgate um usuário seleciona as imagens consideradas mais semelhantes á Q, em

seguida o mecanismo de busca mescla as paletas de cores dessas imagens

selecionadas e, no final, a nova paleta mesclada passa a ser o parâmetro de entrada

para uma nova busca por similaridade, este ciclo se repete quantas vezes forem

necessárias. Duas métricas diferentes são usadas para esse resgate (por

consequência, se obtém dois resultados diferentes), uma das métricas é a distância

quadrática de histogramas (Quadratic Histogram Distance Measure em inglês, ou

77

QHDM) e a outra delas é a distância de histogramas com paletas mescladas

(Merged Palette Histogram Similarity Measure, ou MPHSM). O objetivo de se usar as

duas métricas é comparar o resultado que cada uma produz.

A figura 36 ilustra a mistura das paletas H1 e H2 para formar a nova paleta H’.

Este processo une duas paletas de cor DCD e obtém uma só que represente as

duas simultaneamente, essa mistura de paletas torna-se necessária para evitar o

uso de mais cores do que o permitido para o descritor. Este processo se repete de

acordo com a escolha do usuário em usar mais imagens como um feedback para o

processo de recuperação por similaridade. Figura 40. Mistura de duas paletas de dois DCDs

Fonte: Wong e Po (2004, p.434)

5.2 USO DA MÉTRICA MANHATTAN EM IMAGENS DE CUNHO ESPECÍFICO

Outro dos trabalhos semelhantes que envolvem recuperação de imagens de

uma forma eficiente foca em um conjunto específico de imagens. Trata-se de um

trabalho que aborda uma área pouco explorada pelos pesquisadores. O trabalho em

questão é o de Chalechale et al. (2004). O objetivo deste trabalho é buscar por

características da imagem que sejam invariantes a escalonamento, translação e

rotação. Essas características podem ser muito úteis para uso na recuperação

baseada em rascunhos. Para atingir este objetivo, usa-se um algoritmo de abstração

de imagens e decomposição espacial para extração de características, a esse

algoritmo atribui-se o nome de Abstract Image Decomposition and Transform(AIDT).

Primeiramente, o algoritmo AIDT transforma a imagem a ser tratada em uma

imagem em escala de cinza. Assim se elimina a saturação e a cor da imagem e se

78

mantém a iluminação. Depois de se obter a imagem em escala de cinza se extraem

as bordas com o uso de um operador chamado Canny e uma máscara Gaussiana. A

figura 37 ilustra o efeito do parâmetro no operador Canny sobre a obtenção da

imagem em escala de cinza para seguida extração de bordas. Depois, aplicam-se

procedimentos específicos para obter informações numéricas sobre a textura da

imagem rascunho, se usa a métrica Manhattan para medir a distância entre os dois

vetores extraídos e, por último, se usa as medidas de desempenho ANMRR para se

medir a eficiência do processo de recuperação de rascunhos por similaridade. Figura 41. Efeito do parâmetro nas bordas Canny com o trabalho sobre uma das imagens

Fonte: Chalechale et al. (2004, p. 434)

79

6 CONCLUSÕES E TRABALHOS FUTUROS

A pesquisa bibliográfica indicou que a combinação mais satisfatória para

recuperação eficiente de imagens é usar a métrica L1 e com a compactação do

descritor de cor SCD, sugerida por [Namuduri e Dorairaj, 2004].Dentre as métricas

que não exigem modificação no extrator de características, essa é a que oferece o

menor índice ANMRR. Outras estratégias podem oferecer uma medida ANMRR

melhor, porém não foram adotadas para os experimentos desse trabalho por motivos

específicos. Um dos motivos é o fato de algumas das estratégias requereriam extrair

descritores não disponíveis no CoPhIR.. Outro motivo é o uso de versões de

descritores que não constam na base de dados do CoPhIR. Decidiu-se por

implementar a compactação do descritor SCD após a pesquisa. Porém, após a

implementação, os experimentos indicaram que, dependendo do nível de

compactação, o gap semântico pode ser grande e pode ocorrer muita perda da

precisão e cobertura. Conclui-se que, apesar de a compactação de descritores

resolver o problema da dimensionalidade, surge o problema do gap semântico e o

desafio nesse contexto está em conseguir um balanceamento entre desempenho e

qualidade dos resultados. (fazer com mais experimentos, testar mais métricas e

descritores com outras bases de dados)

Para trabalhos futuros, sugere-se realizar experimentos com os descritores

SCD compactados com vários conjuntos de dados, isto inclui obter o tempo de

execução e custo das consultas e montar relações que apontem outras

observações, tais como tempo de execução e dimensão dos descritores com dados

indexados e não indexados. Há também outras sugestõespara trabalhos futuros,

dentre elas estão:

Resolver consultas com dois descritores, um de cor e um de textura, e

realizar implementação, experimentos e análise.

Verificar a possibilidade de se compactar outros descritores e obter resultados

positivos através de pesquisa bibliográfica e experimentos.

Trabalhar com outras bases de dados e trabalhar com recuperação eficiente

por similaridade de dados com a possibilidade de se interferir no processo de

extração de características.

80

REFERÊNCIAS

BARIONI, Maria Camila Nardini. Operações de consulta por similaridade em grandes bases de dados complexos. 2006. Tese(doutorado) - Universidade de São Paulo, Instituto de Ciências Matemáticas e de Computação, São Carlos.

MAHBOUBI, Hadj, et al. X-wacoda: An xml-based approach for warehousing and analyzing complex data. In: BELLATRECHE, Ladjel (Org.) .Data Warehousing Design and Advanced Engineering Applications: Methods for Complex Construction.Chicago: IGI Global, 2009. p.38-54.

RÜGER, Stefan. Multimidia Information Retrieval. Chapel Hill, Ca: Morgan & Claypool publishers, 2010

Nack, Frank, and Adam T. Lindsay. "Everything you wanted to know about MPEG-7. 1." Multimedia, IEEE 6.3 (1999): 65-77.

Avaro, Olivier, and Philippe Salembier. "MPEG-7 Systems: overview." Circuits and Systems for Video Technology, IEEE Transactions on 11.6 (2001): 760-764.

Zezula, P., Amato, G., Dohnal, V., & Batko, M. (2006). Similarity search, The Metric Space Approach. Springer.

Eidenberger, H. (2003, November). Distance measures for MPEG-7-based retrieval. In Proceedings of the 5th ACM SIGMM international workshop on Multimedia information retrieval (pp. 130-137).ACM.

Salembier, Philippe, and John R. Smith."MPEG-7 multimedia description schemes." Circuits and Systems for Video Technology, IEEE Transactions on11.6 (2001): 748-759.

Ritendra Datta, Dhiraj Joshi, Jia Li, and James Z. Wang. Image Retrieval: Ideas, Influences, and Trends of the New AgeACM Computing Surveys. University Park, April 2008, Vol. 40, No. 2, Article 5.

Molková.Lucie.Indexing Very Large Text Data. 2011. Tese(mestrado) – Masaryk University, Faculty of Informatic, Brno.

Pattanaik Swapnalini, Bhalke D. G..Efficient Content based Image Retrieval System using Mpeg-7 Features. International Journal of Computer Applications, Rajarshi Shahu College of Engineering, Pune, v.53, n.5, p.19-24,Setembro, 2012.

Kaster, Daniel S., et al. FMI-SiR: A flexible and efficient module for similarity searching on Oracle database. Journal of Information and Data Management .Sao Paulo, v. 1, n. 2, p.229-244, jun. 2010.

Barioni, M. C. N., Razente, H., Traina, A., & Traina Jr, C. SIREN: A similarity retrieval engine for complex data. InProc. of the 32nd Intl. Conf. on Very large data base, 2006, Seoul. VLDB Endowment, 2006, p. 1155-1158

81

Oracle Corporation. Oracle® interMedia User's Guide Disponível em: http://docs.oracle.com/cd/B19306_01/appdev.102/b14302/ch_intr.htm. Acesso em: 16 fev. 2013.

B.S Manjunath, J.R.Ohm, V.V Vasudevan and A.Yamada, Color and texture descriptors, IEEE Transactions on Circuits and Systems for Video Technology, Vol. 11, No. 6, 2001, pp. 703-715

Ka-Man Wong; Lai-Man Po, MPEG-7 dominant color descriptor based relevance feedback using merged palette histogram, Acoustics, Speech, and Signal Processing, 2004. Proceedings. (ICASSP '04). IEEE International Conference on , vol.3, no., pp.iii,433-6 vol.3, 17-21 May 2004

Ka-Man Wong; Chun-Ho Chey; Tak-Shing Liu; Lai-Man Po, Dominant color image retrieval using merged histogram, Circuits and Systems, 2003. ISCAS '03. Proceedings of the 2003 International Symposium on , vol.2, no., pp.II-908,II-911 vol.2, 25-28 May 2003

J. Ohm, L. Ciepli´ (d) peo-026 (e) peo-061 (f) peo-038 nski, H. J. Kim, S. Krishnamachari, B. S. Manjunath, S. Messing, and A. Yamada, The MPEG-7 Colour Descriptors, IEEE Transactions on Circuits and Systems for Video Technology, 2001

Dorairaj, R.; Namuduri, K.R., Compact combination of MPEG-7 color and texture descriptors for image retrieval, Signals, Systems and Computers, 2004. Conference Record of the Thirty-Eighth Asilomar Conference on , vol.1, no., pp.387,391 Vol.1, 7-10 Nov. 2004

Zhao Yanhong; Wang Beizhan; Ye Su; Zheng Yinhuan; Shi Liang, Image retrieval based on improved MCD and EHD of MPEG-7, Test and Measurement, 2009. ICTM '09. International Conference on , vol.1, no., pp.127,132, 5-6 Dec. 2009

Hong Shao; Jun Ji; Yan Kang; Hong Zhao, Application Research of Homogeneous Texture Descriptor in Content-Based Image Retrieval, Information Engineering and Computer Science, 2009.ICIECS 2009. International Conference on , vol., no., pp.1,4, 19-20 Dec. 2009

Swapnalini Pattanaik and D G Bhalke.Efficient Content based Image Retrieval System using Mpeg-7 Features. International Journal of Computer Applications 53(5):19-24, September 2012

Lai-Man Po; Ka-Man Wong, A new palette histogram similarity measure for MPEG-7 dominant color descriptor, Image Processing, 2004. ICIP '04. 2004 International Conference on , vol.3, no., pp.1533,1536 Vol. 3, 24-27 Oct. 2004

Missaoui, R.; Sarifuddin, M.; Vaillancourt, J., Similarity measures for efficient content-based image retrieval, Vision, Image and Signal Processing, IEE Proceedings - , vol.152, no.6, pp.875,887, 9 Dec. 2005

Paolo Bolettieri, Andrea Esuli, Fabrizio Falchi, Claudio Lucchese, Raffaele Perego,

82

Tommaso Piccioli, Fausto Rabitti. “CoPhIR: a Test Collection for Content-Based Image Retrieval, CoRR, volume abs/0905.4627v2, Year 2009, http://arxiv.org/abs/0905.4627v2, http://cophir.isti.cnr.it

Bleschke, M.; Madonski, R.; Rudnicki, R., Image retrieval system based on combined MPEG-7 texture and Colour Descriptors, Mixed Design of Integrated Circuits & Systems, 2009. MIXDES '09. MIXDES-16th International Conference , vol., no., pp.635,639, 25-27 June 2009

Pattanaik, Swapnalini; Bhalke, D.G. Efficient Content based Image Retrieval System using MPEG-7 Features, International Journal of Computer Applications; Vol. 53, p19, 09 Jan. 2012

Ka-Man Wong; Lai-Man Po; Kwok-Wai Cheung, A Compact and Efficient Color Descriptor for Image Retrieval, Multimedia and Expo, 2007 IEEE International Conference on , vol., no., pp.611,614, 2-5 July 2007

Krüger, Marcelo. Fragmentação, caracterização e recuperação deInformação em base de dados de imagem. 2013. TCC – Universidade do Vale do Itajaí, Florianópolis.

Oracle Corporation. Indexes and Index-Organized Tables Disponível em:http://docs.oracle.com/cd/E11882_01/server.112/e25789/indexiot.htm#CNCPT88835. Acesso em 27 out. 2013

83

ANEXOS

A.1 - CRONOGRAMA

Etapas

2012 2013

N D J F M A M J J A S O N D

Redigir proposta X X

Entrega da proposta completa assinada e aprovada 18/02

Estudo da fundamentação teórica X X X X

Estudo da ferramenta FMI-SiR e realização de algumas consultas X X X

Implementação das métricas no FMI-SiR X X X X

Estudo e aplicação de índices métricos no FMI-SiR(se necessário) X X X X

Execução de experimentos com as métricas e índices métricos

implementados para colher resultado de desempenho

X X X

Documentação dos resultados dos experimentos no texto do relatório

final e em artigos científicosX X X

Redigir relatório de projeto I X X X

Redação do rascunho do TCC X X X

Preparação da defesa X

Ajuste no relatório final do TCC X X X

Entrega do TCC e defesa pública X X

A.2 - CUSTOS

Item Quantidade Valor unitário (R$) Valor Total (R$)Máquina para experimentos 1 2.300 2.300

PessoalOrientador 50 horas R$ 120 /hora R$ 6.000,00Coordenador de Projeto

10 horas R$ 120 /hora R$ 1.200,00

Membro da Banca 2x(10 horas) R$ 120 /hora R$ 2.400,00

84

A.3 - RISCOS

Risco Probabilidade Impacto Prioridade Estratégia de resposta

Ações de prevenção

Computador não funcionar mais Baixa Alto Alto Aceitar Utilização de

no-break.Alteração de

cronograma ou descontinuidade

do projeto no laboratório onde

recebo bolsa

Baixa Alto Alto

Mudar o tema do

trabalho ou mudar o enfoque

Obtenção constante de informações

sobre o andamento

geral do projeto

Queimar HD Média Alto AltoRecupera o

que for possível

Fazer backups com frequência

A.4 - COMUNICAÇÃO

O que precisar ser comunicado

Para quem Melhor forma de comunicação

Quando e com que frequência

Andamento do Projeto

Orientador Reunião ou email

Uma vez por semana

Estrutura do relatório e andamento

Coordenador de projetos

E-mail/reunião A cada 3 meses

Andamento do Projeto

Membros da banca

Reunião/E-mail 1ª vez no 4º mês do projeto 2ª vez no 10º mês