camillo jorge santos oliveira - dcc

75
Camillo Jorge Santos Oliveira Classificação de Imagens Coletadas na Web Dissertação apresentada ao Curso de Mestrado do Departamento da Ciência da Computação do Instituto de Ciências Exatas da Universidade Federal de Minas Gerais, como requisito parcial à obtenção do título de Mestre em Ciência da Computação. Universidade Federal de Minas Gerais Belo Horizonte, 20 de Agosto de 2001

Upload: others

Post on 20-Nov-2021

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Camillo Jorge Santos Oliveira - DCC

Camillo Jorge Santos Oliveira

Classificação de Imagens Coletadas na Web

Dissertação apresentada ao Curso deMestrado do Departamento da Ciência daComputação do Instituto de CiênciasExatas da Universidade Federal de MinasGerais, como requisito parcial à obtençãodo título de Mestre em Ciência daComputação.

Universidade Federal de Minas GeraisBelo Horizonte, 20 de Agosto de 2001

Page 2: Camillo Jorge Santos Oliveira - DCC
Page 3: Camillo Jorge Santos Oliveira - DCC

© 2001Camillo J. S. Oliveira

Todos os Direitos Reservados

Page 4: Camillo Jorge Santos Oliveira - DCC

519.6O48c

Oliveira, Camillo Jorge Santos.

Classificação de imagens coletadas na Web/Camillo Jorge Santos Oliveira. –Belo Horizonte: DCC/ICEx/UFMG, 2001

73p.: il.

Dissertação (Mestrado) – Universidade Federal de Minas Gerais. Curso de PósGraduação em Ciência da Computação. Orientador: Arnaldo de AlbuquerqueAraújo.

1. Processamento digital de imagens. 2. Inteligência Artificial. 3. World WideWeb (Sistemas de recuperação da informação). I. Araújo, Arnaldo deAlbuquerque. II. Universidade Federal de Minas Gerais, Departamento deCiência da Computação. III. Título.

Page 5: Camillo Jorge Santos Oliveira - DCC

iii

À minha esposa LINNYER

DEDICO

Page 6: Camillo Jorge Santos Oliveira - DCC

iv

AgradecimentosA Deus.

À minha esposa, Linnyer Beatrys pelo incentivo, confiança, orgulho e dedicação, de todos

os dias.

Ao Prof. Dr. Arnaldo Albuquerque pela determinação ao orientar este trabalho.

Aos professores e funcionários do Programa de Pós-Graduação do Departamento de

Ciência da Computação da UFMG, aqui representados pelo coordenador do curso Prof.

Henrique Pacca, pela secretária Renata Viana Moraes e pelo funcionário da biblioteca

Helvécio, agradecendo pela oportunidade e atenção dispensada ao longo do curso.

Aos meus colegas Silvio (Magnânimo) e Paulo (Marinheiro) pelas contribuições positivas

ao meu trabalho e ao meu estresse através de discussões, comentários e sugestões.

Aos colegas do Núcleo de Processamento Digital de Imagens, em especial ao Carlos

(kapaoc) pela cooperação e atenção dispensada às minha mais diversas solicitações e ao

Daniel (Patrullero) por sua participação.

Aos amigos Flávio Bortolozzi e Hélio Olímpio da Rocha que apoiaram-me de maneira

crucial ao longo da minha vida acadêmica.

Aos casais Vera e Artur, Léia e Josuel pelas palavras de apoio e motivação e por suas

orações que foram fundamentais para esta empreitada.

Page 7: Camillo Jorge Santos Oliveira - DCC

v

SumárioINTRODUÇÃO...............................................................................................................................................................11

1.1 MOTIVAÇÃO ............................................................................................................................................................ 121.2 PROBLEMA ABORDADO......................................................................................................................................... 151.3 ESTRUTURA DA DISSERTAÇÃO............................................................................................................................. 18

REVISÃO BIBLIOGRÁFICA....................................................................................................................................19

2.1 PROCESSO DE COLETA DAS IMAGENS.................................................................................................................. 192.2 MÉTRICAS ................................................................................................................................................................ 212.3 CLASSIFICAÇÃO ...................................................................................................................................................... 262.4 O MÉTODO ID3....................................................................................................................................................... 272.5 CONSIDERAÇÕES FINAIS........................................................................................................................................ 34

MATERIAIS E MÉTODOS.........................................................................................................................................35

3.1 DADOS DA COLETA DE IMAGENS.......................................................................................................................... 363.2 PREPARAÇÃO DAS AMOSTRAS DE TREINAMENTO............................................................................................. 363.3 APLICAÇÃO DAS MÉTRICAS.................................................................................................................................. 373.4 UTILIZAÇÃO DO ID3 ............................................................................................................................................... 383.5 MÉTODOS PARA VALIDAR O MODELO ................................................................................................................ 403.6 ESCOLHA DO MÉTODO PARA VALIDAÇÃO DO MODELO................................................................................... 463.7 VALIDAÇÃO DO CLASSIFICADOR.......................................................................................................................... 473.8 CONSIDERAÇÕES FINAIS........................................................................................................................................ 49

RESULTADOS EXPERIMENTAIS .........................................................................................................................50

4.1 RESULTADOS UTILIZANDO O MÉTODO DE VALIDAÇÃO CRUZADA COM K-DOBRAS................................... 504.2 RESULTADOS EXPERIMENTAIS UTILIZANDO IMAGENS INÉDITAS ................................................................... 554.2 EXCEÇÕES NAS AMOSTRAS DE TREINAMENTO.................................................................................................. 574.3 CONSIDERAÇÕES FINAIS........................................................................................................................................ 57

CONCLUSÃO..................................................................................................................................................................59

5.1 CONTRIBUIÇÕES...................................................................................................................................................... 595.2 TRABALHOS FUTUROS ........................................................................................................................................... 61

REFERÊNCIAS BIBLIOGRÁFICAS ......................................................................................................................62

APÊNDICE A...................................................................................................................................................................65

APÊNDICE B ...................................................................................................................................................................69

APÊNDICE C...................................................................................................................................................................72

Page 8: Camillo Jorge Santos Oliveira - DCC

6

Lista de FigurasPag

1.1 – Exemplo de imagem fotográfica no formato JPEG e seu respectivo histograma de cores. 161.2 – Exemplo de imagem fotográfica no formato GIF e seu respectivo histograma de cores. 161.3 – Exemplo de imagem gráfica no formato JPEG e seu respectivo histograma de cores. 171.4 – Exemplo de imagem gráfica no formato GIF e seu respectivo histograma de cores. 172.1 – (a) Imagem gráfica no formato GIF. (b) Histograma de cores. 212.2 – (a) Imagem gráfica no formato GIF. (b) Histograma de cores. 222.3 – Exemplo de uma árvore de decisão. 323.1 – Coleta de imagens na WWW. 363.2 – Processo de separação visual das imagens, da base de imagens, formando as amostras

de treinamento.37

3.3 – Quatro imagens e suas respectivas tuplas obtidas depois da aplicação das métricas. 393.4 – Esboço do método de validação com divisão em duas partes. 413.5 – Esboço do método de validação cruzada com subamostragem aleatória.. 433.6 – Esquema mostrando o exemplo do método de validação cruzada com 4-dobras. 443.7 – Esquema mostrando o exemplo do método de validação cruzadas com “um de fora”. 454.1 – Taxas de erro obtidas para amostras de imagens que possuem o formato GIF. 514.2 – Desvio padrão das taxas de erro para amostras de imagens que possuem o formato GIF. 524.3 – Taxas de erro obtidas para amostras de imagens que possuem o formato JPEG. 534.4 – Desvio padrão das taxas de erro para amostras de imagens que possuem o formato

JPEG.53

4.5 – Número médio de iterações para imagens no formato GIF. 544.6 – Número médio de iterações para imagens no formato JPEG. 554.7 – Taxas de classificação para imagens no formato GIF, onde obteve-se uma média de

92,3% de imagens classificadas corretamente.56

4.8 – Taxas de classificação para imagens no formato JPEG, onde obteve-se uma média de89,5% de imagens classificadas corretamente.

56

4.9 – Alguns exemplos de imagens que não foram classificadas corretamente 57B1 – Gráficos obtidos da avaliação das amostras de treinamento formadas por imagens GIF. 70B2 – Gráficos obtidos da avaliação das amostras de treinamento formadas por imagens JPEG. 71C1 – Exemplos de imagens gráficas coletadas na WWW 72C2 – Exemplos de imagens gráficas coletadas na WWW 72C3 – Exemplos de imagens gráficas coletadas na WWW 73

Page 9: Camillo Jorge Santos Oliveira - DCC

7

Lista de TabelasPag

A1 – Valores das taxas de erro obtidas para o método de validação cruzada com k-dobras, para k = 2, 4, 5, 8 e 10, em amostras de tamanho igual a 200. 65

A2 – Valores das taxas de erro obtidas para o método de validação cruzada com k-dobras, para k = 2, 4, 5, 8 e 10, em amostras de tamanho igual a 400. 65

A3 – Valores das taxas de erro obtidas para o método de validação cruzada com k-dobras, para k = 2, 4, 5, 8 e 10, em amostras de tamanho igual a 800. 65

A4 – Valores das taxas de erro obtidas para o método de validação cruzada com k-dobras, para k = 2, 4, 5, 8 e 10, em amostras de tamanho igual a 1000. 66

A5 – Valores das taxas de erro obtidas para o método de validação cruzada com k-dobras, para k = 2, 4, 5, 8 e 10, em amostras de tamanho igual a 1200. 66

A6 – Valores das taxas de erro obtidas para o método de validação cruzada com k-dobras, para k = 2, 4, 5, 8 e 10, em amostras de tamanho igual a 200. 66

A7 – Valores das taxas de erro obtidas para o método de validação cruzada com k-dobras, para k = 2, 4, 5, 8 e 10, em amostras de tamanho igual a 400.

67

A8 – Valores das taxas de erro obtidas para o método de validação cruzada com k-dobras, para k = 2, 4, 5, 8 e 10, em amostras de tamanho igual a 800.

67

A9 – Valores das taxas de erro obtidas para o método de validação cruzada com k-dobras, para k = 2, 4, 5, 8 e 10, em amostras de tamanho igual a 1000. 67

A10 – Valores das taxas de erro obtidas para o método de validação cruzada com k-dobras, para k = 2, 4, 5, 8 e 10, em amostras de tamanho igual a 1200. 67

A11 – Resultados da classificação de imagens que possuem o formato GIF e JPEGque não foram utilizadas na obtenção da árvore de decisão (treinamento). 68

Page 10: Camillo Jorge Santos Oliveira - DCC

8

Lista de AbreviaturasCLS Concept Learning System

GIF Graphics Interchange Format

HTML Hypertext Markup Language

ID3 Itemized Dichotomizer 3

JPEG Joint Photographics Experts Group

NPDI Núcleo de Processamento Digital de Imagens

RAM Random Access Memory

RGB Red Green Blue

SGBD Sistema Gerenciador de Banco de Dados

TDIDT Top-Down Induction Decision Tree

UFMG Universidade Federal de Minas Gerais

URL Universal Resource Locator

VoD Video on Demand

WWW World Wide Web

Page 11: Camillo Jorge Santos Oliveira - DCC

9

ResumoO objetivo deste trabalho é o desenvolvimento de um classificador que permita separar

imagens coletadas na WWW (World Wide Web) em duas classes semânticas: imagens

fotográficas e imagens gráficas. Imagens fotográficas incluem cenas naturais, como

pessoas, faces, animais, flores, paisagens e cidades. Imagens gráficas são logotipos,

desenhos, ícones, mapas e panos de fundo, geralmente gerados utilizando o computador.

O desenvolvimento do classificador envolve as seguintes atividades: coleta das

imagens na WWW realizada através do uso de um robô; preparação das amostras de

treinamento; estudo, definição, implementação e aplicação de métricas (número de cores,

cor predominante, vizinho mais distante, saturação, histograma de cor, histograma do

vizinho mais distante, razão de dimensão, dimensão menor) baseadas nas diferenças entre

as duas classes em questão; disponibilização dos valores resultantes das métricas em tuplas

de atributos com valores normalizados e utilização destas tuplas da amostra de treinamento

na construção do classificador utilizando método supervisionado ID3 (Itemized

Dichotomizer 3). O resultado deste desenvolvimento é o classificador que inclui uma

árvore de decisão geradora de regras para a classificação.

Um esquema de validação do classificador é utilizado. Este esquema é implementado

através de dois procedimentos. O primeiro utiliza o método de validação cruzada com k-

dobras nas amostras de treinamento já disponíveis e seus resultados demonstraram a

estabilidade do aprendizado do classificador, com taxa média de erro de 9,2% quando

aplicado o método de validação cruzada com 10-dobras. O segundo procedimento de

validação consiste em utilizar o classificador com imagens inéditas (imagens não utilizadas

para construir o classificador) e verificar-se a precisão da classificação. Obteve-se uma

média de 91% de imagens classificadas corretamente. O desenvolvimento deste trabalho

demonstra a viabilidade de se construir classificadores que possam ser utilizados em

ferramentas de recuperação de imagens com base no conteúdo.

Page 12: Camillo Jorge Santos Oliveira - DCC

10

AbstractThe purpose of this work is the development of a classifier that allows to separate images

collected from the WWW (World Wide Web) into two semantic classes: photographs and

graphics. Photographs images include natural scenes such as people, faces, animals,

flowers, landscapes and cities. Graphics images are logotypes, drawings, icons, maps and

backgrounds walls, generally created by a computer.

The development of the classifier includes the following steps: image collecting on the

WWW using a robot; preparation of training samples; study, definition, implementation,

and application of the metrics (the number of colors, the percentage of the prevalent color,

the farthest neighbor, the saturation, the color histogram, the farthest neighbor histogram,

the dimension ratio, the smallest dimension) based on the differences between the two

classes mentioned; availability of the metrics output in tuples of attributes with normalized

values and utilization of these training sample tuples in the construction of the classifier

using the supervisioned method ID3 (Itemized Dichotomizer 3). The result of this

development is the classifier that includes a decision tree which is responsible for

generating the rules for classification.

A classifier validation schema is used. This schema is implemented by two

procedures. The first uses k-fold cross-validation method on the training samples already

available and its results demonstrated the stability of the classifier learning, reaching an

average tax error of 9,2% when the cross-validation method is applied with ten-folds. The

second validation procedure consists in utilize the classifier with unseen images (images

that were not used to construct the classifier) and verify the precision of classification. We

obtained an average of 91% of images classified correctly. The development of this work

demonstrates the viability in constructing classifiers that can be used in image retrieval

based on content tools.

Page 13: Camillo Jorge Santos Oliveira - DCC

11

Capítulo 1

Introdução

Esta dissertação apresenta uma proposta de classificação de imagens coletadas na WWW

(World Wide Web). A classificação agrupa as imagens em duas classes semânticas de

grande importância e abrangência, que são, imagens fotográficas e imagens gráficas.

Com a expansão da WWW tem-se a inclusão de uma imensa quantidade de

informações que são colocadas à disposição do usuário da rede, como: vídeos, documentos

texto e imagens. Além disso, um outro fator de grande importância é a velocidade com que

estas imagens, são adicionada à rede.

Assim, faz-se necessário a utilização de ferramentas capazes de recuperar imagens

deste ilimitado ambiente que é a WWW. Em 1970, foram iniciadas pesquisas na área de

recuperação de imagens. Nesta época, tais pesquisas eram desenvolvidas por pesquisadores

da área de banco de dados e que tratavam de fazer a recuperação das imagens baseada em

texto. As características das imagens eram anotadas na forma de texto e depois utilizava-se

um SGBD (Sistema Gerenciador de Banco de Dados) para tratar da recuperação das

informações. Em 1990, surgiu uma nova abordagem que permitiu de fato, trabalhar com

imagens. Imagens estas que aumentaram em larga escala na WWW. A idéia principal desta

abordagem é realizar a recuperação das informações baseada nos conteúdos das imagens,

tais como cor, forma e textura. Desta maneira, muitas técnicas têm sido desenvolvidas com

base nesta linha de pesquisa e muitos sistemas de recuperação baseados no conteúdo foram

construídos. Alguns, citados em Bimbo (1999), são: QBIC, Virage, Visual Retrievalware,

Macs-Hermes, Chabot, IRIS, Picasso, ICARS, Photobook, CANDID, VisualSeek,

FIBSSR, CORE e NeTra. Uma área que contribui de forma relevante para esta abordagem

é a visão computacional.

Page 14: Camillo Jorge Santos Oliveira - DCC

12

Até o momento, não existem algoritmos genéricos para processar todos os tipos de

imagens e a diversidade destes tipos, bem como o tamanho ocupado por estas imagens. A

etapa de classificação das imagens torna-se importantíssima para o desenvolvimento de

uma ferramenta de recuperação de imagens para a WWW. As imagens podem pertencer a

classes semânticas diferentes, tais como fotografias, gráficos, mapas, caricaturas, retratos

de pessoas, cartões, faces, imagens coloridas e etc. Após a classificação, pode-se então

realizar a pesquisa por classes.

Esta dissertação tem por objetivo apresentar a viabilidade de classificação de imagens

coletadas na WWW em duas classes semânticas: imagens fotográficas e imagens gráficas.

1.1 MOTIVAÇÃO

Recentemente, tem-se visto um rápido crescimento no tamanho das coleções de imagens

digitais. Todos os dias, equipamentos militares e civis geram gigabytes de imagens. Gupta

(1997) relata que o sistema de observação da terra, desenvolvido e operado pela NASA,

deverá gerar um terabyte de dados de imagens por dia quando em total operação. Em

conseqüência, não se pode acessar ou fazer uso da informação sem que esta esteja

organizada, permitindo uma navegação, pesquisa e recuperação. A recuperação de imagens

representa uma área de pesquisa muito ativa desde o início da década de 1970 e tem

recebido a contribuição de duas grandes linhas de pesquisas que seriam o gerenciamento

de banco de dados e a visão computacional. Estas duas linhas de pesquisas estudam a

recuperação de imagens sob dois ângulos diferentes, um sendo baseado em textos e o outro

baseado no conteúdo visual (Rui, 1999).

Como visto, a recuperação de imagens baseada em texto era uma maneira muito

popular de se recuperar a imagem, primeiro descrevendo a imagem de texto e então usando

sistemas de gerenciamento de banco de dados baseados em textos para executar a

recuperação da imagem. Muitos avanços, tais como modelagem de dados, indexação

multidimensional e avaliação de consultas, tem sido realizados ao longo das pesquisas.

Contudo, Rui (1999) afirma que existem duas grandes dificuldades, especialmente, quanto

ao tamanho das coleções de imagens que são grandiosas. A primeira dificuldade é a vasta

quantidade de trabalho requerido na anotação manual das imagens. A segunda dificuldade,

que é mais essencial, resulta do rico conteúdo das imagens e a subjetividade humana de

percepção. Isto é, para um mesmo conteúdo de imagem, diferentes pessoas possuem

Page 15: Camillo Jorge Santos Oliveira - DCC

13

percepções diferentes. Para Rui (1999), a subjetividade da percepção e anotações

imprecisas podem causar, mais tarde, perdas irrecuperáveis no processo de recuperação.

Do ano de 1990 em diante, por causa da emergência em larga escala das coleções de

imagens, as dificuldades encontradas pela anotação manual tornaram-se mais agudas. A

fim de superar estas dificuldades, foi proposta a recuperação de imagens baseada no

conteúdo. Ou seja, em vez de serem anotadas manualmente por chaves baseadas em texto,

as imagens são indexadas pelo seu próprio conteúdo visual, tal como, cor, forma e textura.

Para Gupta (1997), a recuperação de imagens emergiu como uma área de pesquisa

importante com muitas aplicações em vários campos, como banco de dados de imagens,

multimídia e bibliotecas digitais.

Segundo Vailaya (1998), a organização e a recuperação de imagens baseada no

conteúdo emergiu como uma área importante da visão computacional e da multimídia,

devido ao desenvolvimento rápido das imagens digitais, do armazenamento e da tecnologia

das redes.

A expansão da WWW é fato. Para Abbadeni (1999), a WWW é hipermídia grande,

distribuída e um sistema de informação não estruturado. A cada dia, novos documentos,

entre os quais muitas imagens, são adicionados na Web. Para melhor organizar e recuperar

esta quase ilimitada informação, máquinas de busca na Web são altamente desejadas (Rui,

1999).

A Web é uma complexa e grande fonte de informação multimídia. É estimado que

existam 180 milhões de imagens públicas na Web e que ocupem aproximadamente três

terabytes. Cada vez mais imagens digitais são adicionadas e retiradas na Web todos os dias.

A necessidade de encontrar uma imagem dentro de uma coleção digital específica na Web

é importante para muitos grupos de usuários, incluindo jornalistas, engenheiros,

historiadores, designers, professores, artistas e agências de propagandas, entre outros. A

tecnologia de acesso às imagens vem mudando rapidamente e a forma como as pessoas

interagem com a informação visual ultrapassa nossa compreensão (Goodrum, 2001).

Segundo Goodrum (2001), mais e mais pessoas e organizações carregam imagens para

a Web, desta forma, a pesquisa e recuperação de imagens tem se tornado o maior desafio

para os pesquisadores e desenvolvedores.

O desenvolvimento de ferramentas que permitam agrupar imagens em categorias

semanticamente significativas, que utilizam características visuais de baixo nível, tornou-

Page 16: Camillo Jorge Santos Oliveira - DCC

14

se fundamental dentro do cenário apresentado. Este desenvolvimento representa uma

solução para o desafio da recuperação de imagens baseada no conteúdo.

Ferramentas tornarão possíveis as buscas de imagens específicas em um banco de

dados grande e de utilidade inquestionável e darão à WWW todo seu potencial (Abbadeni,

1999).

Para Abbadeni (1999), a busca por imagens no contexto da WWW é uma tarefa

extremamente difícil e se apresenta como um novo desafio. Três características são

relevantes em se tratando de imagens na WWW:

• o tamanho inacreditavelmente grande de todas estas imagens (espaço ocupado

em disco);

• a diversidade extraordinária de tipos de imagens que podem ser encontrados na

WWW;

• no campo do processamento de imagens e visão computacional, não existe um

algoritmo de uso geral capaz de processar todos os tipos de imagens.

Diante destas características, uma etapa de classificação é fundamental antes do

desenvolvimento de uma ferramenta de recuperação de imagens para a WWW, isto porque,

tais imagens podem pertencer a classes semânticas diferentes, como fotografias, gráficos,

mapas, caricaturas, retratos de pessoas, cartões, faces, imagens coloridas, etc. Após a

classificação, pode-se então fazer a pesquisa por classes semânticas. Desta forma,

Abbadeni (1999) afirma que surgem duas vantagens imediatas:

• uma melhoria efetiva, onde os ruídos são reduzidos, pois a pesquisa é feita em

uma classe específica e não em todo o banco de dados;

• podem ser aplicados algoritmos apropriados a cada classe de imagens, uma vez

que não existem algoritmos genéricos (de uso comum) para todas as classes.

A classificação semântica das imagens pode ser realizada de diversas maneiras. Um

exemplo é mostrado por Vailaya (1998), que separa fotografias de paisagens e fotografias

de cidades (construções), ou ainda, como mostram Guérin-Dungué (2000) e Szumer

(1998), a classificação de imagens fotográficas com cenas de ambientes internos e

externos.

Para Guérin-Dungué (2000) a classificação de cenas do mundo real em categorias

semânticas é um desafio aberto na análise de imagens. Com o aumento da viabilidade de

Page 17: Camillo Jorge Santos Oliveira - DCC

15

base de dados de imagens e vídeos, há uma necessidade crucial por métodos automáticos

de indexação baseado no conteúdo.

1.2 PROBLEMA ABORDADO

Para realizar a classificação semântica das imagens coletadas na WWW, objetivo deste

trabalho, é necessária a especificação de métricas capazes de diferenciar os dois tipos de

imagens em questão. As métricas são procedimentos que aplicados a uma imagem,

retornam um valor numérico capaz de permitir a classificação destas imagens. Estas

métricas estão baseadas nas diferenças entre imagens fotográficas e imagens gráficas.

A coleta das imagens, que serão submetidas à classificação, é realizada por um robô.

O robô recebe como entrada uma lista contendo a URL (Universal Resource Locator) de

vários servidores. Para cada servidor, é analisado o seu arquivo HTML (Hypertext Markup

Language) e extraídas as ligações (links) para outras páginas HTML e os endereços de

todas as imagens de extensão JPEG (Joint Photographics Experts Group) e GIF (Graphics

Interchange Format) encontradas no arquivo HTML, realizando assim a recuperação das

imagens e gravando-as em disco local.

A partir da base de imagens coletada através do robô, aplicam-se métricas para

distinguir as duas classes de imagens, que seriam as imagens fotográficas (Figura 1.1(a) e

Figura 1.2(a)) e as imagens gráficas (Figura 1.3(a) e Figura 1.4(a)). Imagens fotográficas

são as imagens que incluem cenas naturais, como pessoas, faces, flores, animais, paisagens

e cidades (Abbadeni, 1999; Athitsos, 1998; Frankel, 1996).

Algumas características apresentadas pelas imagens fotográficas, podem ser

comprovadas observando a Figura 1.1 e a Figura 1.2, são:

• Descrevem objetos do mundo real;

• Ausência de regiões com cores constantes, isto é, os objetos tendem a possuir

textura;

• Tendem a ser imagens quadradas, com pouca diferença na razão de aspecto

(altura x largura);

• Pouca incidência de regiões com altas saturações de cores;

• Possuem um maior número de cores utilizadas.

Page 18: Camillo Jorge Santos Oliveira - DCC

16

Tanto a Figura 1.1 como a Figura 1.2 mostra uma imagem fotográfica e seu respectivo

histograma de cores no modelo de formação da cor RGB (Red, Green e Blue), onde cada

pixel possui uma certa quantidade de cor em cada canal (Vermelho, Verde e Azul). Cada

canal varia dentro do intervalo de ]255,0[ (256 cores para cada canal). Analisando o

histograma de cores (cor x probabilidade que ocorre a cor (p(cor)), pode-se observar o

número de cores, a cor que mais predomina, cores que não existem e inclusive podemos

(de maneira qualitativa) observar a transição entre os pixels da imagem (mais acentuados

ou menos acentuados).

Figura 1.1 – Exemplo de imagem fotográfica no formato JPEG e seu respectivohistograma de cores.

Figura 1.2 – Exemplo de imagem fotográfica no formato GIF e seu respectivo histogramade cores.

As imagens gráficas seriam logotipos, desenhos, mapas, botões e ícones, geralmente

gerados pelo computador (Abbadeni, 1999; Athitsos, 1998; Frankel, 1996).

Page 19: Camillo Jorge Santos Oliveira - DCC

17

Algumas características apresentadas pelas imagens gráficas, que podem ser

comprovadas observando a Figura 1.3 e a Figura 1.4, são:

• Tendem a possuir grandes regiões cobertas pela mesma cor;

• Possuem menor número de cores utilizadas;

• As bordas dos objetos tendem a ser mais aguçadas (bem definidas);

• Tendem a ser imagens com grande diferença na razão de aspecto (altura x

largura);

• Tendem a possuir um tamanho menor que as imagens fotográficas;

• Geralmente, possuem regiões cobertas com cores saturadas.

Figura 1.3 – Exemplo de imagem gráfica no formato JPEG e seu respectivo histograma decores.

Figura 1.4 – Exemplo de imagem gráfica no formato GIF e seu respectivo histograma decores.

Page 20: Camillo Jorge Santos Oliveira - DCC

18

As métricas elaboradas, implementadas e aplicadas nas imagens coletadas apresentam

como resultado deste processo, um vetor de características extraídas para cada imagem, a

este vetor, chama-se tupla. Após a obtenção das tuplas resultantes das métricas, faz-se a

normalização dos valores dos atributos e obtém-se as amostras de treinamento. O problema

a ser abordado a partir das amostras refere-se ao processo de desenvolvimento de um

classificador para os tipos de imagens envolvidas e a determinação de processos de

validação para o classificador proposto.

1.3 ESTRUTURA DA DISSERTAÇÃO

Nas seções anteriores pode-se notar a importância, nos dias atuais, da separação das

imagens em classes semânticas visando a recuperação das imagens na Web. Nos demais

capítulos desta dissertação encontram-se todos os aspectos relacionados com a proposta de

classificação em imagens fotográficas e as imagens gráficas.

No Capítulo 2, tem-se uma revisão bibliográfica, onde são feitas as descrições do robô

utilizado para a coleta das imagens, a descrição das métricas utilizadas para distinguir os

dois tipos de classes de imagens (fotográficas e gráficas). Por fim, a descrição da

classificação empregando o método de classificação supervisionado ID3.

O Capítulo 3 apresenta os materiais e métodos utilizados nas etapas de

desenvolvimento quais sejam, coleta de imagens, preparação das amostras de treinamento,

aplicação das métricas, obtenção do classificador e validação do método de classificação

proposto.

No Capítulo 4, estão dispostos os resultados dos experimentos. Através da observação

dos dados dispostos na forma de gráficos, pode-se observar a viabilidade de utilização do

classificador.

O Capítulo 5 conclui o trabalho apresentando as contribuições e propostas para

trabalhos futuros.

Page 21: Camillo Jorge Santos Oliveira - DCC

19

Capítulo 2

Revisão Bibliográfica

Aplicações recentes em sistemas multimídia têm gerado a necessidade da utilização de

ferramentas para a recuperação de imagens na WWW. Conforme apresentado no Capítulo

1, nota-se o problema relacionado com a quantidade de imagens incluídas diariamente na

WWW e a necessidade de uma classificação destas imagens em grupos semânticos, o que

pode ser realizado utilizando a abordagem que utiliza informações baseadas no conteúdo

visual das imagens como: cor, forma e textura.

Este Capítulo provê um estudo prospectivo sobre os principais conceitos envolvidos

no desenvolvimento do classificador proposto. Neste estudo, estão incluídos a descrição da

coleta das imagens, a descrição das métricas e a descrição do método supervisionado de

classificação ID3.

A Seção 2.1 apresenta a descrição do processo de coleta das imagens na WWW

utilizando um robô. A Seção 2.2 reúne as considerações sobre as métricas e os conceitos

fundamentais envolvidos com o processo de caracterização das diferenças entre imagens

fotográficas e imagens gráficas. A Seção 2.3 tece comentários sobre a classificação e

finalmente a Seção 2.4 descreve o método de classificação supervisionado ID3 utilizado

neste trabalho.

2.1 PROCESSO DE COLETA DAS IMAGENS

A coleta das imagens na WWW é realizada utilizando-se um robô. Desenvolvido

inicialmente no Laboratório de Vídeo sob Demanda (VoD - Video on Demand) do

Departamento de Ciência da UFMG (Universidade Federal de Minas Gerais). Trata-se de

Page 22: Camillo Jorge Santos Oliveira - DCC

20

um programa capaz de recuperar imagens disponíveis na WWW, que possuem o formato

JPEG e GIF. Basicamente o programa tem como entrada um arquivo texto contendo uma

lista de URL´s da Internet, recuperando os arquivos HTML dos servidores indicados pela

URL. O robô extrai as ligações (links) para outras páginas HTML, extrai as localizações das

imagens, recupera as imagens e grava as mesmas em disco.

Para organizar a recuperação dos arquivos, o robô implementa uma árvore binária.

Cada nodo da árvore binária representa um servidor a ser pesquisado. Para cada servidor

pesquisado, existe uma outra árvore binária que armazena as URL´s pertencentes a um

servidor da lista de servidores de entrada do programa robô. Cada nodo das árvores possui

uma variável de estado, indicando se a URL já está sendo coletada ou não.

Para cada servidor, o programa robô cria um diretório local no disco com o mesmo

nome da URL. Arquivos recuperados de um servidor são salvos neste diretório, sob o

mesmo nome do diretório de sua localização usada no servidor remoto. Assim, tem-se uma

árvore de diretórios exatamente igual à analisada no servidor remoto.

O robô foi implementado utilizando threads o que caracteriza um sistema concorrente.

Threads são disparadas pelo programa robô durante a sua execução, sendo responsáveis

pela recuperação dos arquivos. A execução utilizando threads é importante pois se a

execução fosse seqüencial, o programa robô seria muito lento, sob dois aspectos:

• o robô faz freqüentemente requisições de entrada e saída e isto é sempre um

procedimento instável sobre o ponto de vista de tempo;

• existem muitas regras a serem respeitadas e seguidas pelos robôs na Internet.

Uma delas é crítica, onde o robô não pode fazer mais que uma requisição de

arquivo no mesmo servidor em um período de 60 segundos, assim o robô deve

esperar 60 segundos depois de cada arquivo recuperado de um servidor.

Cada thread disparada trabalha da seguinte maneira: inicialmente pesquisa um

servidor que não está sendo utilizado por outra thread, isto é, somente uma thread pode

coletar imagens de um servidor por vez. A thread faz a pesquisa da URL na árvore de

URL´s e recupera esta. Toda vez que a thread recupera um arquivo texto (extensão .html),

o seu conteúdo é analisado para verificação das ligações para outras páginas. Neste

momento, a árvore binária de servidores URL pode crescer – cada nova ligação de servidor

ou arquivos HTML são inseridos na árvore binária de URL´s. Da mesma forma, se um

Page 23: Camillo Jorge Santos Oliveira - DCC

21

novo servidor é encontrado, este é inserido na árvore binária de servidores. Após cada

recuperação, a thread é forçada a parar por 60 segundos.

2.2 MÉTRICAS

Na construção de um classificador de imagens, são necessários procedimentos, que quando

aplicados sobre as imagens informem a classe (imagens fotográficas ou imagens gráficas) à

qual pertencem. Estes testes (procedimentos) são construídos a partir de métricas que são

baseadas nas diferenças entre as duas classes em questão. Imagens fotográficas e imagens

gráficas tendem a possuir diferentes faixas de valores obtidas com as métricas, com isto

consegue-se distinguir os dois tipos de imagens. As métricas, que serão descritas na

seqüência, foram obtidas de Athitsos (1998).

Número de Cores

O valor utilizado para esta métrica é o número de cores distintas que aparecem na imagem.

Leva-se em consideração o RGB, ou seja, todos os canais (Red, Green, Blue) junto.

Imagens gráficas possuem menor número de cores utilizadas, como pode ser

observado, comparando-se os histogramas apresentados, na Figura 2.1(b) e na Figura

2.2(b), fica bem evidente que a imagem da Figura 2.1(a) possui um menor número de cores

utilizadas que a imagem da Figura 2.2(a).

A normalização é feita dividindo-se o valor obtido por )arg( AlturauraL × , que são as

dimensões da imagem em pixels.

Figura 2.1 – (a) Imagem gráfica no formato GIF. (b) Histograma de cores.

Page 24: Camillo Jorge Santos Oliveira - DCC

22

Figura 2.2 – (a) Imagem fotográfica no formato GIF. (b) Histograma de cores.

Porcentagem da Cor Predominante

Esta métrica consiste em encontrar a porcentagem da cor mais freqüente na imagem. O

valor calculado é o número de pixels da cor predominante expresso em porcentagem.

Imagens gráficas possuem um número pequeno de cores e grandes regiões com a mesma

cor. Imagens gráficas possuem um valor calculado maior que o das imagens fotográficas.

Comparando os histogramas apresentados, na Figura 2.1(b) e na Figura 2.2(b) observa-se a

porcentagem da cor que mais ocorre. Note que a imagem gráfica da Figura 2.1(a) possui

uma cor que aparece em 57% dos seus pixels. Já na imagem fotográfica da Figura 2.2(a)

possui uma cor que aparece em 10% dos pixels da imagem.

A normalização é feita dividindo-se o valor obtido por )arg( AlturauraL × , que são as

dimensões da imagem em pixels.

Vizinho Mais Distante

A métrica do vizinho mais distante baseia-se na transição de cores que aparecem tanto em

imagens gráficas como em imagens fotográficas. Imagens gráficas possuem regiões com

cores constantes e possuem transições de cores bem pronunciadas (visíveis).

Para dois pontos 1p e 2p , com vetor de cores ),,( 111 bgr e ),,( 222 bgr

respectivamente, define-se distância de cor d como:

212121 bbggrrd −+−+−= .

Page 25: Camillo Jorge Santos Oliveira - DCC

23

Desde que o intervalo de cores varie de 0 até 255, o intervalo para a distância de cor

varia de 0 até 765.

Cada pixel 1p (exceto os das bordas da imagem) possui vizinhos acima, abaixo, à

direita e à esquerda. Um vizinho 2p de 1p é considerado o vizinho mais distante de 1p se

a distância de cor entre 1p e 2p for maior ou igual que a distância entre 1p e qualquer um

dos seus vizinhos. Define-se valor de transição de 1p , como a distância entre 1p e seu

vizinho mais distante.

Nesta métrica, deve-se especificar o parâmetro P que varia entre 0 e 765. O valor

obtido para a imagem é o número de pixels que tem um valor de transição maior ou igual a

P (Athitsos, 1998).

Desde que imagens gráficas possuam grandes regiões com a mesma cor, elas possuem

muitos pixels cujo valor de transição é zero. Conseqüentemente, se P for igual a 1 (um),

espera-se, como regra, valores calculados maiores para imagens fotográficas que imagens

gráficas.

A normalização é feita dividindo-se o valor obtido por )arg( AlturauraL × , que são as

dimensões da imagem em pixels.

Existe uma segunda versão desta mesma métrica para acentuar as diferenças dos

valores calculados, entre imagens gráficas e imagens fotográficas, que gera valores altos de

P . Nesta segunda versão, o valor calculado em uma imagem é o número 1f de pixels com

valor de transição maior ou igual a P , dividido pelo número 2f de pixels com valor de

transição maior que 0 (zero). Desde que 2f tenda a ser grande para imagens fotográficas,

imagens gráficas têm valores calculados maiores em relação às imagens fotográficas.

Saturação

Esta métrica é baseada na saturação das cores. Cores altamente saturadas são mais comuns

em imagens gráficas do que em imagens fotográficas.

Para um pixel p com vetor de cor ),,( bgr , seja m o máximo e n o mínimo entre o

gr, e b . O nível de saturação de p é definido por nm − .

É especificado um parâmetro P . O valor calculado de uma imagem é o número de

pixels com nível de saturação maior ou igual à P . Para valores altos de P , esperam-se

Page 26: Camillo Jorge Santos Oliveira - DCC

24

valores calculados maiores para as imagens gráficas, desde que as cores saturadas ocorram

mais freqüentemente em imagens gráficas.

A normalização é feita dividindo-se o valor obtido por )arg( AlturauraL × , que são as

dimensões da imagem em pixels.

Histograma de Cor

A métrica do histograma de cor está baseada no fato que certas cores ocorrem mais

freqüentemente em imagens gráficas do que em imagens fotográficas. Consiste na simples

coleta estatística de um grande número de imagens gráficas e fotográficas e na construção

de histogramas que mostram qual a freqüência de ocorrência de cada cor para cada tipo de

imagem. O valor calculado para uma imagem depende da correlação de seu histograma de

cor com o histograma das imagens gráficas e o histograma das imagens fotográficas.

Um histograma de cor é uma tabela tridimensional de tamanho 161616 xx . Cada cor

),,( bgr corresponde ao bin indexado por

16,

16,

16bgr

na tabela. O histograma de

cor de uma imagem contém cada bin o número de pixels naquela imagem cujas cores

correspondem para aquele bin.

A correlação ),( BAC entre dois histogramas A e B é definido como

∑∑∑= = =

=16

0

16

0

16

0,,,, )(),(

i j kkjikji BABAC ,

onde kjiA ,, e kjiB ,, são respectivamente os bins (pacotes) em A e B indexados por

),,( kji .

Cria-se o histograma de cor das imagens gráficas gH apanhando centenas ou milhares

de imagens gráficas e calculando a média de seus histogramas de cor. Similarmente cria-se

o histograma de cor das imagens fotográficas fH , usando um conjunto grande de imagens

fotográficas.

Suponha que uma imagem I tenha o histograma de cor iH e considere

),( gi HHCa = e ),( fi HHCb = . O valor calculado para a imagem I na métrica do

histograma de cor é definido como ba

bs

+= . Quando ),( fi HHC aumenta, s também

Page 27: Camillo Jorge Santos Oliveira - DCC

25

aumenta. Quando ),( gi HHC aumenta, s diminui. Espera-se que os valores sejam

calculados maiores para imagens fotográficas.

Histograma do Vizinho Mais Distante

Esta métrica está baseada nos mesmos princípios utilizados na métrica do vizinho mais

distante.

Nesta métrica, o histograma do vizinho mais distante é um histograma unidimensional

com 766 bins. O ésimoi − bin (começando com zero) contém o número de pixels com

valor de transição igual à i . Cria-se um histograma gF , de uma imagem gráfica, pela

média dos histogramas do vizinho mais distante de centenas ou milhares de imagens

gráficas. Cria-se um histograma fF , de uma imagem fotográfica, na mesma maneira como

foi feito para as imagens gráficas, utilizando um grande número de imagens fotográficas.

Define-se a correlação ),( BAD entre os histogramas A e B como

∑=765

0

),( ii BABAD ,

onde iA e iB são, respectivamente, os ésimosi − bins de A e B .

Seja iF o histograma do vizinho mais distante de uma imagem,

),( gi FFDa = e ),( fi FFDb = .

O valor calculado s de uma imagem nesta métrica é dado por

bab

s+

= .

Como na métrica do histograma de cores, espera-se que imagens fotográficas possuam um

valor calculado maior que das imagens gráficas.

Razão de Dimensão

As razões de dimensões são dadas por:

• w é a variável referente à largura da imagem em pixels;

• h é a variável referente à altura da imagem em pixels;

Page 28: Camillo Jorge Santos Oliveira - DCC

26

• m receberá o maior valor entre w e h , ou seja, se w tiver um valor maior, m

receberá o valor de w , caso contrário, se h for maior que w , então m receberá

o valor de h .

• l receberá o menor valor entre w e h , ou seja, se w tiver um valor menor, m

receberá o valor de w , caso contrário, se h for menor que w , então m

receberá o valor de h .

O valor calculado para a Razão de Dimensão seria a razão entre l e m .

Espera-se que as imagem fotográficas possuam um valor calculado maior que das

imagens gráficas.

Dimensão Menor

O valor calculado para uma imagem é o tamanho de sua menor dimensão em pixels, ou

seja, se a altura é menor, então o valor calculado para a imagem será a altura. Se a largura

for menor, então o valor calculado para a imagem será a largura. Em geral, as imagens

gráficas têm valores calculados menores do que para as imagens fotográficas.

2.3 CLASSIFICAÇÃO

Han (1996) afirma que classificar consiste em separar conjuntos distintos de objetos ou

observações, alocando novos objetos ou observações em grupos previamente definidos.

Para realizar a classificação, é necessário um algoritmo para separar e alocar objetos ou

observações. Este algoritmo é chamado técnica de classificação. O objetivo final de um

método de classificação é prover resultados relevantes ou replicar o julgamento

especialista. A performance relativa de diferentes técnicas de classificação pode depender

das condições dos dados.

Wu (1999) afirma que a aquisição de conhecimento em bases de dados tem sido

trabalhada por pesquisadores em várias disciplinas, incluindo a inteligência artificial, há

mais de vinte anos. Embora muito trabalho tenha sido feito e alguns pacotes de

aprendizagem comerciais já estejam disponíveis, o trabalho existente concentra-se nos

quatro aspectos seguintes:

• construção de bases de conhecimento para sistemas especialistas;

Page 29: Camillo Jorge Santos Oliveira - DCC

27

• projeto de vários algoritmos de aprendizado;

• adição de uma máquina de indução para um sistema de banco de dados existentes

em modo ad hoc para implementar regras de indução do banco de dados; e

• projeto de uma máquina específica para aprender de um conjunto de dados de

domínio específico. Junto com o reconhecimento da limitação do problema do

conhecimento em transformar conhecimento de especialistas humanos para

sistema baseados em máquinas que aprende e sistemas baseados no conhecimento

e ainda é uma fronteira de pesquisa importante para ambos, máquina de

aprendizado e tecnologia de banco de dados.

Neste trabalho, utiliza-se um método de classificação não paramétrico supervisionado

chamado ID3 (Itemized Dichotomizer 3) desenvolvido por Quinlan (1986). Trata-se de um

algoritmo que usa lógica e matemática para processar, organizar e simplificar um grande

conjunto grande de dados. Sua habilidade para operar dados não numéricos é facilmente

aplicável para muitas situações. Este método é capaz de gerar regras através da indução de

atributos, gerando uma árvore de decisão. Han (1996) afirma ser o método mais utilizado

em aplicação de aprendizado indutivo. Para Pao (1989), o ID3 é facilmente automatizado.

O aprendizado indutivo utiliza um conjunto de exemplos (amostra de treinamento) e

determina uma relação entre estes exemplos via inferência indutiva. Regras de indução

podem ser utilizadas para predizer (prever) as saídas ou para replicar o julgamento. A

técnica do aprendizado indutivo é diferente da técnica estatística em muitos aspectos (Han

1996; Mak, 1996; Pal, 1997). Uma diferença é que os métodos estatísticos utilizam funções

discriminantes, enquanto o método ID3 (não numérico, categórico) desenvolve uma árvore

discriminante, resultado da indução utilizando amostras de treinamento. O método ID3

assume atributos nominais enquanto os métodos estatísticos assumem atributos numéricos.

2.4 O MÉTODO ID3

Origens

Em 1966, foi publicado um modelo de formação de conceito. Este modelo está baseado na

idéia de que para formar conceitos discretos do “novo” (desconhecido), do desorganizado

ou de dados não estruturados, as mentes humanas dividem os itens e conceitos em

Page 30: Camillo Jorge Santos Oliveira - DCC

28

subconjuntos com características comuns. Aqui está um esboço da estratégia da formação

do conceito (Hunt, 1966):

1. Estabelecer critérios que possam ser úteis, de acordo com alguma heurística,

para separar um conjunto em subconjuntos. Um exemplo em nosso contexto

seria dado pelas características antagônicas que permitam separar imagens

gráficas de imagem fotográficas (situações antagônicas). Outros exemplos

seriam os critérios estabelecidos para separar humano de animal, macho de

fêmea.

2. Dividir (separar) o conjunto de acordo com um critério selecionado.

3. Retornar ao item 1, escolher um novo critério até que uma única definição de

dados “novos” (desconhecidos) seja alcançada.

Hunt (1966) chamou este algoritmo de CLS (Concept Learning System). Muitos

afirmam que este método é baseado no conceito do dividir para conquistar. De fato, alguns

cientistas da computação explicam seus projetos de algoritmos de dividir para conquistar

como sendo intuitivos.

CLS é um método algorítmico para resolver tarefas de aprendizados de conceitos

simples usando conceitos de aprendizados para classificar informação nova. Devido à

natureza do CLS, este requer um número pequeno de valores discretos possíveis para o

vetor de características (esta é uma falha que foi superada com o ID3). O ID3 usa o CLS

como parte de sua implementação.

Desenvolvimento

Quinlan (1986) utilizando o modelo da formação do conceito, desenvolveu o método ID3,

que trata de um método supervisionado de aprendizado, capaz de gerar regras através da

construção de uma árvore de decisão. A construção desta árvore é função do valor da

entropia dos atributos da amostra de treinamento. A entropia mede o grau de desordem

entre os atributos. Deste modo, consegue-se induzir a construção de uma árvore, levando-

se em conta uma hierarquia de importância entre os atributos. Trata-se do método TDIDT

(Top-Down Induction Decision Tree) (Quinlan, 1986; McSherry, 1999; Wu, 1999).

Quinlan (1986) usou a estratégia do dividir para conquistar combinada à lógica, isto é, ao

critério de classificação para separar em grupos menores. O resultado deste experimento

foi impressionante com pequeno tempo de processamento.

Page 31: Camillo Jorge Santos Oliveira - DCC

29

Implementações

Antes que o algoritmo possa ser implementado, algumas terminologias devem ser

definidas. Faz-se referência a um conjunto de treinamento I . Cada subconjunto de I ,

incluindo o mesmo I na primeira iteração, será chamado de “janela”.

Segue um esboço do algoritmo ID3 :

1. Selecionar aleatoriamente uma “janela” (subconjunto) de I .

2. Usar o CLS para formar uma regra, considerando-se a estrutura de árvore de

decisão produzida pela “janela”.

3. Realizar iterações em todo conjunto I , encontrando os elementos que não

foram classificados pelas regras geradas no item 2.

4. Formar uma nova “janela” adicionando para a “janela” corrente os elementos

que não foram classificados no item 3.

5. Repetir o item 2 até não existirem mais elementos não classificados no conjunto

I.

Entropia

Uma definição matemática do ID3 é que este determina algoritmicamente o maior ganho

em conteúdo de informação, enquanto o sistema decrementa a entropia (TDIDT). A

entropia e o conceito de conteúdo de informação recorrem a muitos aspectos da ciência da

computação, incluindo teoria da informação, algoritmos e compressão de dados.

Sucintamente, conteúdo da informação é a quantidade de dados existente em cada unidade

de representação (usualmente bits) e entropia é a menor unidade de representação

necessária para comunicar um certo conjunto de dados.

Por exemplo, seja M o conjunto {1, 2}. Obviamente, um bit será necessário para

representar um elemento de M , o conteúdo da informação de cada bit é um item de M .

A entropia pode ser definida matematicamente. Sendo W um subconjunto (“janela”)

de uma amostra de treinamento, m é o número de elementos da “janela” W e an o

número de instâncias do elemento a em W . Conseqüentemente, a probabilidade ap de

encontrar a em W é definida como:

Page 32: Camillo Jorge Santos Oliveira - DCC

30

mn

p aa = (1)

Para um sistema simples com classes ic , =i 1, 2, C,Κ , a entropia do sistema podem

ser definidas como:

∑=

−=C

iii ppEntropia

12log (2)

Por exemplo, em um conjunto de dados com dois valores disjuntos (como o conjunto

M mostrado anteriormente), onde existe uma probabilidade igual de encontrar cada um

dos valores, a entropia pode ser calculada como:

15,0log5,05,0log5,0)( 22 =−−=MEntropia (3)

Caso Geral

Nesta seção, é dado uma interpretação matemática do ID3. A complexidade das equações

pode tornar o método ID3 inteiramente difícil de ser analisado devido ao grande número de

variáveis.

Seja N o número de elementos (padrões conhecidos) separados em conjuntos de

padrões de classes ic , =i 1, 2, C,Κ e o número de elementos na janela ic é iN .

Assumindo que todos os atributos têm J valores, para cada padrão K atributos e cada

atributo tem kJ valores.

O objetivo matemático final do ID3 é reorganizar os dados de modo a criar uma árvore

de decisão. Isto é feito seguindo as etapas abaixo:

1. Calcule a entropia inicial do conjunto de treinamento T utilizando a Equação (2).

2. (a) Um atributo deve ser selecionado para ser o nodo raiz da árvore de decisão.

Isto é feito particionando o conjunto de treinamento T em K subconjuntos

de treinamento: para cada atributo kA , =k 1, 2, K,Κ , onde ka é um valor

possível de kA , particionando T de acordo com os valores kja dos J valores

do atributo kA . O número de atributos no ramo kja é kjn . Note que estas sub

árvores particionadas não têm nenhuma relação inerente ao critério do grupo

final.

Page 33: Camillo Jorge Santos Oliveira - DCC

31

(b) O número de padrões pertencendo à classe ic em qualquer ramo da

população kjn é definido como )(inkj . A entropia de cada ramo kjn é avaliada

por:

∑=

−=C

i kj

kj

kj

kj

k n

in

n

injATEntropia

12

)(log

)(),,( (4)

(c) A entropia de cada subconjunto é um resultado parcial – o ID3 necessita

considerar a entropia total do sistema. Esta é calculada como:

∑ ∑=

=

J

jk

j ij

ij

k jATEntropian

nATEntropia

1

),,(),( (5)

(d) A árvore de decisão com a menor entropia é então selecionada pelo ID3

seleciona. A redução na entropia pode ser facilmente calculada através de:

)(),()( kEntropiaATEntropiaTEntropia k ∆=− (6)

(e) Encontre o atributo 0kA que dê o maior decréscimo na entropia.

Matematicamente, encontre 0kA tal que )()( 0 kEntropiakEntropia ∆>∆ para

todo =k 1, 2, K,Κ e 0kk ≠ .

(f) O nodo 0kA torna-se o nodo raiz da árvore de decisão.

3. Sintetize o próximo nível da árvore de decisão encontrando o atributo kA que,

depois de testar todos os ramos, produz o maior decréscimo na entropia do

sistema. Forme subconjuntos de um nível prévio separando T de acordo com o

valor de kA . É importante observar que o mesmo atributo é testado ao longo da

largura de cada nível de profundidade da árvore.

4. Repita este algoritmo até todos os elementos do subconjunto sejam do mesmo

tipo ou a entropia do sistema todo seja zero.

A Figura 2.3 mostra um exemplo de árvore de decisão, onde cada nodo não folha é um

atributo e cada nodo folha uma classe (um padrão conhecido).

Page 34: Camillo Jorge Santos Oliveira - DCC

32

Figura 2.3 – Exemplo de uma árvore de decisão.

A árvore de decisão construída tem-se uma estrutura que agrupa as regras aprendidas

durante o treinamento. Uma regra nada mais é que uma expressão lógica capaz de produzir

como resultado a classe a qual o objeto possui. Um exemplo de expressão lógica

sintetizada a partir de uma árvore de decisão pode ser:

)()()()( 4222434111 NCaAaAaA →∧∧ , que representa o caminho destacado na Figura 2.3.

Para o atributo 1A aplicando um limiar resulta o subconjunto 11a e para o atributo 4A

aplicando um limiar resulta o subconjunto 43a e para o atributo 2A aplicando um limiar

resulta no subconjunto 22a que resultaria no nodo folha 4N que seria a classe, resultante da

classificação. Esta expressão pode ser representada utilizando estruturas de seleção

condicional se-então, que seria equivalente à:

Se o valor do atributo 111 aA = , e

o valor do atributo 434 aA = , e

o valor do atributo 222 aA = .

Então todas as classificações 4Nc i ∈ podem ser assumidas.

O conjunto CN ⊆4 é o conjunto de uma ou mais conclusões, Cc i ∈ , que ocorre

neste nodo. A expressão )( 4NC indica que todas as classificações 4Nc i ∈ podem ser

afirmadas. O ideal seria que cada caminho na árvore terminasse com um nodo folha

Page 35: Camillo Jorge Santos Oliveira - DCC

33

contendo uma conclusão única ( 1=iN para todo i ). Cada árvore de classificação poderia

ser capaz de diferenciar cada um dos exemplos que aprendeu da amostra de treinamento

T .

Complexidade

Segundo Quinlan (1986) a cada nodo não folha da árvore de decisão, o ganho de cada

atributo não testado F deve ser determinado. Este ganho depende do valor ap para cada

valor iF de F , assim todo objeto em C deve ser examinado para determinar a sua classe e

seu valor F . Conseqüentemente, a complexidade computacional do procedimento a cada

nodo é ( )FCO ⋅ , onde F é o número de atributos acima. O gasto computacional total do

ID3 requerido por iteração é assim proporcional ao produto do tamanho do conjunto de

treinamento, o número de atributos e o número de nodos não folhas na árvore de decisão.

A mesma relação aparece ao se estender para todo processo de indução, até mesmo quando

várias iterações são executadas. Nenhum crescimento exponencial em tempo e espaço tem

sido observado quando as dimensões do trabalho de indução crescem, desta forma, a

técnica poderá ser aplicada para trabalhos maiores.

Vantagens e Desvantagens

Uma das grandes vantagens do ID3 é a sua simplicidade, quando comparado com outros

algoritmos de aprendizado: ID3 é muito mais direto na sua aproximação. Sua modelagem

baseada na cognição torna relativamente simples a compreensão de seu funcionamento

pelos humanos. Lamentavelmente, a árvore de decisão produzida pelo ID3, quando

utilizado para grandes processos ou conjuntos de dados com ruídos, tende a ser confusa

para a percepção humana.

ID3 executa muito bem quando os conjuntos dados são complexos e grandes – muito

melhor que o seu predecessor o CLS. Uma das maneiras pela qual o ID3 realiza isto é

encontrando o dado escondido e seus relacionamentos. Isto deve-se a problemas usando a

técnica simples do dividir e conquistar.

Outra vantagem do ID3 é seu uso conservativo dos recursos do sistema. O tempo

computacional envolvido no ID3 é linear e pode ser calculado como o produto do número

de objetos de treinamento, o número de possíveis atributos que descrevem cada objeto, e a

Page 36: Camillo Jorge Santos Oliveira - DCC

34

complexidade do critério final de seleção (medido como o número de nodos na árvore de

decisão).

A maior desvantagem do ID3 é que a árvore de decisão produzida é essencialmente

imutável – não se pode eficientemente trocar a árvore de decisão sem reconstruí-la. Usando

um método de atualização, a árvore tende a produzir um árvore de decisão que está longe

da árvore de decisão ótima, refutando assim a idéia original de formar a árvore de decisão

do ID3.

2.5 CONSIDERAÇÕES FINAIS

Nas seções deste capítulo pode-se observar a utilização de métricas na obtenção de valores,

parâmetros que permitem caracterizar os diferentes tipos de imagens, neste caso, imagens

fotográficas e imagens gráficas.

Estes valores resultantes das métricas serão organizados em tuplas contendo os

atributos valorados para cada imagem coletada.

O método é capaz de construir uma árvore de decisão em função do valor da entropia

dos atributos destas tuplas das amostras de imagens de treinamento.

Verifica-se que o método ID3 de classificação supervisionada apresenta características

importantes e adequadas ao desenvolvimento deste trabalho.

No próximo capítulo, estão descritos os procedimentos relacionados à utilização do

ID3, e também são apresentados os materiais e métodos empregados nas etapas de coleta

das imagens na WWW, separação das amostras de treinamento, aplicação das métrica para

obtenção de tuplas contendo as características das imagens, a utilização do método de

classificação supervisionado ID3 e também são discutidos os materiais e métodos

utilizados no processo de validação do modelo de classificação.

Page 37: Camillo Jorge Santos Oliveira - DCC

35

Capítulo 3

Materiais e Métodos

Nos capítulos anteriores, observa-se a importância dos classificadores para a recuperação

de imagens no ambiente da WWW. Também, foram descritas as principais métricas

envolvidas no processo de classificação e o método ID3 utilizado na construção do

classificador.

Este capítulo é dedicado à descrição dos materiais e métodos utilizados no

desenvolvimento e validação do classificador de imagens propostos.

Estimar a precisão de um classificador que utiliza um algoritmo de aprendizado

supervisionado é importante não somente para prever a sua exatidão de cálculos e

regularidade na execução, mas também se estabelecer critérios de escolha do classificador

em um conjunto de classificadores (seleção do modelo) ou combinando classificadores

(Wolpert, 1992).

O capítulo está organizado em seções que representam cada uma das etapas de

desenvolvimento do classificador de imagens. A Seção 3.1 apresenta os resultados

referentes à execução do robô de coleta de imagens. A Seção 3.2 descreve o processo

inicial de preparação das amostras de treinamento. A Seção 3.3 descreve os resultados

obtidos com aplicação das métricas. A Seção 3.4 descreve a utilização do método ID3 na

obtenção do classificador. A Seção 3.5 descreve os métodos que podem ser utilizados para

validação do classificador. A Seção 3.6 analisa a escolha do método para validar o modelo

e finalmente a Seção 3.7 faz a descrição dos experimentos para a validação do classificador

utilizando o método de validação cruzada com k-dobras.

Page 38: Camillo Jorge Santos Oliveira - DCC

36

3.1 DADOS DA COLETA DE IMAGENS

No processo de coleta das imagens na WWW, ilustrado na Figura 3.1, utiliza-se um

programa robô descrito na Seção 2.1. Foram coletadas aproximadamente 10 gigabytes de

imagens no formato GIF e JPEG em vários domínios. Estas imagens foram armazenadas

em disco rígido do computador onde o robô esteve em execução por aproximadamente 8

dias.

3.2 PREPARAÇÃO DAS AMOSTRAS DE TREINAMENTO

Após o processo de coleta e armazenamento das imagens, realiza-se a separação das

amostras que serão utilizadas no treinamento. Esta etapa consiste em separar as imagens

em quatro grupos, que estão enumerados abaixo:

1. Imagens gráficas no formato GIF;

2. Imagens fotográficas no formato GIF;

3. Imagens gráficas no formato JPEG;

4. Imagens fotográficas no formato JPEG.

Figura 3.1 – Coleta de imagens na WWW.

Todo o processo de separação das amostras de treinamento é realizado por inspeção

visual. Isto torna o trabalho um pouco cansativo. A figura 3.2 ilustra a separação visual das

amostras de treinamento.

Page 39: Camillo Jorge Santos Oliveira - DCC

37

A separação destas em um dos grupos acima mencionados é realizada de forma

manual. Na execução desta etapa foram separadas 1350 imagens fotográficas GIF, 3058

imagens gráficas GIF, 4763 imagens fotográficas JPEG e 1434 imagens gráficas JPEG.

Figura 3.2 – Processo de separação visual das imagens, da base de imagens, formando asamostras de treinamento.

3.3 APLICAÇÃO DAS MÉTRICAS

O processo de separação visual das imagens resulta em quatro conjuntos distintos (ver

Seção 3.2). Sobre cada um destes conjuntos aplicam-se as métricas descritas na Seção 2.2,

quais sejam número de cores, cor predominante, vizinho mais distante (as duas versões

descritas anteriormente), saturação, histograma de cor, histograma do vizinho mais

distante, razão de dimensão e dimensão menor.

Nesta seção, são mostrados os resultados indicativos para cada métrica. Foram

submetidos às métricas 1350 imagens fotográficas GIF, 2967 imagens gráficas GIF, 4742

imagens fotográficas JPEG e 1434 imagens gráficas JPEG. Como os valores calculados

pelas métricas possuem intervalos e grandezas diferentes, para cada tipo de imagem, estes

valores devem ser normalizados (na Seção 2.2, na descrição das métrica, é citada a

normalização), colocando-os no intervalo fechado de [0,1]. Desta forma, qualquer que seja

Page 40: Camillo Jorge Santos Oliveira - DCC

38

o valor resultante de cada métrica, estará normalizado, não existindo valores fora do

intervalo de ]1,0[ .

Os valores obtidos para cada imagem são colocados em um vetor, constituindo assim

uma tupla, para cada imagem. Uma tupla é descrita da seguinte forma:

),,,,( 21 kji caaat Κ=

Onde: it - tupla da i-ésima imagem; ja - j-ésima métrica (número de cores, porcentagem

da cor predominante, vizinho mais distante 1, vizinho mais distante 2, saturação,

histograma de cor, histograma do vizinho mais distante, razão de dimensão) e kc - k-ésima

classe (neste trabalho tem-se apenas duas classes: 1 – imagens fotográficas e 0 – imagens

gráficas).

A Figura 3.3 mostra exemplos de imagens e suas respectivas tuplas obtidas após a

aplicação das métricas.

Como resultado desta etapa, tem-se 1350 tuplas de imagens fotográficas GIF, 2967

tuplas de imagens gráficas GIF, 4742 tuplas de imagens fotográficas JPEG e 1434 tuplas

de imagens gráficas JPEG.

3.4 UTILIZAÇÃO DO ID3

O método supervisionado de aprendizado ID3 é capaz de gerar regras através da

construção de uma árvore de decisão.

Na construção do classificador, utilizam-se as tuplas resultantes da aplicação das

métricas nas amostras de treinamento. Não se deve esquecer que estes valores foram

normalizados.

Para cada atributo contido nas tuplas, calcula-se a entropia, Seção 2.4. O atributo de

maior entropia passa a ser o nodo raiz da árvore de decisão.

Com os valores existente para o atributo de maior entropia, busca-se um limiar, que

seria o valor que melhor consegue separar o conjunto de treinamento em questão. Levando

somente em consideração, para a separação, os valores do atributo de maior entropia.

Aplicando um limiar, utilizando o nodo raiz, ou seja o atributo de maior entropia,

realiza-se a classificação das tuplas, gerando dois novos subconjuntos de tuplas onde o

Page 41: Camillo Jorge Santos Oliveira - DCC

39

atributo utilizado como critério não participa dos dois novos subconjuntos. O algoritmo é

descrito no Capítulo 2, Seção 2.4.

( )1;733,0;017,0;623,0;211,0;087,0;000,1;003,0;000364,0=t(a)

( )1;927,0000,0;208,0;072,0;119,0;870,0;132,0;000013,0=t(b)

( )0;249,0;192,0;181,0;061,0;113,0;626,0;413,0;000986,0=t(c)

( )0;294,0;144,0;157,0061,0;629,0;210,0;825,0;000008,0=t(d)

Figura 3.3 – Quatro imagens e suas respectivas tuplas obtidas depois da aplicação dasmétricas. (a) imagem fotográfica no formato JPEG, (b) imagem fotográfica no formatoGIF, (c) imagem gráfica no formato JPEG e (d) imagem gráfica no formato GIF. A ordemdos atributos da tupla são: número de cores, porcentagem da cor predominante, vizinhomais distante 1, vizinho mais distante 2, saturação, histograma de cor, histograma dovizinho mais distante, razão de dimensão e classe (1 – imagem fotográfica ou 0 – imagemgráfica).

Page 42: Camillo Jorge Santos Oliveira - DCC

40

Com a árvore de decisão construída, tem-se uma estrutura que agrupa as regras

aprendidas. Neste momento, o classificador, ou seja, o modelo para classificação está

construído.

Desta forma, tem-se um modelo de classificação que utiliza o ID3 para disponibilizar

uma árvore de decisão. Uma árvore para imagens JPEG e outra para imagens GIF.

3.5 MÉTODOS PARA VALIDAR O MODELO

Esta seção é dedicada à descrição de alguns métodos capazes de verificar a estabilidade do

modelo de classificação obtido.

Um classificador é uma função de mapeamento de uma instância desconhecida (sem

tipo, rótulo, sem classificação), tornando-a conhecida (com tipo, rótulo, classificada)

usando para isto uma estrutura de dados interna.

O método ID3, descrito na Seção 3.4, constrói, a partir de um conjunto de dados

conhecidos, uma árvore de decisão através da abordagem TDIDT.

Para validar o classificador, faz-se necessário a utilização de algumas definições

matemáticas.

Seja V o espaço de instâncias desconhecidas, Y o conjunto classes possíveis,

YVX ×= o espaço de instâncias conhecidas e },,,{ 21 nxxxD Κ= um conjunto de dados

consistindo de N instâncias conhecidas, onde YyVvx iii ∈∈ , . Um classificador C faz

o mapeamento de uma instância desconhecida Vv ∈ para uma instância conhecida Yy ∈

e um indutor I faz o mapeamento de um conjunto de dados D em um classificador C . A

notação ),( vDI significa atribuir um tipo para a instância v pelo classificador construído

pela indução I no conjunto de dados D , isto é, )))(((),( vDIvDI = . Assume-se que exista

uma distribuição no conjunto de instâncias conhecidas e que o conjunto de dados sejam

consistidos de uma distribuição independente e uniforme.

A precisão do classificador C é a probabilidade de classificar corretamente uma

instância selecionada de maneira aleatória, isto é, ])(Pr[ yvCprecisão == para uma

instância selecionada de maneira aleatória Xyv ∈, , onde a distribuição de probabilidade

sobre o espaço das instâncias é o mesmo da distribuição que foi usada para selecionar as

Page 43: Camillo Jorge Santos Oliveira - DCC

41

instâncias para o conjunto de treinamento do indutor. Normalmente, ao utilizar uma única

forma de estimar a precisão não faz sentido pois não apresenta um intervalo de confiança.

Assim deve-se considerar como aproximar um intervalo quando possível. Para identificar

fraquezas, também tenta-se identificar casos onde a estimativa falha.

Existem vários métodos capazes de testarem a estabilidade de um modelo. Entre eles

temos: validação com divisão em duas partes (holdout validation), validação cruzada com

subamostragem aleatória (random subsampling cross-validation), validação cruzada com

k-dobras (k-fold cross-validation), validação cruzada com “um de fora” (leave-one-out

cross-validation) e bootstrap validation.

Validação com divisão em duas partes

O método de validação com divisão em duas partes (holdout validation) (Kohavi, 1995;

Blum, 1999) é um dos métodos mais comuns para estimar a generalização de erro. Este

método, também chamado de teste de estimativa simples, particiona o conjunto de dados

em dois subconjuntos mutuamente excludentes chamados de conjunto de treinamento e

conjunto de teste. É comum designar 32 do conjunto de dados para o conjunto de

treinamento e 31 para o conjunto de teste. A Figura 3.4 mostra um esboço da partição do

conjunto de dados para o método de validação com divisão em duas partes.

Figura 3.4 – Esboço do método de validação com divisão em duas partes.

De posse do conjunto de dados particionado, realiza-se o treinamento com o conjunto

de dados destinado para este fim e aplica-se a árvore gerada na etapa de treinamento na

etapa de classificação dos dados do conjunto de teste, calculando-se então a precisão da

classificação.

O método de validação com divisão em duas partes é uma estimativa pessimista

porque somente uma parte dos dados é utilizada para o treinamento. Quanto maior o

Page 44: Camillo Jorge Santos Oliveira - DCC

42

número de instâncias deixadas para teste maior será o erro, porém um pequeno conjunto de

teste conduz a um intervalo de confiança muito grande. Como verifica-se a seguir.

Em estatística, uma sucessão de eventos independentes é chamado processo de

Bernoulli. Seja S o número de classificações corretas em um conjunto de teste, então S é

uma distribuição binomial (soma de Bernoulli). Para um conjunto de teste razoavelmente

grande, a distribuição NS , onde N é o tamanho do conjunto de teste, é

aproximadamente uma distribuição normal com média p e variância Npp )1( − . Assim,

o valor transformado para NSf = (a taxa de acerto do classificador) é dado subtraindo-

se a média e dividindo-se pelo desvio padrão:

Npp

pf

)1( −−

Pelo teorema do limite de De Moivre-Laplace, tem-se:

cz

Npp

pfz =

+≤−

−≤−

)1(Pr

Onde z é o thc −− 2)1( ponto quantil de uma distribuição normal padrão e c é o

intervalo de confiança. Com c100 porcento de intervalo de confiança, este determina z e

inverte as desigualdades. Inverter as desigualdades conduz para uma equação quadrática

em p , onde as raízes são os pontos inferior e superior do intervalo de confiança.

+

+−±+=

Nz

Nz

Nf

Nf

zN

zfp

2

2

222

142

O maior problema do método de validação com divisão em duas partes ocorre quando

o conjunto de dados estiver distribuído de forma esparsa e as amostragens não forem

representativas. Este método faz uso ineficiente dos dados (Kohavi, 1995).

Weiss (1991) afirma que a desvantagem do método de validação com divisão em duas

partes está na redução da quantidade de dados disponíveis para treinamento e validação,

quando do particionamento do conjunto de dados.

Page 45: Camillo Jorge Santos Oliveira - DCC

43

Validação cruzada com subamostragem aleatória

O método validação cruzada com subamostragem aleatória (random subsampling cross-

validation) (Kohavi, 1995) separa um número fixo de elementos exemplos aleatórios do

conjunto de dados D . No segundo experimento, separa o mesmo número de exemplos,

porém em posições excludentes (diferentes do experimentos anteriores). Repete-se esta

separação em todos os demais experimentos que possam existir. A Figura 3.5 mostra um

esboço do método de validação cruzada com subamostragem aleatória, onde a parte

destacada é um exemplo dos elementos separados de forma aleatória em cada experimento.

A estimativa do Erro seria dada por:

∑=

=k

iiE

kErro

1

1

Onde iE é 1 se classificou corretamente ou 0 se classificou erroneamente e k é o número

de elementos separados de forma aleatória de um conjunto de dados D .

Figura 3.5 – Esboço do método de validação cruzada com subamostragem aleatória

Validação cruzada com k-dobras

No método de validação cruzada com k-dobras (k-fold cross-validation) (Kohavi, 1995;

Anthony, 1998; Blum, 1999) o conjunto D , de tamanho N , é dividido em k subconjuntos

(dobras) mutuamente excludentes de tamanhos aproximadamente iguais. Onde Nk ≤<1 .

O treinamento e o teste são realizados k vezes. Sempre utilizando 1−k subconjuntos para

treinamento e o subconjunto que restou para teste.

Page 46: Camillo Jorge Santos Oliveira - DCC

44

A principal vantagem do método de validação cruzada com k-dobras é que todos os

exemplos do conjunto de dados são eventualmente usados para treinamento e teste. A

Figura 3.6 mostra um esquema ilustrando o método de validação cruzada com k-dobras,

mais precisamente uma validação cruzada com 4-dobras.

A estimativa de Erro seria dada por:

∑=

=k

iiE

kErro

1

1

Onde é 10 ≤≤ iE e representa taxa de erro para o dobra e k é o número de dobras.

Figura 3.6 – Esquema mostrando o exemplo do método de validação cruzada com 4-dobras.

Validação cruzada com “um de fora”

O método de validação cruzada com “um de fora” (leave-one-out cross-validation)

(Kearns, 1997) é o caso degenerado do método de validação cruzada com k-dobras, onde o

número de dobras ( k ) é igual ao número de elementos do conjunto D . Para um conjunto

de dados com N exemplos, executar N experimentos. Para cada experimento usar 1−N

exemplos para treinamento e um único exemplo para teste. A Figura 3.7 mostra um esboço

do método de validação cruzada com “um de fora”, onde a parte destacada é um único

elemento a ser testado. Treinam-se todos os outros elementos e testa apenas um.

A estimativa do Erro seria dada por:

Page 47: Camillo Jorge Santos Oliveira - DCC

45

∑=

=k

iiE

kErro

1

1

Onde iE é 1 se classificou corretamente ou 0 se classificou erroneamente e k é o número

de dobras, que neste caso é igual ao número de elementos do conjunto de dados.

Figura 3.7 – Esquema mostrando o exemplo do método de validação cruzadas com “um defora”.

Bootstrap

O método bootstrap foi descrito por Efron (1983). Dado um conjunto de dados de tamanho

N , uma amostra bootstrap é criada da reamostragem de N instâncias do conjunto de

dados (com sobreposição) para criar a amostra de treinamento. Desde que o conjunto de

dados seja amostrado com sobreposição, a probabilidade de uma dada instância qualquer

não seja escolhida depois de N amostras é 368,0)11( 1 ≈≈− −eN N . O número esperado

de instâncias distintas que aparecem do conjunto original de dados é N632,0 . A estimativa

de precisão testee nos dados de teste será muito pessimista ( %63~ das instâncias), porém

este número é combinado com o erro de substituição treinoe sendo menor que o testee . Assim

o Erro seria:

treinoteste eeErro ⋅+⋅= 368,0632,0

249,0

Page 48: Camillo Jorge Santos Oliveira - DCC

46

O processo é repetido para vários experimentos com diferentes sobreposições e os

resultados são obtidos através da média dos valores de Erro para todos os experimentos:

)368,0632,0(1

1treino

b

itestebootstrap ee

bE ⋅+⋅= ∑

=

O método bootstrap é a melhor maneira de estimar performance para conjuntos de

dados muito pequenos.

3.6 ESCOLHA DO MÉTODO PARA VALIDAÇÃO DO MODELO

Dos métodos descritos na seção anterior, o método de validação com divisão em duas

partes é um dos mais simples, porém, não conduz a uma boa validação do modelo. O

método bootstrap para pequenas amostras pode fazer uma boa validação do modelo mas

existem algumas situações onde o método falha, por exemplo, quando não se tem alteração

no conjunto de treinamento com %0=treinoe de substituição %50=testee . A estimativa

para o classificador é %6,31%0368,0%50632,0 =⋅+⋅=bootstrapE , um valor calculado

inteiramente inconsistente, sendo o erro esperado de 50%.

Os métodos que realizam a divisão do conjunto de dados em dobras (validação

cruzada com subamostragem aleatória, validação cruzada com k-dobras e validação

cruzada com “um de fora”) são intensamente utilizados em Kohavi (1995), Kearns (1997),

Anthony (1998) e Blum (1999). Para validação do modelo proposto neste trabalho, utiliza-

se o método de validação cruzada com k-dobras em virtude deste método possuir a

vantagem sobre o método da validação cruzada com subamostragem aleatória, no que diz

respeito da utilização de todo o conjunto de dados tanto para treinamento como para teste e

possuir menor gasto computacional, isto em relação ao método de validação cruzada com

“um de fora”, visto que o método de validação cruzada com “um de fora”, que seria o caso

degenerado do método de validação cruzada com k-dobras, com custo computacional

muito alto, inviável neste trabalho.

Ao optar pelo método de validação cruzada com k-dobras, deve-se pensar em quantas

dobras devem ser utilizados para a realização da validação. Algumas ponderações extraídas

da literatura, sobre o assunto, dizem respeito às seguintes opções:

• Utilizar um grande número de dobras.

Page 49: Camillo Jorge Santos Oliveira - DCC

47

+ A taxa de erro será menor (a estimativa será mais precisa).

− O tempo computacional gasto será muito grande (muitos experimentos).

• Com um pequeno número de dobras.

+ O número de experimentos e consequentemente tempo de computacional gasto

serão menores.

− A taxa de erro será maior.

Na prática, a escolha do número de dobras depende do tamanho do conjunto de dados,

da distribuição do conjunto de dados e dos recursos computacionais disponíveis. Para

conjuntos de dados esparsos, deve-se utilizar o método de validação cruzada com “um de

fora” de modo a treinar o máximo de exemplos (elementos) possíveis. Kohavi (1995)

afirma que o método de validação cruzada com 10-dobras repetido para 10 experimentos é

uma boa maneira para obter uma estimativa do erro.

3.7 VALIDAÇÃO DO CLASSIFICADOR

Na Seção 3.2, descreve-se o processo de preparação das amostras de treinamento que são

utilizadas na construção do classificador (árvores de decisão para imagens nos formatos

JPEG e GIF). Estas amostras de treinamento são agora utilizadas com o método de

validação cruzada com k-dobras.

Nesta seção, descrevem-se dois procedimentos para validação do classificador obtido

na Seção 3.5. O primeiro procedimento utiliza imagens conhecidas, isto é imagens da

amostra de treinamento. Sobre estas amostras de treinamento, aplica-se o método de

validação cruzada com k-dobras.

O segundo procedimento de validação utiliza imagens inéditas a todo o processo, isto

é, imagens separadas para teste e mantidas fora do processo de treinamento. Serão

submetidas ao classificador de forma a se verificar a precisão do classificador.

Aplicação do método de validação cruzada com k-dobras

De posse das amostras de treinamento (tuplas), realiza-se uma reamostragem para a

construção de subconjuntos de imagens, isto é, seleciona-se de forma aleatória dentro do

conjunto de amostras de treinamento, imagens que irão participar de novos conjuntos.

Page 50: Camillo Jorge Santos Oliveira - DCC

48

Os novos conjuntos terão tamanhos diferentes. Eles serão compostos de 200, 400, 800,

1000 e 1200 imagens (representadas através de tuplas). Estes novos conjuntos serão

formados para imagens nos formatos GIF e JPEG. O motivo de se ter conjuntos para os

tipos de imagens (GIF e JPEG) deve-se a forma em que estes trabalham com o conjunto de

pixels da imagem (Miano, 1999).

Ao final desta etapa, tem-se, para cada conjunto de amostras GIF e JPEG de tamanhos

200, 400, 800, 1000 e 1200, as tuplas resultantes da aplicação das métricas sobre as

imagens destas amostras.

Para cada amostra de 200, 400, 800, 1000 e 1200, utiliza-se o método ID3 para a

geração de uma árvore de decisão e realiza-se a validação cruzada utilizando o método de

validação cruzada com k-dobras para k = 2, 4, 5, 8 e 10.

Para realizar o treinamento das 1−k dobras na validação, utiliza-se inicialmente uma

“janela” de tamanho igual à 50. Monta-se a árvore de decisão com estas 50 tuplas e

classifica as tuplas que ficaram de fora da “janela”. Caso se tenha 100% de classificação, a

árvore de decisão foi encontrada e para-se. Caso contrário, incluir na “janela” as tuplas que

não foram classificadas corretamente e construir uma nova árvore. Repetir o processo

quantas vezes forem necessários até que a árvore gerada pela janela classifique

corretamente a amostra de treinamento toda. Segundo Quinlan (1986), este método

converge com poucas iterações.

Após a realização da validação do modelo, de posse das árvores geradas para imagens

GIF e JPEG que deram as menores taxas de erro utiliza-se estas duas árvores para

classificar imagens desconhecidas. Para isto, deve-se montar amostras obtidas do banco de

dados de imagens coletadas pelo programa robô (Seção 3.2).

De posse das árvores de decisão dos experimentos que geraram as menores taxas de

erro. Uma árvore para classificar imagens no formato GIF e outra árvore para o formato

JPEG. Realiza-se uma nova reamostragem de imagens desconhecidas (não utilizadas para

o treinamento), obtidas de maneira totalmente aleatória junto a base de imagens coletadas

pelo robô (Seção 3). A taxa de classificação é obtida da seguinte maneira:

100__

__% ×

=

testadaamostratamanhocorretasçõesclassificanúmero

C

Esta nova reamostragem gera as seguintes amostras: 10 amostras com 250 imagens

cada, com imagens fotográficas no formato GIF; 10 amostras de 250 imagens cada, com

Page 51: Camillo Jorge Santos Oliveira - DCC

49

imagens gráficas no formato GIF; 10 amostras de 250 imagens cada, com imagens

fotográficas no formato JPEG e 10 amostras de 150 imagens cada, com de imagens

gráficas no formato JPEG.

3.8 CONSIDERAÇÕES FINAIS

Este capítulo apresentou os procedimentos realizados em cada etapa de desenvolvimento

do classificador. Da mesma forma, discutiu a escolha de uma técnica para validação do

classificador obtido a partir das amostras de treinamento. O processo de separação destas

amostras de treinamento também foi tema deste capítulo.

Os materiais e métodos envolvidos a cada etapa quais sejam, coleta de imagens,

preparação das amostras de treinamento, aplicação das métricas, obtenção do classificador

foram realizadas em ambiente computacional do NPDI (Núcleo de Processamento Digital

de Imagens, do Departamento de Ciência da Computação, do Instituto de Ciências Exatas

da UFMG).

Entre as dificuldades comuns a qualquer processo de desenvolvimento cita-se como o

de maior relevância, as restrições dos recursos computacionais disponíveis para o

desenvolvimento. Toda implementação foi realizada sobre processador Pentium II,

utilizando 20 gigabytes de disco e 192 megabytes de memória RAM (Random Access

Memory). Os resultados experimentais obtidos neste ambiente estarão disponíveis no

próximo capítulo.

Page 52: Camillo Jorge Santos Oliveira - DCC

50

Capítulo 4

Resultados Experimentais

Este capítulo tem como objetivo mostrar os resultados experimentais obtidos na execução

dos procedimentos do classificador (obtido na Seção 3.4). Estes procedimentos foram

propostos na Seção 3.6. Como visto, estão envolvidos com a validação dois procedimentos.

O primeiro procedimento envolve as mesmas amostras de treinamento utilizadas na

construção do classificador e aplica-se sobre elas o método de validação cruzada com k-

dobras. O segundo procedimento de validação utiliza imagens inéditas a todo processo e

submete estas imagens ao classificador. A Seção 4.1 mostra os resultados experimentais,

para imagens no formato GIF e imagens no formato JPEG, das taxas de erro e do desvio

padrão das taxas de erro quando da utilização do método de validação cruzada com k-

dobras. A Seção 4.2 apresenta os resultados das taxas de classificações aplicando o

procedimento para validação em imagens que não foram utilizadas para o treinamento.

Este procedimento é feito tanto para imagens no formato GIF como para imagens no

formato JPEG.

Na Seção 4.3, são exemplificadas as condições de execução na construção das

amostras de treinamento utilizadas no desenvolvimento do classificador e no procedimento

de validação usando a validação cruzada com k-dobras.

4.1 RESULTADOS UTILIZANDO O MÉTODO DE VALIDAÇÃO

CRUZADA COM K-DOBRAS

A Figura 4.1 apresenta o gráfico das taxas de erro, em porcentagem, obtidas para as

amostras de imagens no formato GIF, cada amostra contendo 200, 400, 800, 1000 e 1200

Page 53: Camillo Jorge Santos Oliveira - DCC

51

imagens, utilizando-se o método de validação cruzada com k-dobras, com k = 2, 4, 5, 8 e

10. Percebe-se que as amostras que possuem os tamanhos de 800, 1000 e 1200 foram as

que obtiveram menores taxas de erro.

Figura 4.1 – Taxas de erro obtidas para amostras de imagens que possuem o formato GIF.

A Figura 4.2 apresenta o desvio padrão das taxas de erro apresentadas na Figura 4.1.

Como conseqüência dos resultados do gráfico da Figura 4.1, percebe-se que as amostras

que possuem os tamanhos de 800, 1000 e 1200 foram as que obtiveram os menores valores

para o desvio padrão.

Ainda na Figura 4.2, para as amostras de tamanhos iguais à 800, 1000 e 1200, que

apresentam os menores desvios padrão, vê-se que estas possuem uma tendência de

aumento do desvio padrão em função do aumento do número de dobras.

Se o algoritmo de indução, neste caso a árvore de decisão gerada, é estável para um

conjunto de dados, o desvio padrão do método de validação aplicado deve ser

aproximadamente o mesmo, independente do número de dobras (kohavi, 1995). Isto é

visível na Figura 4.2 onde a variância quase não é alterada para as várias dobras, para as

amostras de 800, 1000 e 1200. Com base nestes resultados, verifica-se a estabilidade do

classificador proposto.

Page 54: Camillo Jorge Santos Oliveira - DCC

52

Apresentados os resultados para imagens no formato GIF, mostra-se agora os

resultados para as amostras de treinamento JPEG.

A Figura 4.3 apresenta o gráfico das taxas de erro, em porcentagem, obtida para as

amostras de imagens no formato JPEG, cada amostra contendo 200, 400, 800, 1000 e 1200

imagens. Utiliza-se o método de validação cruzada com k-dobras, com k = 2, 4, 5, 8 e 10.

Da mesma forma que ocorreu com as imagens no formato GIF, percebe-se que as amostras

que possuem os tamanhos de 800, 1000 e 1200 foram as que obtiveram menores taxas de

erro.

A Figura 4.4 mostra o gráfico do desvio padrão das taxas de erro, obtidas para as

amostras de imagens no formato JPEG, cada amostra contendo 200, 400, 800, 1000 e 1200

imagens. Utiliza-se o método de validação cruzada com k-dobras, com k = 2, 4, 5, 8 e 10.

As amostras que possuem os tamanhos de 800, 1000 e 1200 foram as que obtiveram os

menores desvio padrões.

Ainda na Figura 4.4, as amostras de tamanhos iguais à 800, 1000 e 1200, apresentam

uma tendência de aumento do desvio padrão em função do aumento do número de dobras.

Figura 4.2 – Desvio padrão das taxas de erro para amostras de imagens que possuem oformato GIF.

Page 55: Camillo Jorge Santos Oliveira - DCC

53

Figura 4.3 – Taxas de erros obtidas para amostras de imagens que possuem o formatoJPEG.

Figura 4.4 – Desvio padrão das taxas de erro para amostras de imagens que possuem oformato JPEG.

Uma iteração consiste em gerar a árvore de decisão para as imagens que estão dentro

da “janela” (inicialmente tamanho igual a 50) e classificando o que está fora da janela.

Caso não se tenha sucesso em classificar corretamente todas as imagens, inclui-se na

Page 56: Camillo Jorge Santos Oliveira - DCC

54

“janela” as imagens que tiveram classificação errada e inicia-se uma outra iteração. Assim,

sucessivamente, até que todos os elementos da amostras de treinamento sejam classificados

corretamente.

Observa-se, além do número de iterações, que em todos os procedimentos de

treinamento ocorridos houve a convergência do algoritmo, conseguindo sempre classificar

100% da amostra de treinamento.

As Figuras 4.5 e 4.6 mostram, para imagens no formato GIF e imagens no formato

JPEG respectivamente, o número médio de iterações para cada validação cruzada com k-

dobras, com k = 2, 4, 5, 8 e 10 e amostras de tamanhos iguais à 200, 400, 800, 1000 e

1200. Percebemos que o número de iterações não cresce na mesma proporção que cresce o

número de dobras. Também não cresce na mesma proporção o número de iterações em

relação ao tamanho da amostra e não existe diferença significativa entre o número de

iterações para imagens no formato GIF ou no formato JPEG.

Figura 4.5 – Número médio de iterações para imagens no formato GIF.

Page 57: Camillo Jorge Santos Oliveira - DCC

55

Figura 4.6 Número médio de iterações para imagens no formato JPEG.

4.2 RESULTADOS EXPERIMENTAIS UTILIZANDO IMAGENS INÉDITAS

A Figura 4.7 mostra os resultados obtidos quando da utilização de imagens inéditas, isto é,

imagens que não fizeram parte do treinamento ao processo de classificação. Como

resultados apresentados em forma de gráficos, vê-se a porcentagem de imagens

classificadas corretamente em amostras de imagens que possuem o formato GIF. Foram

utilizados 10 conjuntos (amostras) de 250 imagens inéditas. Obteve-se uma porcentagem

média de 92,3% de acerto, com desvio padrão igual a 2,1.

A Figura 4.8 mostra a porcentagem de imagens classificadas corretamente em

amostras de imagens inéditas submetidas ao classificador obtido e que possuem o formato

JPEG. Foram utilizados 10 conjuntos (amostras) de 250 imagens inéditas. Obteve-se uma

porcentagem média de 89,5% de acerto, com desvio padrão igual a 3,0.

Page 58: Camillo Jorge Santos Oliveira - DCC

56

Figura 4.7 – Taxas de classificação para imagens no formato GIF, onde obteve-se umamédia de 92,3% de imagens classificadas corretamente.

Figura 4.8 – Taxas de classificação para imagens no formato JPEG, onde obteve-se umamédia de 89,5% de imagens classificadas corretamente.

Page 59: Camillo Jorge Santos Oliveira - DCC

57

4.2 EXCEÇÕES NAS AMOSTRAS DE TREINAMENTO

Algumas imagens foram problemáticas para a classificação devido a sua aparência não ter

coerência com os valores retornados pelas métricas. É o caso das imagens apresentadas na

Figura 4.9. Por isso é importante criar mais métricas, que realmente expressem as

diferenças entre imagens gráficas e imagens fotográficas.

A Figura 4.9 mostra alguns exemplos que não foram classificados corretamente. A

Figura 4.9(a) é uma imagem gráfica no formato JPEG que apresenta características de uma

imagem fotográfica (muitas cores, transição entre as cores dos pixels suave, forma

quadrada). A imagem da Figura 4.9(b) é uma imagem fotográfica no formato GIF, que

apresenta características de uma imagem gráfica (grandes regiões com a mesma cor, altas

saturações de cores e transições abruptas). A Figura 4.9(c) é outro exemplo de uma

imagem no formato JPEG, que é uma imagem gráfica, mas se comporta como se fosse

uma imagem fotográfica.

(a) (b) (c)Figura 4.9 – Alguns exemplos de imagens que não foram classificadas corretamente.

4.3 CONSIDERAÇÕES FINAIS

Avaliando os resultados obtidos para a taxa de erro e o desvio padrão da taxa de erro

percebe-se que a árvore de decisão gerada e utilizada para o experimento mostrou-se

estável. Isto pode ser observado quando nota-se que a variância praticamente não variou

com o aumento do número de dobras e que as amostras de tamanhos iguais a 800, 1000 e

1200 foram as amostras mais representativas. Isto vale tanto para imagens no formato GIF

e imagens no formato JPEG.

Page 60: Camillo Jorge Santos Oliveira - DCC

58

Foram mostradas a taxa de classificação para as imagens no formato GIF e imagens no

formato JPEG. Para este experimento foram utilizadas 10 amostras de 250 imagens para

cada um dos tipos de imagens. Percebe-se que a taxa de classificação para as imagens no

formato GIF é um pouco mais alta que a taxa de classificação para imagens no formato

JPEG e que as imagens no formato JPEG possuem um maior desvio padrão.

Mostrou-se o número de iterações para cada validação cruzada com k-dobras realizado

e percebe-se que o número de iterações não cresce na mesma proporção do número de

dobras e tão pouco com o aumento do tamanho da amostra.

Por fim, foram mostrados alguns exemplos de imagens problemáticas para a

classificação, que possuem aparências questionadas pelas métricas.

Page 61: Camillo Jorge Santos Oliveira - DCC

59

Capítulo 5

Conclusão

Esta dissertação apresentou as etapas necessárias para realizar a classificação de imagens

coletadas na WWW, que são: a utilização de um robô para a coleta das imagens; preparação

de amostras de treinamento; aplicação de procedimentos (métricas) sobre as imagens

obtendo valores capazes de discriminar os dois tipos de imagens em questão; utilização de

um método supervisionado simbólico capaz de induzir uma árvore de decisão, utilizando

para isto uma abordagem TDIDT. Este método chama-se ID3. Após a obtenção do

classificador, foram descritos métodos capazes de avaliar a estabilidade do modelo de

classificação, na realidade avaliar a estabilidade da árvore de decisão gerada pelo ID3. Em

seguida realizou-se a avaliação do classificador utilizando imagens inéditas, ou seja,

imagens que não fizeram parte do treinamento, calculando a taxa de classificação para cada

um dos tipos de imagens envolvidas neste trabalho (GIF e JPEG). Obteve-se uma taxa de

classificação de 92,3% para imagens no formato GIF e 89,5% para imagens no formato

JPEG.

5.1 CONTRIBUIÇÕES

Com a expansão e a popularização da WWW, as coleções de imagens digitais crescem

rapidamente. Uma imensa quantidade de informações são incluídas diariamente na Web.

Grande parte destas informações estão disponíveis na forma de imagens. Porém, o acesso,

ou seja, a recuperação destas imagens é uma tarefa que ainda apresenta grandes desafios.

Page 62: Camillo Jorge Santos Oliveira - DCC

60

O desenvolvimento deste trabalho demonstra a viabilidade de construir classificadores

que possam ser utilizados em ferramentas de recuperação de imagens com base no

conteúdo.

O grande volume das coleções de imagens e a complexidade de processamento dos

métodos utilizados, além das limitações do ambiente computacional disponível para o

desenvolvimento, representaram um importante desafio. Várias dificuldades menores

tiveram de ser superadas e entre elas, quer-se citar: a imaturidade desta área de pesquisa, a

ausência de documentação relevante a respeito da utilização do ID3, as restrições impostas

pelos equipamentos. No entanto, pode-se assegurar que este trabalho corresponde a uma

importante contribuição para a área de recuperação da informação, processamento de

imagens e visão computacional.

A disponibilização do classificador foi realizada a partir da utilização de imagens

coletadas na WWW. O Capítulo 2 apresentou este processo de coleta. Neste capítulo,

realizou-se a revisão bibliográfica que envolveu a descrição das métricas utilizadas na

obtenção de atributos que foram utilizados pelo método de classificação supervisionado

ID3. Ainda neste capítulo, apresentaram-se as origens e os algoritmos relacionados com o

desenvolvimento e implementação deste método para obtenção do classificador.

O Capítulo 3 tratou dos materiais e métodos envolvidos no desenvolvimento de cada

etapa deste trabalho. Nota-se que nas seções deste capítulo estão informações a respeito da

preparação das amostras de treinamento, da construção do classificador e da validação

deste classificador. Foram propostas duas formas de validação. A primeira proposta

envolve a aplicação do método de validação cruzada com k-dobras sobre as mesmas

amostras de treinamento que foram utilizadas pelo método ID3. A segunda proposta utiliza

imagens inéditas que são submetidas ao classificador.

O Capítulo 4 apresentou os resultados experimentais obtidos no processo de validação.

Vê-se que as duas propostas de validação foram realizadas. A Seção 4.1 apresentou

gráficos dos resultados experimentais aplicando-se o método de validação cruzada com k-

dobras sobre as amostras de treinamento. A Seção 4.2 foi dedicada aos resultados

experimentais do procedimento de validação que submete imagens inéditas ao

classificador. Pode-se constatar a viabilidade dos resultados e a estabilidade do

classificador.

Page 63: Camillo Jorge Santos Oliveira - DCC

61

Constata-se que o processo de construção de um classificador não é trivial. Muitas

técnicas e métodos devem ser considerados. Uma heterogeneidade de conhecimentos é

absorvida para que se possa realizar com sucesso cada uma das etapas. Durante todo o

trabalho os resultados e dificuldades encontradas foram discutidos e comentados. O que se

pode ressaltar é que um ambiente computacional arrojado e estável é fundamental para o

desenvolvimento deste tipo de aplicação.

5.2 TRABALHOS FUTUROS

Seguindo a mesma linha desta dissertação, podem ser indicados os seguintes caminhos

para trabalhos futuros:

• Utilização de outros modelos para classificação como: Redes Neurais, CN2 e

CN4.5-rules estes dois últimos filhos do ID3.

• Viabilizar a associação com outros modelos de classificadores. Por exemplo,

utilizar Redes Neurais nas imagens que não foram classificadas ou vice-versa.

• Pesquisar mais métricas como por exemplo: as imagens gráficas possuem em

geral algumas similaridades.

• Criar uma etapa capaz de encontrar e retirar a moldura que muitas vezes ocorre

nas imagens e estas afetam o resultados das métricas.

• Buscar separar as duas classes, objeto deste trabalho, em subclasses (Vailaya,

1998; Guérin-Dungué, 2000). Exemplos de subclasses para a classe de imagens

fotográficas seriam: imagens de paisagens, imagens de ambientes internos,

imagens de ambientes externos, imagem de rostos e etc. Exemplos de subclasses

para a classe de imagens gráficas seriam: logotipos, mapas, ícones, botões,

desenhos.

• Muitas imagens fotográficas, tanto no formato GIF como no JPEG, possuem

algum texto, que retirado, tem-se a imagem limpa. Criar uma etapa que realize

este trabalho. Uma proposta para isto pode ser encontrada em Guimarães (2000).

Page 64: Camillo Jorge Santos Oliveira - DCC

62

Referências Bibliográficas

[Abbadeni, 1999] Abbadeni N., Ziou, D., Wang, S., Image classification andretrieval on the www, Proceedings of the 4th ACM Conferenceon Digital Libraries, 1999, Berkeley, CA USA, p. 208-209,August.

[Anthony, 1998] Anthony, M., Holden, S. B., Cross-validation for binaryclassification by real-valued functions: theorical analysis,Proceedings of the 11th Annual Conference on ComputationalLearning Theory, 1998, Madison, WI USA, p. 218-229, July.

[Athitsos, 1998] Athitsos, V., Swain, M. J., Frankel, C., Distinguishingphotographs and graphics on the www, Proceeding of IEEEWorkshop on Content-Based Access of Image and VideoLibraries, 1998, Puerto Rico, June.

[Bimbo, 1999] Bimbo, A. D., Visual information retrieval, Morgan Kaufmann,270p., 1999.

[Blum, 1999] Blum, A., Kalai, A., Langford, J., Beating the hold-out: boundsfor k-fold and progressive cross-validation, Proceedings of thetwelfth Annual Conference on Computational learning theory,1999, Santa Cruz, CA USA, July.

[Efron, 1983] Efron, B., Estimating the error rate of a prediction rule:improvement on cross-validation, Jounal of the AmericanStatistical Association, 78:316-331.

[Frankel, 1996] Frankel, C., Swain, M. J., Athitsos, V., WebSeer: an imagesearch engine for the www, University of Chicago, TechnicalReport 9614, 1996, Computer Science Departament, 1100 East58th Street, Chicago, Illinois 60637, August.

[Goodrum, 2001] Goodrum, A., Spink, A., Image searching on the excite websearch engine, Information Processing and Management, 2001,v. 37, p. 295 – 311.

[Guérin-Dungué, 2000] Guérin-Dungué, A., Oliva, A., Classification of scenephotopgraphs from local orientations features, PatternRecognition Letters, 2000, v. 21, p. 1135 – 1140.

[Guimarães, 2000] Guimarães, S. J. F., Leite, N. J., Image decomposition inmorphological residues: an approach for image filtering andsegmentation, 13th Brazilian Symposium on Computer Graphics

Page 65: Camillo Jorge Santos Oliveira - DCC

63

and Image Processing (SIBGRAPI), Gramado-RS, 2000, 276-283, October.

[Gupta, 1997] Gupta, A., Jain, R., Visual information retrieval,Communications of the ACM, 1997, 40(5):71-79, May.

[Han, 1996] Han, I., Chandler, J. S., Liang, T. -Peng. The impact ofmeansurement scale and correlation structure on classificationperformance of inductive learning and statistical methods,Expert Systems With Applications, Elsevier Ltd, 1996,10(2):209-221.

[Hunt, 1966] Hunt, E. B., Experiments in Induction, Academic Press, NewYork, NY, 1966.

[Kearns, 1997] Kearns, M., Ron, D., Algorithmic stability and sanity-checkbounds for leave-one-out cross-validation, Proceedings of thetenth Annual Conference on Computational Learning Theory,1997, Nashville, TN USA, July.

[Kohavi, 1995] Kohavi, R. A study of cross-validation and bootstrap foraccuracy estimation and model selection, International JointConference on Artificial Intelligence (IJCAI), 1995.

[Quinlan, 1986] Quinlan, J. R., Induction of decision tress, Machine learning,1986, v. 1, p. 81 – 106.

[Mak, 1996] Mak, B., Bui, Tung, Blanning, R., Aggregating and updatingexperts´ knowledge: na experimental evaluation of fiveclassification techniques, Expert Systems with Applications,Elsevier, 1996, 10(2):233-241.

[McSherry, 1999] McSherry, D., Strategic induction of decision tree, Knowledge-Based Systems, Elsevier, 1999, 12:269-275.

[Miano, 1999] Miano, J., Compressed image file formats: jpeg, png, gif, xbm,bmp, Addison Wesley Longman, Inc, 1999, 264p.

[Pal, 1997] Pal, N. R., Chakraborty, S., Bagchi, A., RID3: an id3-likealgorithm for real data. Information Science 96, Elsevier, 1997,p 271-290.

[Pao, 1989] Pao, Y., Adaptive pattern recognition and neural networks,Addison Wesley, Reading, MA, 1989.

[Rui, 1999] Rui, Y., Huang, T. S., Chang. S., -F., Image retrieval: currenttechiniques, promising directions, and open issue, Journal ofVisual Communications and Image Representation, 1999, v. 10,p. 39 – 62.

Page 66: Camillo Jorge Santos Oliveira - DCC

64

[Szumer, 1998] Szumer, M., Picard, R. W. Indoor – outdoor image classification,Proceedings of IEEE International Workshop on Content-BasedAccess of Image and Vídeo Database, in conj. ICCV´98,1998,Bombay, January.

[Vailaya, 1998] Vailaya, A., Jain, A., Zhang, H. J., On image classification: cityvs. landscape, Proceeding of IEEE Workshop on Content-BasedAccess of Image and Video Libraries, 1998, Santa Barbara,California, June.

[Weiss, 1991] Weiss, S. M., Kulikowski, C. A., Computer systems that learn,1991, Morgan Kaufmann.

[Wolpert, 1992] Wolpert, D. H., Stacked generalization, Neural Networks, 1992,5:241-259.

[Wu, 1999] Wu, X., Induction by attribute elimination, IEEE Transactions onKnowledge and Data Engineering, September/October, 1999,11(5):805-812.

Page 67: Camillo Jorge Santos Oliveira - DCC

65

Apêndice AAs tabelas que seguem mostram os resultados das taxas de erro do método de validação

cruzada com k-dobras para imagens no formato GIF, para amostras de imagens de

tamanhos iguais a 200, 400, 800, 1000 e 1200.

N = 200k Média Var. D.p.2 4,0 13,0 8,5 40,5 6,44 8,0 6,0 18,0 8,0 10,0 29,3 5,45 10,0 7,5 5,0 7,5 5,0 7,0 4,4 2,18 12,0 12,0 4,0 0,0 8,0 16,0 8,0 8,0 8,5 24,9 5,010 0,0 10,0 0,0 5,0 5,0 10,0 10,0 10,0 0,0 15,0 6,5 28,1 5,3Tabela A1 – Valores das taxas de erro obtidas para o método de validação cruzada

com k-dobras, para k = 2, 4, 5, 8 e 10 em uma amostra de tamanho igual a 200.

N = 400k Média Var. D.p.2 9,0 12,5 10,8 6,1 2,54 6,0 10,0 11,0 22,0 12,3 46,9 6,85 5,0 16,3 6,3 6,3 6,3 8,0 21,6 4,68 10,0 8,0 8,0 12,0 12,0 8,0 18,0 2,0 9,8 21,1 4,610 7,5 7,5 15,0 22,5 7,5 10,0 15,0 10,0 2,5 2,5 10,0 37,5 6,1Tabela A2 – Valores das taxas de erro obtidas para o método de validação cruzada

com k-dobras, para k = 2, 4, 5, 8 e 10 em uma amostra de tamanho igual a 400.

N = 800k Média Var. D.p.2 5,5 7,8 6,6 2,5 1,64 8,0 6,0 7,5 5,0 6,6 1,9 1,45 5,6 8,8 6,3 6,3 5,0 6,4 2,0 1,48 4,0 5,0 5,0 8,0 6,0 6,0 7,0 8,0 6,1 2,1 1,510 3,8 7,8 10,0 3,8 7,5 5,0 5,0 6,3 7,5 6,3 6,3 3,9 2,0Tabela A3 – Valores das taxas de erro obtidas para o método de validação cruzada

com k-dobras, para k = 2, 4, 5, 8 e 10 em uma amostra de tamanho igual a 800.

Obs. Var. significa variância e D. p. significa desvio padrão.

Page 68: Camillo Jorge Santos Oliveira - DCC

66

N = 1000k Média Var. D.p.2 6,6 6,8 6,7 0,0 0,14 5,6 7,6 7,6 4,4 6,3 2,5 1,65 5,0 6,0 7,5 7,0 6,0 6,3 1,0 1,08 3,2 5,6 5,6 6,4 6,4 9,6 5,6 6,4 6,1 3,1 1,810 2,0 4,0 8,0 7,0 6,0 6,0 8,0 9,0 5,0 3,0 5,8 5,3 2,3Tabela A4 – Valores das taxas de erro obtidas para o método de validação cruzadacom k-dobras, para k = 2, 4, 5, 8 e 10 em uma amostra de tamanho igual a 1000.

N = 1200k Média Var. D.p.2 8,2 9,5 8,8 0,9 0,94 7,0 9,0 6,0 8,0 7,5 1,7 1,35 9,2 7,5 8,3 6,3 10,0 8,3 2,1 1,58 6,0 6,0 7,3 8,7 9,3 8,0 4,7 10,7 7,6 3,9 2,010 5,8 8,3 7,5 3,3 10,0 6,7 6,7 5,8 7,5 8,3 7,0 3,9 2,0Tabela A5 – Valores das taxas de erro obtidas para o método de validação cruzadacom k-dobras, para k = 2, 4, 5, 8 e 10 em uma amostra de tamanho igual a 1200.

As tabelas que seguem mostram os resultados das taxas de erro do método de

validação cruzada com k-dobras para imagens no formato JPEG, para amostras de imagens

de tamanhos iguais a 200, 400, 800, 1000 e 1200.

N = 200K Média Var. D.p.2 23,0 18,0 20,5 12,5 3,54 20,0 22,0 10,0 16,0 17,0 28,0 5,35 17,5 32,5 5,0 0,0 25,0 16,0 183 13,58 24,0 4,0 28,0 16,0 8,0 8,0 24,0 24,0 17,0 85,7 9,310 35,0 20,0 25,0 15,0 15,0 10,0 20,0 15,0 15,0 25,0 19,5 52,5 7,2

Tabela A6 – Valores das taxas de erro obtidas para o método de validação cruzadacom k-dobras, para k = 2, 4, 5, 8 e 10 em uma amostra de tamanho igual a 200.

Obs. Var. significa variância e D. p. significa desvio padrão.

Page 69: Camillo Jorge Santos Oliveira - DCC

67

N = 400K Média Var. D.p.2 11,0 17,5 14,3 21,1 4,64 15,0 14,0 17,0 24,0 17,5 20,3 4,55 16,3 10,0 13,0 23,8 18,8 16,4 28,0 5,38 20,0 10,0 14,0 18,0 16,0 22,0 16,0 16,0 16,5 13,4 3,710 17,5 12,5 7,5 10,0 20,0 17,5 10,0 22,5 12,5 15,0 14,5 23,3 4,8

Tabela A7 – Valores das taxas de erro obtidas para o método de validação cruzadacom k-dobras, para k = 2, 4, 5, 8 e 10 em uma amostra de tamanho igual a 400.

N = 800k Média Var. D.p.2 15,5 21,0 18,3 15,1 3,94 14,5 19,0 16,5 15,7 16,4 3,6 1,95 10,6 16,3 13,1 15,0 14,4 13,9 4,6 2,18 8,0 14,0 18,0 16,0 13,0 11,0 14,0 15,0 13,6 9,4 3,110 17,5 12,5 15,0 13,8 16,3 16,3 16,3 11,3 12,5 13,8 14,5 4,2 2,1

Tabela A8 – Valores das taxas de erro obtidas para o método de validação cruzadacom k-dobras, para k = 2, 4, 5, 8 e 10 em uma amostra de tamanho igual a 800.

N = 1000k Média Var. D.p.2 16,0 15,6 15,8 0,1 0,34 14,4 15,6 14,0 14,8 14,7 0,5 0,75 12,0 17,0 14,0 13,0 17,0 14,6 5,3 2,38 8,8 12,8 9,6 13,6 13,6 13,6 14,4 14,9 12,7 5,0 2,210 11,0 13,0 16,0 11,0 11,0 11,0 11,0 18,0 11,0 15,0 12,8 6,8 2,6

Tabela A9 – Valores das taxas de erro obtidas para o método de validação cruzadacom k-dobras, para k = 2, 4, 5, 8 e 10 em uma amostra de tamanho igual a 1000.

N = 1200k Média Var. D.p.2 15,5 14,0 14,8 1,1 1,14 14,3 17,7 13,3 13,0 14,6 4,5 2,15 13,8 15,4 14,2 12,9 13,8 14,0 0,8 0,98 15,3 19,3 15,3 18,7 15,0 14,9 13,5 13,3 15,7 4,9 2,210 15,0 16,0 15,0 13,6 13,6 14,4 11,0 13,0 16,0 13,3 14,1 2,4 1,5Tabela A10 – Valores das taxas de erro obtidas para o método de validação cruzada

com k-dobras, para k = 2, 4, 5, 8 e 10 em uma amostra de tamanho igual a 1200.

Obs. Var. significa variância e D. p. significa desvio padrão.

Page 70: Camillo Jorge Santos Oliveira - DCC

68

Percentual de imagens classificadas corretamente nos conjuntos de amostras de

imagens, utilizados para testes e formado por imagens GIF e JPEG que não fizeram parte

do treinamento da árvore de decisão.

1 2 3 4 5 6 7 8 9 10 Média Var. D. p.GIF 95,8 90,6 95,7 93,1 90,3 92,4 93,0 91,4 89,8 91,1 92,3 4,5 2,1

JEPG 88,1 86,5 91,4 90,6 93,0 84,5 87,2 89,6 94,3 89,8 89,5 9,1 3,0Tabela A12 – Resultado da classificação de imagens que possuem o formato GIF e JPEG

que não foram utilizadas na obtenção da árvore de decisão (do treinamento).

Obs. Var. significa variância e D. p. significa desvio padrão.

Page 71: Camillo Jorge Santos Oliveira - DCC

69

Apêndice BAs métricas descritas na Seção 2.2 foram submetidas a experimentos e nesta seção são

mostrados alguns resultados indicativos para cada métrica. Foram utilizadas para os testes

1350 imagens fotográficas GIF, 2967 imagens gráficas GIF, 4742 imagens fotográficas

JPEG e 1434 imagens gráficas JPEG. Como os valores retornados pelas métricas possuem

intervalos e grandezas diferentes, estes valores devem ser normalizados, colocando-os no

intervalo fechado de ]1,0[ . Realizadas as normalizações, calculam-se as porcentagens de

imagens gráficas e imagens fotográficas cujos valores foram inferiores aos dos limiares

0,1; 0,2; 0,3; 0,4; 0,5; 0,6; 0,7; 0,8; e 0,9. Este procedimento foi feito para o conjunto de

imagens GIF e JPEG, e os resultados estão colocados em forma de gráficos e são

apresentados na Figura B1 e na Figura B2. Estes gráficos mostram que, dependendo do

limiar, obtêm-se uma porcentagem de imagens, dependendo do tipo da imagem

(fotográfica ou gráfica). Isto fica bem ilustrado observando a Figura B1 e a Figura B2, que

mostram os gráficos gerados para cada métrica. Pode-se concluir que estas métricas são

viáveis para serem utilizadas como características utilizadas na discriminação dos dois

tipos de imagens.-

Page 72: Camillo Jorge Santos Oliveira - DCC

70

Figura B1 – Gráficos obtidos da avaliação das amostras de treinamento formadas porimagens GIF.

Page 73: Camillo Jorge Santos Oliveira - DCC

71

Figura B2 – Gráficos obtidos da avaliação das amostras de treinamento formada porimagens JPEG.

Page 74: Camillo Jorge Santos Oliveira - DCC

72

Apêndice CNeste apêndice, são mostrados (Figura C1, Figura C2 e Figura C3) mais alguns exemplos

de imagens gráficas que podem ser coletadas na WWW.

Figura C1 – Exemplos de imagens gráficas coletadas na WWW

Figura C2 – Exemplos de imagens gráficas coletadas na WWW

Page 75: Camillo Jorge Santos Oliveira - DCC

73

Figura C3 – Exemplos de imagens gráficas coletadas na WWW