Karin Satie Komati UMA ABORDAGEM NÃO-SUPERVISIONADA PARA SEGMENTAÇÃO DE CENAS NATURAIS COLORIDAS Tese apresentada ao Programa de Pós-Graduação em Engenharia Elétrica do Centro Tecnológico da Univer- sidade Federal do Espı́rito Santo, como requisito par- cial para obtenção do Grau de Doutor em Engenharia Elétrica. Orientador: Prof. Dr. Evandro Ottoni Teatini Salles. Orientador: Prof. Dr. Mário Sarcinelli-Filho. VITÓRIA 2011 Dados Internacionais de Catalogação-na-publicação (CIP) (Biblioteca Central da Universidade Federal do Espírito Santo, ES, Brasil) Komati, Karin Satie, 1971- K81a Uma abordagem não-supervisionada para segmentação de cenas naturais coloridas / Karin Satie Komati. – 2011. 162 f. : il. Orientador: Evandro Ottoni Teatini Salles. Coorientador: Mário Sarcinelli-Filho. Tese (Doutorado em Engenharia Elétrica) – Universidade Federal do Espírito Santo, Centro Tecnológico. 1. Processamento de imagens. 2. Sistemas de reconhecimento de padrões. 3. Visão por computador. 4. Fractais. 5. JSEG. I. Salles, Evandro Ottoni Teatini. II.Sarcinelli Filho, Mário. III. Universidade Federal do Espírito Santo. Centro Tecnológico. IV. Título. CDU: 621.3 A minha mãe, meu falecido pai, minha paixão e aos meus três tesouros. Agradecimentos Gostaria de agradecer a todos os que me ajudaram! À minha mãe que foi a mãe dos meus filhos enquanto eu estudava, ao meu irmão, Frank, e à minha cunhada, Marcia, que sempre que podiam cuidavam dos meus pimpolhos para que eu pudesse escrever artigos e varar noites. Ao meu maridão que varava as noites comigo (nem que seja só para fazer companhia), que me deu todo o suporte, que me ouvia discorrer horas sobre um assunto e que me apoiou nas minhas inúmeras variações de humor e continua casado comigo. Agradeço aos meus orientadores, prof. Evandro e prof. Sarcinelli. Prof. Evandro sempre puxando na teoria, trazendo novos questionamentos. Paciência, filosofia e disposição sempre ocorrem ao falar dele. Prof. Sarcinelli nunca me deixou desanimar, sempre com palavras de conforto e incentivo. Acho que ele acredita mais em mim do que eu em mim mesma. Meu muito obrigada para Klaus, que sempre me ajudou, com a maior boa vontade, seja explicando sua tese, seja explicando os mais variados assuntos. Sou muito grata aos meus colegas do “laboratório sem janelas e sem placa”. Meu grupo de suporte: Patrick, Rossow, Anibal, Janayna e Jorge. Sempre que precisei, eu ligava para eles, chorava na orelha deles, conversava por horas e principalmente tomávamos café. Graças a eles, o tempo no laboratório foi divertido, mesmo brigando, sempre havia uma piada no final. Só eles, para entenderem o que eu estava passando. Sumário 1 Introdução 16 1.1 Objetivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 1.2 A Abordagem Proposta . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 1.2.1 O Sistema Visual Humano . . . . . . . . . . . . . . . . . . . . . . 22 1.2.2 A Arquitetura Proposta . . . . . . . . . . . . . . . . . . . . . . . . 26 1.3 Metodologia de Avaliação dos Resultados . . . . . . . . . . . . . . . . . . 29 1.4 Contribuições . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 1.5 Limitações . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 1.6 Organização do Texto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 2 Critério de Homogeneidade Integrando Descritor Multifractal e J-image 34 2.1 O método JSEG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 2.2 A imagem do descritor multifractal . . . . . . . . . . . . . . . . . . . . . . 39 2.3 Trabalhos Relacionados . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 2.4 Arquiteturas Implementadas . . . . . . . . . . . . . . . . . . . . . . . . . 46 2.4.1 Fractal-only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 2.4.2 Fractal-JSEG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 2.4.3 I-Frac . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 2.4.4 MM-Frac . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 vi 2.5 Resultados Experimentais e Discussão . . . . . . . . . . . . . . . . . . . . 56 2.5.1 Comparação entre JSEG e Fractal-only . . . . . . . . . . . . . . . 56 2.5.2 Comparação Fractal-JSEG x (JSEG e Fractal-only) . . . . . . . . . 59 2.5.3 Comparação I-Frac x Fractal-only . . . . . . . . . . . . . . . . . . 63 2.5.4 Comparação I-Frac x (JSEG, Fractal-JSEG e Fractal-only) . . . . . 65 2.5.5 Comparação MM-Frac x (JSEG, I-Frac e Fractal-JSEG) . . . . . . 66 2.5.6 Problemas em Aberto do MM-Frac . . . . . . . . . . . . . . . . . 71 2.6 Considerações Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 3 Integrando Crescimento de Regiões e Detecção de Bordas 74 3.1 Trabalhos Relacionados . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 3.2 Arquiteturas Implementadas . . . . . . . . . . . . . . . . . . . . . . . . . 77 3.2.1 A Escolha do Detector de Bordas . . . . . . . . . . . . . . . . . . 78 3.2.2 KSS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 3.2.3 KoSS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 3.3 Resultados Experimentais e Discussão . . . . . . . . . . . . . . . . . . . . 89 3.3.1 BSDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 3.3.2 LHI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 3.4 Considerações Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 4 Conclusões Finais e Trabalhos Futuros 117 4.1 Trabalhos Futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 4.2 Trabalhos Publicados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 Referências Bibliográficas 122 A JSEG 133 A.1 Quantização de Cores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 A.2 Segmentação Espacial . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 A.2.1 J-image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 A.2.2 Crescimento de Regiões . . . . . . . . . . . . . . . . . . . . . . . 139 B Precision×Recall e ROC 141 C BSDS 147 C.1 A Consistência das Anotações Humanas . . . . . . . . . . . . . . . . . . . 148 C.2 O Cálculo das Métricas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150 D Multifractal 153 D.1 O Método Differential Box-Couting . . . . . . . . . . . . . . . . . . . . . 156 Lista de Tabelas 2.1 Caracterı́sticas das Arquiteturas Implementadas. . . . . . . . . . . . . . . . 46 2.2 Tamanho das janelas para cada escala do I-Frac. . . . . . . . . . . . . . . . 51 2.3 Métricas calculadas pelo BSDS: referência humana, JSEG, Fractal-only, Fractal- JSEG, I-Frac e MM-Frac. . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 3.1 Tabela comparativa das métricas calculadas pelo BSDS nos métodos de detec- ção de bordas testados. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 3.2 Tabela comparativa entre os métodos de detecção de bordas, mostrando a quantidade de imagens em que cada método (linha) obteve o maior valor da métrica (coluna). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 3.3 Métricas precision, recall e F-measure calculadas pelo BSDS, comparação entre referência humana, JSEG, MM-Frac, detecção de bordas, KSS e KoSS. 96 A.1 Tamanho das janelas para cada escala. . . . . . . . . . . . . . . . . . . . . 139 B.1 Matriz de confusão para um classificador binário. . . . . . . . . . . . . . . 142 ix Lista de Figuras 1.1 Exemplos de imagens do BSDS (a,c,e,g,i) e suas respectivas segmentações feitas por anotadores humanos (b,d,f,h,j). . . . . . . . . . . . . . . . . . . 18 1.2 Um exemplo do BSDS (a) Imagem original 163085, (b-h) sete segmentações manuais feitas por diferentes anotadores humanos sobrepostos à imagem ori- ginal. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 1.3 Entrada e saı́da do sistema de segmentação automática e não-supervisionada. 22 1.4 Vista 3D de corte horizontal do cérebro mostrando o fluxo de informações visuais. Fonte: (Gunther, 2005). . . . . . . . . . . . . . . . . . . . . . . . 23 1.5 Caminhos dorsal e ventral do processamento visual. Fonte: (Basso, 2005). . 23 1.6 Possı́veis funções processadas pelos caminhos visuais. Fonte: extraı́do ver- batim de (Kandel et al., 2000). Tradução dos ı́cones: color=cor, motion=movimento, depth=profundidade e form=forma. . . . . . . . . . . . . . . . . . . . . . 24 1.7 Esquema simplificado dos caminhos P e M. . . . . . . . . . . . . . . . . . 26 1.8 Arquitetura genérica da abordagem proposta. . . . . . . . . . . . . . . . . 28 1.9 Uma instância da arquitetura geral. . . . . . . . . . . . . . . . . . . . . . . 29 1.10 Processo de uso do BSDS. . . . . . . . . . . . . . . . . . . . . . . . . . . 30 1.11 Exemplo de imagem de entrada e seu referencial humano da base de dados DRIVE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 2.1 Resultados intermediários do método JSEG para a imagem 101085 do BSDS. 36 2.2 Resultados de segmentação do método JSEG. . . . . . . . . . . . . . . . . 37 2.3 Aplicação de diferentes filtros em um mosaico de texturas. . . . . . . . . . 38 x 2.4 (a) Imagem 101085 da base de dados do BSDS; (b) Imagem do descritor fractal para janela de tamanho 9×9; (c) gráfico 2D da linha 200 da imagem (a); (d) gráfico em 2D da linha 200 da imagem (b); (e) Imagem do descritor fractal para janela de tamanho 17×17; (f) Imagem do descritor fractal para janela de tamanho 33×33; (g) gráfico 2D da linha 200 da imagem (e); (h) gráfico em 2D da linha 200 da imagem (f). . . . . . . . . . . . . . . . . . 41 2.5 À esquerda apresentam-se as imagens dos descritores fractais normalizados, (o tamanho da janela associada se encontra abaixo de cada imagem). À direita, apresentam-se os gráficos 2D da linha 200 da imagem à esquerda. . 42 2.6 (a) Referência Humana de 101085. (b) Gráfico 2D com as curvas da linha 200 da imagem em escala de cinza 101085 em azul (c) Gráfico 2D com as curvas da linha 200 da imagem do descritor multifractal com janela 9×9 em azul. A curva em vermelho de (b) e (c) corresponde à linha 200 da imagem da referência humana. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 2.7 Arquitetura do Fractal-only. . . . . . . . . . . . . . . . . . . . . . . . . . . 47 2.8 Arquitetura do Fractal-JSEG. . . . . . . . . . . . . . . . . . . . . . . . . . 49 2.9 Arquitetura do I-Frac. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 2.10 Arquitetura de MM-Frac. . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 2.11 Espectro de potência de uma imagem em 3D. . . . . . . . . . . . . . . . . 53 2.12 Espectro de potência de uma imagem em 2D. . . . . . . . . . . . . . . . . 53 2.13 Exemplos de imagens com valores de α próximos de 1. . . . . . . . . . . . 54 2.14 Exemplos de imagens com valores de α próximos de 3. . . . . . . . . . . . 55 2.15 Exemplos caracterı́sticos com texturas complexas nos quais o Fractal-only apresentou valores de F-measure maiores que o JSEG. . . . . . . . . . . . 57 2.16 Exemplos caracterı́sticos com similaridade de cor-textura de diferentes com- ponentes, nos quais o Fractal-only apresentou valores de F-measure menores que o JSEG. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 2.17 Exemplos caracterı́sticos onde as anotações humanas foram detalhadas e nos quais o JSEG apresentou valores de F-measure maiores que o Fractal-only. 59 2.18 Imagens associadas a imagem 167062. . . . . . . . . . . . . . . . . . . . . 59 2.19 Exemplos nos quais o Fractal-JSEG melhorou a métrica F-measure com relação aos métodos JSEG e Fractal-only. (a) Imagem de entrada (b) Anotação humana (c) resultado do JSEG (d) resultado do Fractal-only (e) resultado do Fractal-JSEG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 2.20 Histogramas das métricas dos métodos JSEG × Fractal-only × Fractal-JSEG. 62 2.21 Exemplos com similaridade de cor-textura dos componentes nos quais o I- Frac obteve maiores valores de F-measure que Fractal-only. . . . . . . . . . 63 2.22 Resultados para a imagem 196073 (a) Resultado do Fractal-JSEG sobreposto à imagem original (b) Resultado do I-Frac sobreposto à imagem original . 64 2.23 Exemplos de imagens com texturas complexas. . . . . . . . . . . . . . . . 64 2.24 Exemplos em que o método I-Frac aumentou os valores de F-measure. (a) Imagem de entrada (b) Anotação humana (c) JSEG (d) Fractal-only (e) Fractal- JSEG (f) I-Frac. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 2.25 Histogramas das métricas dos métodos JSEG× Fractal-only× Fractal-JSEG × I-Frac. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 2.26 Exemplos de resultados do método MM-Frac, na ordem: (a) Imagem de en- trada (b) Referência humana e as imagens resultados dos métodos (c) JSEG (d) Fractal-JSEG (e) I-Frac (f) MM-Frac. . . . . . . . . . . . . . . . . . . 68 2.27 Histogramas das métricas dos métodos JSEG × Fractal-JSEG × I-Frac × MM-Frac. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 2.28 Exemplo caracterı́stico do problema em aberto do MM-Frac. (a) Imagem de entrada (b) Referência humana e as imagens resultados dos métodos (c) JSEG (d) Fractal-only (e) Fractal-JSEG (f) I-Frac (g) MM-Frac. . . . . . . 71 2.29 Exemplo de generalização de textura complexa do I-Frac. . . . . . . . . . . 72 3.1 Arquitetura geral da estratégia de integração. . . . . . . . . . . . . . . . . 77 3.2 Gráficos de Precision × Recall dos detectores de borda. . . . . . . . . . . . 80 3.3 Gráficos de Precision × Recall do Gradiente Morfológico aplicado em ima- gem em escala de cinza e aplicado em imagem colorida com pré-processamento via filtro de Kuwahara. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 3.4 Arquitetura do KSS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 3.5 Exemplos de imagens para um baixo e alto valor de limiarborda f raca. (a) e (b) imagens de entrada; (c) e (d) imagens provenientes do detector de bordas; (e) e (f) histogramas das imagens (c) e (d), respectivamente, e (g) e (h) imagens referentes ao mapa-de-bordas-fracas. . . . . . . . . . . . . . . . . . . . . . 84 3.6 Imagens de entrada e saı́da do KSS. Imagens (a) e (b) resultantes do detector de bordas; (c) e (d) resultantes do MM-Frac; (e) e (f) resultantes do KSS e, (g) e (h) anotações humanas. . . . . . . . . . . . . . . . . . . . . . . . . . 85 3.7 KSS × KoSS: artefatos no resultado do KSS, mas não no do KoSS. . . . . 88 3.8 Exemplos comparativos (a) Imagem de entrada (b) Referência humana e as imagens resultados dos métodos (c) detecção de borda (d) MM-Frac (e) KSS (f) KoSS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 3.9 Exemplos comparativos (a) Imagem de entrada (b) Referência humana e as imagens resultados dos métodos (c) detecção de borda (d) MM-Frac (e) KSS (f) KoSS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 3.10 Exemplos comparativos (a) Imagem de entrada (b) Referência humana e as imagens resultados dos métodos (c) detecção de borda (d) MM-Frac (e) KSS (f) KoSS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 3.11 (a) Imagem de entrada (b) Referência humana e as imagens resultados dos métodos (c) detecção de borda (d) MM-Frac (e) KSS (f) KoSS. . . . . . . . 94 3.12 Resultados do KSS/KoSS que apresentaram F-measure menor que que am- bos os métodos MM-Frac e detecção de borda (a) Imagem de entrada (b) Referência humana e as imagens resultados dos métodos (c) detecção de borda (d) MM-Frac (e) KSS (f) KoSS. . . . . . . . . . . . . . . . . . . . . 95 3.13 Gráfico precision × recall dos métodos gradiente morfológico, KoSS, JSEG e MM-Frac. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 3.14 Histogramas das métricas dos métodos KoSS × MM-Frac × detector de bordas (na legenda dos gráficos como “Edge”). . . . . . . . . . . . . . . . 98 3.15 Imagens 296059 e 302008 com seus referenciais humanos. . . . . . . . . . 100 3.16 Imagem 12084 com seus referencial humano. . . . . . . . . . . . . . . . . 100 3.17 Imagens 210088 com seu referencial humano. . . . . . . . . . . . . . . . . 101 3.18 Imagem 69040 com seu referencial humano. . . . . . . . . . . . . . . . . . 101 3.19 Exemplos do PASCAL VOC, onde a coluna esquerda (a) mostra as imagens de testes do banco de dados e a coluna direita (b) mostra o referencial hu- mano das imagens à sua esquerda. . . . . . . . . . . . . . . . . . . . . . . 103 3.20 Resultado desejado em pesquisas utilizando o MSRC. . . . . . . . . . . . . 103 3.21 Resultados para a imagem do LHI (tamanho 1400×838). . . . . . . . . . . 106 3.22 Resultados para a imagem do LHI (tamanho 1400×838). . . . . . . . . . . 107 3.23 Resultados para a imagem do LHI (tamanho 1400×838). . . . . . . . . . . 108 3.24 Resultados para a imagem do LHI (tamanho 1400×838). . . . . . . . . . . 109 3.25 Exemplos do LHI, imagens resultante sobrepostas à imagem original. . . . 110 3.26 (a) Imagem original (b) referencial humano e os resultados dos métodos (c) JSEG (d) MM-Frac (e) detecção de bordas (f) KoSS (g) KoSS com pós- processamento. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 3.27 (a) Imagem original (b) referencial humano e os resultados dos métodos (c) JSEG (d) MM-Frac (e) detecção de bordas (f) KoSS (g) KoSS com pós- processamento. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 3.28 Exemplos do LHI, imagem resultante sobreposta às imagem original. . . . 114 4.1 Arquitetura genérica da abordagem proposta. . . . . . . . . . . . . . . . . 117 A.1 Arquitetura em dois estágios do JSEG. (a) visão básica (b) visão mais de- talhada de (a) (c) apresentando algoritmo de segmentação espacial com o controle de quantidade de escalas. . . . . . . . . . . . . . . . . . . . . . . 134 A.2 Exemplos de três mapas-de-classes. Fonte: Deng e Manjunath (2001) . . . 136 A.3 “Melhor” segmentação dos mapas-de-classe 1 e 3. Fonte: Deng e Manjunath (2001) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 B.1 A matriz de confusão e as métricas que compõe as curvas ROC e preci- sion×recall. Fonte: Pres (2008). . . . . . . . . . . . . . . . . . . . . . . . 143 B.2 Dois algoritmos sendo comparados nos espaços ROC e Precision×Recall. Fonte: Davis e Goadrich (2006) . . . . . . . . . . . . . . . . . . . . . . . 144 B.3 Curvas ROC e Precision×Recall em diferentes distribuições de classes (a) curvas ROC 1:1 (b) curvas Precision×Recall 1:1 (c) curvas ROC 1:10 (d) curvas Precision×Recall 1:10 . Fonte: Fawcett (2006). . . . . . . . . . . . 145 B.4 Conjuntos dos pixels retornados pelo método, que podem ser relevantes ou irrelevantes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146 C.1 Exemplo das diferentes formas de apresentação para o anotador humano. Fonte: Martin (2002) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 C.2 Exemplos de segmentações a sua árvore de percepção associada. Fonte: Martin (2002) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 C.3 Exemplo de inconsistência entre anotações humanas. Fonte: Martin (2002) 150 C.4 Exemplo de um grafo bipartido simples. . . . . . . . . . . . . . . . . . . . 150 C.5 Esquema simplificado dos passos para a comparação entre duas segmentações. Fonte: Martin et al. (2004) . . . . . . . . . . . . . . . . . . . . . . . . . . 151 D.1 Fractal de Mandelbrot. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 D.2 Fractais estatı́sticos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 D.3 Exemplo do algoritmo DBC. . . . . . . . . . . . . . . . . . . . . . . . . . 157 D.4 Singularidades do tipo degrau e cúspide. . . . . . . . . . . . . . . . . . . . 158 D.5 Imagem do descritor multifractal. . . . . . . . . . . . . . . . . . . . . . . . 159 Resumo A segmentação de cenas naturais é uma tarefa importante em processamento de imagens e visão computacional, com aplicações em diversas áreas, tais como navegação robótica e reconhecimento de objetos. Entretanto, a etapa de segmentação pode se tornar extremamente complicada devido à imensa variabilidade de cor, iluminação e texturas que se manifestam em uma imagem. Ou seja, é muito difı́cil desenvolver uma abordagem que consiga segmentar satisfatoriamente todas as nuances de uma cena projetada numa imagem. Esta Tese propõe um novo método não supervisionado e automático para detecção de contornos em imagens naturais coloridas, consistindo de dois nı́veis de integração, ou pro- cessos sequenciais de dois estágios. No primeiro estágio, duas diferentes técnicas para me- dir a homogeneidade cor-textura em um método de crescimento de regiões são combinadas por dois diferentes algoritmos de controle. Um algoritmo de controle é baseado em uma função local e outro é baseado em uma propriedade estatı́stica global (a forma do espec- tro de potência da imagem que está sendo analisada). Uma medida de homogeneidade é o J-value (fornecido pelo algoritmo JSEG) e a segunda medida é o descritor multifractal. O primeiro estágio fornece a extração de regiões. Na segunda integração, a informação de bordas é extraı́da por um método clássico, e integrada com a informação de região. Este processo elimina os contornos falsos do mapa de regiões, guiado pelo mapa de bordas, e re- duz o ruı́do do mapa de bordas, agora guiado pelo mapa de regiões, tirando, assim, proveito da natureza complementar de cada método. Além disso, integram-se os dois mapas em um único resultado final, reforçando as informações coincidentes de ambas as entradas. Cada fase de integração melhora, progressivamente, a detecção de contornos. Experi- mentos com imagens retiradas de um banco de dados extenso e consolidado de cenas naturais coloridas (“The Berkeley Segmentation Dataset and Benchmark”) sugerem que os resulta- dos da abordagem deste trabalho são mais próximos da percepção humana que os métodos individuais, tanto quantitativamente quanto qualitativamente falando. Abstract Segmentation of natural scenes is an important task in image processing and computer vision, with applications in several areas such as robot navigation and object recognition. However, the segmentation can become extremely complex due to the huge variability of color, lighting and textures found in an image. In other words, it is very difficult to develop an approach that can successfully segment all changes in a scene. This Thesis proposes a new unsupervised and fully automatic method for boundary detec- tion in natural color images, consisting of two levels of integration, or two-stage sequential processes. In the first stage, two different techniques to measure color-texture homogeneity in a region-growing method are combined by two different control algorithms. One control algorithm is based on a local function and the other is based on a global statistical property (the shape of the power spectrum of the image being analyzed). One homogeneity measure is the J-value (provided by the JSEG algorithm) and the second measure is a multifractal descriptor. This first stage performs region extraction. In the second integration, edge in- formation is extracted by a classical method, and integrated with region information. This process eliminates false boundaries in the region map, guided by the edge map, and reduces the noise in the edge map as well, now guided by the region map, thus taking advantage of their complementary nature. Furthermore, it integrates the two maps into a single final result, enhancing the coincident information of both maps. Each phase of integration improves, progressively, the detection of the boundaries. Ex- periments on a large and consolidated dataset of natural color images (“The Berkeley Seg- mentation Dataset and Benchmark”) suggest that the results for the approach here proposed are closer to the human perception than the individual methods, quantitatively and qualita- tively speaking. Capı́tulo 1 Introdução O reconhecimento automático de objetos em imagens digitais por sistemas computaci- onais possui inúmeras aplicações, tais como indexação e recuperação automáticas de fotos e vı́deos, uso em sistemas de navegação de robôs, monitoramento de poluição, sistemas de segurança e sistemas de inspeção de qualidade de produtos (Jain, 1989). Uma etapa prévia ao reconhecimento de objetos é a segmentação de regiões, que consiste em prover uma decomposição da imagem em diversas sub-regiões, que guardam, cada uma delas, alguma descrição comum. O objetivo da segmentação é simplificar e/ou alterar a representação da imagem para algo que seja mais significativo e fácil de se analisar. A “detecção de fronteiras” é a identificação das curvas divisórias entre as diversas sub-regiões da imagem (Gonzalez e Woods, 2001). Um sistema de segmentação pode ser classificado como manual, semiautomático ou au- tomático, dependendo do grau de intervenção humana (Ventura, 2009). A segmentação é dita manual quando um indivı́duo humano define todas as fronteiras das regiões da imagem. Nos algoritmos de segmentação semiautomáticos, a intervenção manual é utilizada para for- necer pontos caracterı́sticos da estrutura a ser segmentada, ou para delimitar uma região onde ela é encontrada, ou ainda para indicar a quantidade de regiões a serem segmentadas. Já na segmentação automática não há qualquer intervenção humana. A segmentação pode ainda ser classificada como supervisionada ou não-supervisionada (Jain et al., 2000). A diferença é que os sistemas de segmentação supervisionados passam por uma fase de treinamento, recebendo imagens previamente analisadas e rotuladas, definindo- se um padrão e um conhecimento a priori daquilo que vai ser segmentado na fase de testes. Portanto, na fase de treinamento o sistema deve ajustar seus parâmetros e se adaptar a ima- gens com caracterı́sticas similares e na fase de testes, a entrada é identificada como um mem- bro de uma das classes pré-definidas do treinamento. Na abordagem não-supervisionada não 1. Introdução 17 há classes definidas a priori, as classes são aprendidas com base na similaridade dos padrões durante a fase de testes. De acordo com a entrada, os limites de decisão são construı́dos e o padrão de entrada é associado a uma classe até então desconhecida. Resumindo, o objetivo da classificação não-supervisionada é encontrar agrupamentos naturais, ou “clusters”, em dados multidimensionais com base nas semelhanças entre os padrões. A segmentação automática e não-supervisionada de cenas naturais é um problema com- plexo, pois não se conhece, a priori, quais tipos de regiões existem em uma imagem, nem quantas são as regiões. Ou seja, não há nenhuma informação além da própria imagem digital. A imagem pode conter regiões uniformes (apresentando uma única cor), regiões sombreadas com gradação suave de cor e regiões com texturas (Tu e Zhu, 2002). As texturas podem ser as mais variadas, podendo ser sintéticas, apresentando uma repetição de padrões estrutu- rais, ou aleatórias com informação estatı́stica não-aleatória, e cada textura pode apresentar diferentes granularidades. A estratégia de um sistema de segmentação automática e não-supervisionada de cenas naturais coloridas se resume a uma forma de distinguir quando duas regiões adjacentes são diferentes em uma imagem digital, que é a sua única informação. Um ser vivo recebe outras informações obtidas através de outros sensores para efetuar a segmentação. Por exemplo, o ser humano possui dois olhos, duas imagens, que adicionam informações sobre a distância dos elementos da cena e o ser humano. Através de cinco exemplos, mostram-se, a seguir, algumas dificuldades inerentes a seg- mentação de imagens. Na Figura 1.1, a coluna esquerda apresenta alguns exemplos de ima- gens retiradas do “The Berkeley Segmentation Dataset and Benchmark” (BSDS) (Martin et al., 2001), e a coluna direita mostra as suas respectivas imagens de segmentações feitas por anotadores humanos. As imagens da coluna direita apresentam segmentações sobrepos- tas de no mı́nimo cinco anotadores humanos, assim, quanto mais evidente a curva, maior foi a coincidência de marcação entre os anotadores. Cada linha desta Figura 1.1 apresenta um aspecto diferente a ser analisado: 1. a primeira linha apresenta uma mudança suave de iluminação em seus quatro cantos, caracterı́stica que não seria segmentada por nenhum anotador humano; 2. a segunda linha mostra uma onça em um galho. Deve-se notar a complexidade da textura de seu pelo: embora exista repetição de padrão, esta repetição se apresenta em tamanhos e orientações diferentes. Apesar desta complexidade, a percepção humana a entende como um único elemento na foto, e não segmenta cada detalhe de sua textura (pode-se conjecturar que quando há muita informação numa imagem, o ser humano tende a usar apenas as informações mais “grosseiras” de sua percepção, não se atendo aos detalhes); 1. Introdução 18 (a) (b) (c) (d) (e) (f) (g) (h) (i) (j) Figura 1.1: Exemplos de imagens do BSDS (a,c,e,g,i) e suas respectivas segmentações feitas por anotadores humanos (b,d,f,h,j). 1. Introdução 19 3. a terceira linha mostra uma cobra no deserto. Observa-se que o elemento central e o fundo apresentam quase a mesma cor, uma camuflagem da natureza. Essa imprecisão da definição das bordas é um obstáculo para a segmentação; 4. na quarta linha, tem-se uma mistura de texturas artificias e naturais, apresentando caracterı́sticas diferentes. O prédio e a ponte apresentam texturas artificiais, isto é, possuem padrões estruturais determinı́sticos, repetitivos e periódicos, ao contrário da textura natural da folhagem, que é aleatória; 5. o último exemplo mostra três cavalos no campo. Note-se que os anotadores humanos não segmentam a região das sombras dos cavalos, principalmente a sombra do cavalo mais à esquerda, que ocupa um bom espaço do chão. Sistemas automáticos tenderão a segmentar esta sombra, dado que a região de sombra e a região de grama possuem caracterı́sticas diferentes de cor. Seres humanos usam informações cognitivas superiores, como o reconhecimento de ob- jetos e texturas, e também conhecimento prévio quanto à forma de objetos e seres. Na segmentação manual da imagem da cobra (Figura 1.1f), quatro seres humanos reconhece- ram o que era a cabeça da cobra e não segmentaram a sombra, e apenas um ser humano segmentou o contorno da cobra e a sombra. Mesmo se tendo um sistema que processe a segmentação, surge outra questão: como ava- liar a qualidade da segmentação proposta, dada uma imagem segmentada? Até o momento, o instrumento mais eficiente para detectar e discriminar regiões é o olho humano, servindo, na maioria das vezes, como referência para comparação dos algoritmos utilizados. No entanto, uma caracterı́stica da percepção visual humana é que ela é ambı́gua e imprecisa. Imagens naturais possuem tantos elementos que muitas vezes, mesmo entre seres humanos, não há consenso na definição de quais são as regiões de uma imagem. Um exemplo de segmentação não consensual é mostrado na Figura 1.2, o qual também é retirado da base de dados BSDS. A Figura 1.2a é uma cena natural contendo três passari- nhos num ninho, e as Figuras 1.2b a 1.2h são as segmentações manuais feitas por diferentes anotadores humanos, cada uma sobreposta na imagem original. Pode-se constatar pelos resultados das segmentações que mesmo entre os anotadores hu- manos não há consenso, embora exista consistência entre as versões. As versões do quarto e sétimo anotadores (Figuras 1.2e e 1.2h) identificam os bicos e os olhos dos passarinhos, porém não são contornos idênticos. O quarto anotador é bem detalhista ao dividir as penu- gens de cada passarinho em duas partes, uma relativa à textura das penas do corpo, que apa- renta ser mais espessa, e a outra relativa à penugem ao longo de suas costas, com aparência 1. Introdução 20 (a) (b) (c) (d) (e) (f) (g) (h) Figura 1.2: Um exemplo do BSDS (a) Imagem original 163085, (b-h) sete segmentações manuais feitas por diferentes anotadores humanos sobrepostos à imagem original. mais fina. Há dois anotadores (Figuras 1.2c e 1.2g) menos detalhistas, que não apresentam linhas de distinção entre os corpos de cada passarinho. Os outros cinco anotadores (Figuras 1.2b, 1.2d, 1.2e, 1.2f e 1.2h) distinguem cada passarinho, porém cada contorno é desenhado diferentemente. Nas segmentações, os resultados comuns foram as identificações da divisão do ninho e do contorno geral dos passarinhos. No entanto, é possı́vel verificar que cada anotador desenha uma linha de contorno, cobrindo os três passarinhos, de uma forma diferente. Há anotadores, como os das Figuras 1.2b e 1.2c, que desenham esta divisão de forma mais irregular, bem diferente do contorno suave do anotador da Figura 1.2h. Da mesma forma, a linha divisória entre o ninho e os passarinhos apresenta diferenças em cada anotação. Estas diferenças entre os resultados das segmentações humanas podem ser devido à com- plexidade das texturas (penugem dos passarinhos, vegetação ao fundo e ninho), à forma com- plexa dos componentes da cena (não há uma clara fronteira entre estas diferentes componen- tes), ou ao desconhecimento prévio da forma dos objetos. Assim, a segmentação manual de uma imagem não é única: diferentes indivı́duos irão gerar diferentes resultados, um mesmo 1. Introdução 21 indivı́duo pode gerar resultados diferentes em tempos diferentes, e um mesmo indivı́duo pode gerar resultados diferentes dependendo da aplicação. Um ser humano faz uma interpretação semântica da cena de acordo com a aplicação. Assim, um especialista em observação de passarinhos pode estar interessado apenas nos animais e não estar interessado no restante da imagem, enquanto outro especialista pode estar interessado apenas no ninho e não nos outros componentes da imagem. Esta ambiguidade da semântica torna impossı́vel (ainda) que o computador automaticamente agrupe as várias regiões homogêneas em um único objeto semântico significativo. Por outro lado, mesmo que o ser humano seja responsável pela definição semântica, um sistema de segmentação automático fornecerá uma primeira aproximação que auxiliará o ser humano a encontrar as fronteiras entre as regiões, que, em geral, é um trabalho manual maçante. Devido à variedade de dificuldades, o estudo de segmentação de cenas naturais continua sendo tópico de grande interesse. Embora já se estenda por mais de três décadas, e apesar da quantidade de trabalhos propostos, ainda não há uma técnica que resolva todos os desafios de forma eficiente (Gonzalez e Woods, 2001; Fauzi e Lewis, 2003; Cheng et al., 2001; Conci e Nunes, 2007). 1.1 Objetivo O objetivo principal deste trabalho é propor uma solução para o problema de segmentação automática e não-supervisionada de cenas naturais coloridas. Esta proposta compreende estágios sequenciais em que cada estágio aborda a integração de informações complementa- res. A única entrada do sistema será a imagem digital colorida, e a única saı́da será uma ima- gem indicando as fronteiras das regiões, conforme a Figura 1.3, onde a imagem de entrada é interpretada como um conjunto de três matrizes, que é a representação comum de imagens digitais coloridas. 1. Introdução 22 Sistema de Segmentação Automática e Não-supervisionada Figura 1.3: Entrada e saı́da do sistema de segmentação automática e não-supervisionada. 1.2 A Abordagem Proposta Uma possı́vel forma de encurtar o caminho do desenvolvimento de sistemas de segmenta- ção de imagens naturais é aprender com o sistema biológico humano de visão (Komati et al., 2003), sobre o comportamento dos seus neurônios e sobre como se dá a percepção visual a partir do comportamento destes neurônios. Visão é o mais poderoso e complicado dos sentidos do ser humano, e o conhecimento acerca da visão biológica humana não é completo e detalhado (Olshausen e Field, 2005). Isto tem motivado muitos pesquisadores a propor teorias sobre como se dá o processo de visão biológica, para posterior comparação com o comportamento visual biológico observável. Tais teorias têm evoluı́do ao longo dos anos, baseadas na crescente compreensão do sistema visual humano (SVH), através do qual se “percebem” as posições e propriedades dos objetos, assim como as relações entre si e as leis fı́sicas do ambiente que os cerca. 1.2.1 O Sistema Visual Humano Inicia-se esta seção com uma descrição sucinta do conhecimento estabelecido acerca do fluxo da informação visual (Kandel et al., 2000). O sistema tem inı́cio com a captação das imagens através dos olhos, por meio da retina, localizada no fundo do olho, transformando a informação visual em sinais elétricos. Na Figura 1.4 observam-se as fibras do nervo óptico chegando ao tálamo (thalamus) num primeiro estágio, e se encaminhando para o córtex visual, num segundo estágio. Além disso, há cruzamento de informações da retina esquerda e direita no tálamo. Dentro do tálamo encontra-se o núcleo geniculado lateral (NGL), onde os sinais cana- lizados através do nervo óptico são divididos em duas vias visuais distintas: o caminho 1. Introdução 23 magnocelular (M) e o caminho parvocelular (P). Do NGL, os axônios seguem em direção ao córtex visual, onde ocorre o processamento das informações visuais, ou seja, as carac- terı́sticas de forma, profundidade, movimento e cor são analisadas. Ele é dividido em áreas: V1, V2, V3, V4 e V5 (também conhecido como MT), conforme se pode ver na Figura 1.5. Figura 1.4: Vista 3D de corte horizontal do cérebro mostrando o fluxo de informações visu- ais. Fonte: (Gunther, 2005). Figura 1.5: Caminhos dorsal e ventral do processamento visual. Fonte: (Basso, 2005). No caminho magnocelular as informações saem das células do tipo M do NGL, entram em V1, depois vão para V2, de V2 vão para V3 e V5, e, finalmente, seguem para o lobo pa- rietal (caminho dorsal). Células em MT respondem a movimentos de rotação de cenas, tais como os que são causados pelos movimentos de cabeça. No geral, este caminho apresenta alta sensibilidade para contraste, baixa resolução espacial, baixa sensibilidade a cores e alta resolução temporal, tornando-o capaz de detectar movimentos e permitindo habilidades de respostas rápidas e adaptativas, embora transientes, a determinados estı́mulos, mas é pobre no que se refere à compreensão de contornos ou discernimento de bordas. Schiller e cole- gas (Schiller et al., 1980) descobriram que este caminho também apresenta capacidade para percepção de profundidade, mas não para objetos estacionários. Uma lesão neste caminho leva à deficiência de percepção de movimentos e perseguição suave de alvos. 1. Introdução 24 No caminho parvocelular as informações saem das células P do NGL, vão para os neurô- nios de V1, seguem para V2, depois para V4 e, finalmente, para o córtex temporal inferior (caminho ventral). Este caminho é composto por neurônios com caracterı́sticas de baixa sensibilidade ao contraste, alta resolução espacial, baixa resolução temporal e alta sensibili- dade a cantos e bordas, o que o torna capaz de analisar detalhes estacionários do mundo real e de detectar formas. Ele é sensı́vel à cor e a detalhes finos. Os neurônios que compõem este caminho também contribuem para a percepção de profundidade. Lesões neste caminho causam dificuldades de reconhecimento de objetos e pessoas. Ainda não existe teoria estabelecida sobre como as informações sobre movimento, cor, profundidade e forma são organizadas de forma perceptualmente coesa. Uma possı́vel expli- cação é que as imagens visuais são processadas em vias paralelas, onde cada via é formada por grupos independentes de células com funções diferentes, e depois há uma combinação destas caracterı́sticas (movimento, profundidade, forma e cor). O mecanismo pelo qual o cérebro coordena a associação da informação processada de forma independente ainda é indefinido, e é chamado de “binding mechanism” (Kandel et al., 2000). Qualquer caso do cérebro associar duas ou mais caracterı́sticas extraı́das separadamente do mesmo objeto pode ser chamada de “binding” (Holcombe, 2009). Um possı́vel mapeamento de caracterı́sticas nos caminhos visuais é mostrado na Fi- gura 1.6. Esta imagem foi extraı́da de forma verbatim, e, logo, os termos estão em inglês. Supõe-se que o caminho magnocelular processa caracterı́sticas de movimento, profundidade e informação espacial, e o caminho parvocelular processa informações de forma e cor. Figura 1.6: Possı́veis funções processadas pelos caminhos visuais. Fonte: extraı́do verbatim de (Kandel et al., 2000). Tradução dos ı́cones: color=cor, motion=movimento, depth=profundidade e form=forma. 1. Introdução 25 Outra teoria é a de Treisman e colegas (Treisman et al., 1977), que sugere que há dois processos distintos e sequenciais envolvidos na percepção visual. Primeiro, o processo “pre- attentive” (pré-atencional), que está preocupado apenas com a detecção de objetos. Este processo rapidamente examina a textura global de uma imagem e concentra-se na distinção entre figura e fundo através da codificação em paralelo das propriedades elementares: cor, orientação, tamanho, direção ou movimento. Neste ponto, a variação em uma propriedade simples pode ser percebida como um contorno, mas combinações complexas de propriedades elementares não são detectadas. Este agrupamento inicial de itens é seguido por um processo de “atenção” que seleciona e destaca as caracterı́sticas consideradas mais importantes de um objeto, integrando-os em uma “mapa de saliência” (saliency map), e com isso desviando e direcionando a atenção para as áreas mais evidentes. Uma outra teoria bem extensa é a do pesquisador Grossberg (Grossberg e Mingolla, 1985; Grossberg, 2000a,b, 2006), fruto de uma ampla pesquisa, iniciada na década de 1960. O modelo do SVH proposto por Grossberg é bem completo, e envolve explicações acerca da percepção humana, sugerindo soluções para a percepção 3D, visão binocular, dominância ocular, oclusão de bordas, aprendizado e memória, dentre outros desafios. A seguir se resu- mem algumas das hipóteses do modelo de Grossberg, com foco nas caracterı́sticas associadas à detecção de contornos: 1. segmentações de imagens geradas pelo modelo não são resultados de treinamento em exemplares de imagens; 2. teoria “Hierarchical Resolution of Uncertainty”, onde incertezas devem ser superadas usando mais de uma fase de transformação para cada caminho, como, por exemplo, no processamento dos caminhos P ou M. As incertezas podem ser interpretadas tendo em conta o fato de que o resultado de cada estágio, ou unidade funcional do sistema, pode gerar resultados com falhas ou com graus diferentes de confiabilidade, que podem ser corrigidos gradativamente, estágio a estágio; 3. o cérebro possui uma organização de processamentos paralelos e de naturezas comple- mentares, teoria de nome “Complementary Computing”. A idéia é que existem “pares de processamento de fluxos complementares”, onde cada caminho exibe vantagens e desvantagens. Por causa dessa complementariedade, acredita-se que as interações entre estes caminhos sobrepujem suas deficiências complementares; 4. Grossberg insere em seu modelo o conceito “The Two Streams Hypothesis”, original- mente proposto por Mishkin e Ungerleider (1982). A hipótese considera que cada um dos caminhos das informações visuais se projeta para áreas diferentes, e, logo, processam atributos distintos. Simplificadamente, o caminho M é especializado em 1. Introdução 26 responder à pergunta “Onde” (stream “Where”), sendo usado para localização de ob- jetos, enquanto o caminho P é especializado em responder à pergunta “O que” (stream “What”), sendo usado para identificação de objetos; 5. a teoria neural, conhecida como FACADE (Form-And-Color-And-Depth), propõe que no caminho P uma das ramificações dentro do córtex visual faz o processamento de borda e a outra o de superfı́cie (Figura 1.7). Seguindo a teoria “Complementary Com- puting”, as interações entre o processamento de borda e de superfı́cie selecionam o melhor agrupamento de bordas entre as várias possibilidades de interpretação da cena. Através de suas propriedades complementares, o processamento de um caminho guia os sinais do outro caminho. A Figura 1.7 é apenas uma interpretação simplificada e esquemática dos caminhos paralelos. A simplificação é tal que não mostra a troca de informações entre os dois caminhos (embora se deva registrar que não há conheci- mento estabelecido de como é feita esta comunicação entre os caminhos). Figura 1.7: Esquema simplificado dos caminhos P e M. 1.2.2 A Arquitetura Proposta Dar-se-á, nesta seção, uma visão geral da abordagem proposta, as escolhas feitas e as suposições assumidas. Inicia-se listando as seguintes pressuposições: 1. cada imagem de entrada contém um conjunto finito de regiões homogêneas, definidas com base nas suas cores e texturas; 1. Introdução 27 2. segmentações de imagens de cenas naturais coloridas não são resultados do treina- mento com exemplares de imagens. Abordagens não-supervisionadas são mais robus- tas ao dilema “polarização” × variância (Duda et al., 2001), uma vez que não depen- dem de uma sintonia de parâmetros. Sistemas que necessitam de fase de treinamento podem apresentar underfitting, ou seja, podem ficar polarizados para um determinado tipo de resposta, apresentando pouca ou nenhuma variância. Ou podem apresentar overfitting, ou seja, tender a ter maior variabilidade nas respostas, mas não generalizar a resposta. Dessa maneira, essas duas caracterı́sticas são tipicamente conflitantes, ou seja, a diminuição da polarização implica em aumento da variância e a diminuição da variância implica em aumento da polarização. O problema do treinamento é encon- trar um equilı́brio entre as duas. Se o sistema for supervisionado, então necessitará de treinamento para ajuste de parâmetros, de maneira que qualquer mudança do banco de imagens de teste implicará em retreinamento do sistema. Devido à imensa variabili- dade de cor, iluminação e texturas que se manifestam em imagens ao ar livre, sugere-se que um sistema de segmentação deve ser flexı́vel e não ter uma fase de treinamento. Neste caso, o sistema fica também independente das imagens de teste; 3. são necessários mais de um estágio para resolução do problema, tal como a hipótese do “Hierarchical Resolution of Uncertainty”; e 4. a extração de caracterı́sticas é feita de forma paralela e separada. Mais ainda, trabalhar com a combinação de duas informações complementares provenientes da mesma ima- gem de entrada é uma boa abordagem para melhoria de resultados, tal qual expressa no “Complementary Computing”. Com isso, a arquitetura geral da abordagem proposta pode ser resumida como na Figura 1.8, onde há mais de um estágio (pressuposição 3), e em cada estágio há a integração de informações complementares (pressuposição 4). Para testar a arquitetura proposta, desenvolveu-se uma instância da mesma, que foi tes- tada tanto quantitativamente quanto qualitativamente. Neste sistema, para a primeira fase de integração, optou-se por usar um método de crescimento de regiões baseado em critério de homogeneidade de cor-textura. Após estudo de vários sistemas, citam-se Carson et al. (1999); Ozden e Polat (2007); Comaniciu e Meer (2002), optou-se por usar como ponto de partida a técnica de segmentação já bem conhecida chamada JSEG (JSegmentation) (Deng e Manjunath, 2001), pois ela apresenta algumas caracterı́sticas pretendidas pelo sistema: é totalmente automática, não-supervisionada e baseada em um critério de homogeneidade de cor-textura. Em linhas gerais, o JSEG avalia quantitativamente a homogeneidade local de uma região, criando um mapa 3D onde as regiões são vales e as fronteiras são montanhas. A partir deste mapa 3D (J-image), processa-se um algoritmo de crescimento de regiões, e 1. Introdução 28 Primeira fase de Integração Segunda fase de Integração Imagem colorida Controle de Integração 2 Imagem segmentada Critério A Critério C Critério B Controle de Integração 1 Figura 1.8: Arquitetura genérica da abordagem proposta. para que o critério seja robusto à granularidade das texturas, o método é multiescalar (ver detalhes sobre o método JSEG no Apêndice A). A idéia aqui explorada é que é possı́vel melhorar os resultados de segmentação do JSEG integrando outro critério de homogeneidade. É comum usar critérios baseados em forma, modelo, nı́vel de cinza, ou cor-textura (Chandran et al., 2010). Não obstante, o descritor mul- tifractal se encaixa bem na definição de um critério de homogeneidade (Backes, 2010). Tra- balhos anteriores (Côco et al., 2009; Côco et al., 2007) motivam a usar uma medida baseada no descritor multifractal como critério de homogeneidade para a melhoria da segmentação de imagens. Para mais detalhes sobre multifractais, ver Apêndice D. Dois diferentes controles de integração para a primeira fase foram desenvolvidos, um considerando apenas as informações locais e outro baseado em informação global. Esta informação global será baseada em um exame das texturas da imagem de forma global, seguindo o trabalho de Treisman e seus colegas (1977). Para resolver problemas advindos do, e inerentes ao, método baseado em regiões, foi feita a integração com um método complementar, baseado em descontinuidade. Tal qual o FACADE, teremos uma caminho tratando de superfı́cie e outro de borda. A estratégia de integração seguirá a teoria do FACADE, que, através de suas propriedades complementares, o processamento de um caminho guia os sinais do outro caminho. Desta forma, utiliza- se a idéia do “The Two Streams Hypothesis”, onde se modela apenas o caminho P. Com 1. Introdução 29 isso, mostra-se, na Figura 1.9, uma implementação da arquitetura genérica da abordagem proposta. Primeira fase de Integração Segunda fase de Integração Imagem colorida Controle de Integração 2 Imagem segmentada Cálculo de Medida de Homogeneidade Original JSEG Método Detector de Bordas Método baseado em Regiões Cálculo de Medida de Homogeneidade Baseado em descritor multifractal Controle de Integração 1 Figura 1.9: Uma instância da arquitetura geral. 1.3 Metodologia de Avaliação dos Resultados Para a primeira fase de integração, são desenvolvidos quatro diferentes sistemas com- putacionais. Em cada um deles é usado o sistema JSEG como arcabouço, e as arquiteturas implementadas têm as seguintes caracterı́sticas: 1. Arquitetura 1, que usa apenas o descritor multifractal, sem o critério original do JSEG; 2. Arquitetura 2, que é uma extensão da arquitetura 1, baseando-se na integração local entre o descritor multifractal e o critério original do JSEG; 3. Arquitetura 3, que usa apenas o descritor multifractal, mas com forma diferente de combinar os canais do espaço de cores; 4. Arquitetura 4, que é uma extensão da arquitetura 3, onde o descritor multifractal e o critério original do JSEG são integrados por um controle baseado em medida global. 1. Introdução 30 Assim, duas arquiteturas utilizam como critério de homogeneidade apenas o descritor multifractal, e as outras duas integram o descritor multifractal e o critério de homogeneidade original do JSEG. Além disso, implementam-se dois diferentes controles de integração, um baseado em informação local e outro em informação global. Considera-se que a arquitetura zero é o sistema original do JSEG. A comparação entre métodos é complexa. Há vários requisitos para se efetuar uma comparação: utilização do mesmo banco de dados de imagens, geração dos resultados de segmentação em formatos compatı́veis, comparação com o mesmo benchmark e cálculo das mesmas métricas. Neste ponto, o que se deseja é comparar os métodos contra a percepção de um ser humano comum, e não um especialista de uma determinada área. Para tanto, utiliza- se o banco de dados BSDS (ver Apêndice C). Neste banco de imagens há uma base de teste composta por 100 imagens coloridas. Para cada imagem do banco de dados, há pelo menos cinco resultados de segmentação de anotadores humanos diferentes, compondo, assim, uma referência para comparação. Para cada uma das cinco arquiteturas serão feitos os testes usando as imagens da base de testes do banco de dados BSDS, seguindo o modo de utilização descrito em seu manual de uso. A Figura 1.10 ilustra o mecanismo de uso do BSDS. Executa-se cada algoritmo de segmentação usando as 100 imagens da base de testes como entrada, e os resultados, as 100 imagens segmentadas, serão a entrada do processo de cálculo de métricas fornecido pelo próprio BSDS (Martin et al., 2004). Ao final, obtêm-se os valores das métricas precision (precisão), recall (sensibilidade) e F-measure (medida-F). Ver definições e detalhes sobre as métricas no Apêndice B. Figura 1.10: Processo de uso do BSDS. A primeira avaliação é analisar a possı́vel melhoria da segmentação com relação aos métodos individuais - apenas com o JSEG e apenas com o descritor multifractal, tanto qua- litativamente quanto quantitativamente. O objetivo é saber se os resultados da arquitetura 2 são melhores que os das arquiteturas 0 e 1, e se a arquitetura 4 é melhor que as arquiteturas 1. Introdução 31 1 e 3. Caso exista evidência de melhoria, então pode-se dizer que a integração destes dois critérios de homogeneidade é melhor que os critérios individuais. A segunda avaliação será analisar se o controle global, da arquitetura 4, foi melhor ou não que o controle local, da arquitetura 2, e com isso verificar qual o melhor controle de integração. Mesmo usando um banco de dados com as imagens e as referências humanas, ainda há controvérsia nas métricas de qualidade de segmentação. Há artigos que discutem qual seria o melhor método quantitativo, como Wolf e Jolion (Wolf e Jolion, 2006) e Zhang e colegas (Zhang et al., 2008). Nesta fase, as imagens resultantes são todas binárias e, portanto, não há construção de gráficos precision × recall nem curva ROC (Fawcett, 2006), pois ter-se-ia apenas um único ponto neste gráficos. Na segunda fase de integração, utiliza-se a arquitetura de maior métrica da primeira fase de integração, que é integrada com o resultado de um clássico detector de bordas. Para escolher o detector de bordas mais adequado, foram selecionados alguns detectores clássicos e aplica-se o mesmo procedimento do fluxo de trabalho da Figura 1.10. Utiliza-se o método de detecção de bordas cujos resultados obtiveram a maior métrica. Como os resultados dos métodos de detecção de bordas utilizados geram imagens em escala de cinza, será possı́vel plotar os gráficos precision × recall para análise. Foram desenvolvidos dois controles de integração para a segunda fase. No entanto, o segundo é uma extensão do primeiro, onde não houve diferença de concepção, e, sim, ape- nas uma melhoria. Para ambos os sistemas, utilizou-se o procedimento do BSDS. O obje- tivo é avaliar se o resultado das integrações promoveu melhoria do resultado com relação aos métodos individuais de entrada, tanto qualitativamente quanto quantitativamente. Nesta segunda fase de integração, como os resultados geram imagens em escala de cinza, será possı́vel plotar gráficos precision × recall e curva ROC para análise dos métodos. 1.4 Contribuições Listam-se as contribuições desta tese: 1. a proposta de um “framework”, uma arquitetura genérica, como mostrado na Figura 1.8; 2. uso de um descritor multifractal como critério de homogeneidade de um método de crescimento de regiões; 3. integração do descritor multifractal com o descritor de homogeneidade do JSEG; 1. Introdução 32 4. avaliação quantitativa de métodos detectores de borda segundo métricas calculadas comparada à percepção humana; 5. desenvolvimento de um novo algoritmo de integração de resultados de detecção de bordas com resultados de crescimento de região. 1.5 Limitações Todas as imagens testadas são imagens com grande variação em cor e textura. Não é objetivo deste trabalho tratar imagens com pouca diversificação de cores, que não apresentem variações de texturas e que possuam regiões muito pequenas ou finas. Por exemplo, há poucas cores em imagens médicas, como as imagens da retina humana encontradas na base de dados DRIVE (Staal et al., 2004). Um exemplo é mostrado na Figura 1.11, onde a imagem à esquerda é a imagem de entrada e a imagem à direita é a imagem segmentada por um especialista. A abordagem deste trabalho identificaria as regiões circulares do globo ocular e da mácula, (que é a região de coloração mais clara na parte direita do globo), e não os vasos sanguı́neos como a imagem de referência feita pelo especialista. (a) imagem de entrada (b) imagem segmentada por especialista Figura 1.11: Exemplo de imagem de entrada e seu referencial humano da base de dados DRIVE. Embora a arquitetura proposta tenha como base algumas hipóteses de teorias sobre como se processa o SHV, provar que estas teorias realmente modelam o SHV foge ao escopo desta tese. Também não é objetivo desta Tese estudar oclusão parcial de objetos, ruı́do, imagens estéreo, movimento de objetos, a análise de complexidade dos algoritmos ou comparação de tempos computacionais dos sistemas, uma vez que o foco é a proposição de uma metodolo- gia. 1. Introdução 33 Considera-se que a estrutura da segmentação é do tipo “bottom-up”. Começa-se com a segmentação e o resultado deste processo é que poderá ser usado posteriormente. Por exemplo, os resultados da segmentação serão a entrada de um sistema de reconhecimento de objetos. Assim, desconsideram-se contribuições “top-down”, isto é, não se considera que há camadas superiores à da segmentação que possam fornecer informações de alto nı́vel que auxiliem o processo de segmentação. 1.6 Organização do Texto Neste capı́tulo define-se o problema tratado, quais são as dificuldades envolvidas, a motivação, os objetivos, a metodologia, as limitações da proposta, e as contribuições deste trabalho. O restante do texto foi dividido em quatro capı́tulos. O segundo capı́tulo descreve como usar informações suplementares e paralelas em um método de crescimento de regiões, en- quanto o capı́tulo 3 descreve como usar o resultado do crescimento de regiões junto com o resultado de um detector de bordas, isto é, como integrar informações complementares e paralelas. A ordem e divisão dos capı́tulos 2 e 3 são similares. Inicia-se explicando a fundamentação teórica dos métodos e como foram criadas as arquiteturas baseadas nos mes- mos, evidenciando as diferenças entre as várias arquiteturas. Listam-se trabalhos correlatos, apresentam-se os testes e resultados experimentais de forma qualitativa e quantitativa, fina- lizando com uma discussão destes resultados. Finalmente, no Capı́tulo 4 destacam-se as conclusões obtidas deste trabalho e indicam-se as direções futuras para continuação da pesquisa. Ao final, apresentam-se os apêndices sobre detalhes do método JSEG, as métricas Preci- sion-Recall × ROC, da base de dados BSDS e da teoria de Multifractal. Capı́tulo 2 Critério de Homogeneidade Integrando Descritor Multifractal e J-image O que se propõe neste trabalho é uma abordagem não-supervisionada e automática para segmentação de cenas naturais coloridas. A proposta é dividida em duas fases de integração. Na primeira fase, o propósito é usar duas diferentes medidas como critério de homogenei- dade no processo de crescimento de regiões. Para atingir tal objetivo, comparam-se os dife- rentes critérios de homogeneidade individualmente e depois em conjunto. Nas arquiteturas propostas, trabalha-se com a J-image, (critério original do JSEG), e o descritor multifractal separadamente, e depois integram-se as duas medidas. O capı́tulo inicia descrevendo as caracterı́sticas essenciais do JSEG (para detalhes ver o Apêndice A), explica-se como a imagem 3D associada ao descritor multifractal é gerada, e depois detalham-se quatro diferentes arquiteturas propostas, chamadas Fractal-only (Komati et al., 2009, 2010b), Fractal-JSEG (Komati et al., 2009, 2010b), I-Frac (Komati et al., 2010a) e MM-Frac (Komati et al., 2011c). 2.1 O método JSEG Para segmentação de imagens coloridas, um dos métodos mais populares é o método proposto por Deng e Manjunath (2001), o algoritmo JSEG (J-SEGmentation). Um dos prin- cipais objetivos do JSEG é criar uma abordagem não supervisionada e automática onde não seja necessário estimar um modelo especı́fico de texturas e regiões. A proposta dos autores é avaliar a homogeneidade local de uma região, caracterizada por cor e textura, e assim reali- zar a segmentação. O JSEG é um método multi-escala de crescimento de regiões, e é muito 2. Critério de Homogeneidade Integrando Descritor Multifractal e J-image 35 usado como padrão de comparação por novas propostas (Haindl e Mikes, 2008; Liu et al., 2007; Celebi et al., 2010). Na essência, o método JSEG tem dois estágios sequenciais: a quantização de cores e a segmentação espacial. No primeiro estágio, o método trata apenas as cores, independente de sua localização na imagem, gerando uma imagem simplificada que é a entrada para o segundo estágio. O segundo estágio analisa apenas a localização espacial dos elementos, não mais tratando as cores. O objetivo do primeiro estágio é diminuir a quantidade de cores sem degradar significan- temente a qualidade das mesmas. O resultado deste estágio diminui a quantidade de cores, tipicamente entre 10 (dez) a 20 (vinte) cores (Deng et al., 1999a). Cada cor é rotulada como uma classe e, a partir de então, trabalha-se apenas com este mapa-de-classes, e não mais com as cores. Desta forma, a imagem colorida original, que tem três matrizes, é reduzida a apenas uma matriz, que segue como entrada para o estágio de segmentação espacial. No estágio de segmentação espacial calcula-se a medida J, que é o critério que quan- tifica a distribuição de classes. Essencialmente, mede a distância entre diferentes classes, dividindo-a pela distância entre os membros de cada classe, conceito similar ao discrimi- nante linear multi-classes de Fisher. O valor J é calculado para cada pixel, usando uma janela local, gerando assim uma imagem, a J-image. A multi-escala é feita alterando-se o tamanho da janela local, criando uma J-image para cada escala. Na J-image, quanto maior o valor de J local maior é a probabilidade do pixel estar próximo a uma fronteira entre regiões. A J-image é como um mapa 3-D contendo vales e montanhas, que representam o centro e as fronteiras das regiões, respectivamente. As caracterı́sticas da J-image permitem utilizar um método de crescimento de regiões para a segmentação da imagem. Finalmente, para dimi- nuir o problema de supersegmentação, as regiões são mescladas (region merge), com base em semelhança de cores. Após a junção de regiões, a segmentação final é obtida. Mostram-se as imagens intermediárias do algoritmo na Figura 2.1. Tem-se em (a) a imagem de entrada, que é a imagem 101085 do BSDS, porém com as dimensões alteradas para que ficasse quadrada, (esta alteração só foi feita para melhorar a disposição das imagens no texto). Na sequência da Figura 2.1, em (b) apresenta-se a imagem após o processo de quantização de cores, em (c) a J-image na escala 3, em (d) a imagem segmentada associada a (c), em (e) a J-image na escala 2, em (f) a imagem segmentada associada a (e), em (g) tem- se a referência humana do BSDS e em (h) apresenta-se a segmentação final após o region merge das escalas 2 e 3. As imagens (d), (f) e (h) estão sobrepostas sobre a imagem de entrada. O número das escalas, 2 e 3, referem-se aos tamanhos das janelas locais da Tabela A.1. Nesta figura, observa-se que: • a imagem quantizada realmente possui uma quantidade menor de cores. Neste caso, 2. Critério de Homogeneidade Integrando Descritor Multifractal e J-image 36 (a) 101085 (b) após quantização (c) J-image na escala 3 (d) segmentação da escala 3 (e) J-image na escala 2 (f) segmentação da escala 2 (g) referência humana (h) segmentação final Figura 2.1: Resultados intermediários do método JSEG para a imagem 101085 do BSDS. 2. Critério de Homogeneidade Integrando Descritor Multifractal e J-image 37 após a quantização, há apenas 8 (oito) cores; • a imagem J-image da escala 2 apresenta mais detalhes do que a imagem J-image da escala 3. Este fato é esperado, pois a escala 2 possui uma janela local menor, e o tamanho da janela é que determina o tamanho de regiões que podem ser detectadas; • o processo de region merge (resultado mostrado na Figura 2.1h) diminuiu a quantidade de regiões da escala 2, e apresenta maior quantidade de regiões que o resultado da escala 3. Este processo seleciona as regiões, não criando novas regiões ou mesmo alterando a localização das fronteiras entre as regiões. O método JSEG, assim como os métodos de crescimento de regiões, apresenta resultados com fronteiras finas e conectadas, e é estável com relação ao ruı́do. Alguns bons resultados de segmentação do JSEG são mostrados na Figura 2.2a, b e c (os números identificam as ima- gens dentro da base de dados BSDS). Uma constatação importante é que melhores resultados do JSEG surgem quando os elementos das cenas naturais possuem cores bem distintas. (a) 46076 (b) 80099 (c) 35070 (d) 101085 (e) 311068 (f) 148026 Figura 2.2: Resultados de segmentação do método JSEG. No entanto, em alguns casos, os resultados de segmentação do JSEG apresentam o pro- blema de supersegmentação, que consiste em caracterizar um número de regiões muito grande, separando regiões que um ser humano não separaria. Observa-se que o método 2. Critério de Homogeneidade Integrando Descritor Multifractal e J-image 38 JSEG apresenta muita segmentação quando há textura fina, como pode ser visto na Figura 2.2d, onde cada totem está sendo subdividido em várias partes, ou como na Figura 2.2e, onde a vegetação está sendo segmentada em várias partes. O método também segmenta cada janela da Figura 2.2f, numa imagem onde os anotadores humanos indicam o prédio com contorno único. Assim, acredita-se que é possı́vel melhorar os seus resultados de segmentação adotando um critério mais adequado para distinguir informações de caracterı́sticas intra e inter-regiões. Considera-se que operadores de detecção de bordas não são compatı́veis com tal tarefa, pois são muito sensı́veis a quaisquer bordas e não seriam bons critérios de homogeneidade de regiões. A Figura 2.3 mostra, em sua parte (a), um mosaico com três texturas, em (b) o resultado da imagem após o filtro de Marr-Hildreth, em (c) o resultado após filtro de Canny e em (d) o resultado invertido da imagem do descritor multifractal para tamanho de janela 3× 3. Observe como os resultados dos detectores de borda se comportam: o filtro de Marr- Hildreth é tão sensı́vel que responde a qualquer alteração na intensidade dos valores de cinza. Mesmo o filtro de Canny, sendo menos sensı́vel do que o de Marr-Hildreth, indica cada reta do entrelaçado da região superior direita. Já a imagem associado ao descritor multifractal enfatiza as fronteiras entre as regiões e responde menos forte para as bordas dentro das regiões. Se aumentarmos o tamanho da janela, a resposta às informações dentro das regiões se torna mais fraca ainda, pois o tamanho da janela está associado a granularidade da textura a ser reconhecida. (a) Imagem de entrada (b) Resultado do filtro Marr-Hildreth (c) Resultado do filtro de Canny (d) Resultado do descritor multifractal Figura 2.3: Aplicação de diferentes filtros em um mosaico de texturas. 2. Critério de Homogeneidade Integrando Descritor Multifractal e J-image 39 Trabalhos anteriores (Côco et al., 2009; Côco et al., 2007) motivam o uso de uma medida baseada no descritor multifractal como um critério de homogeneidade de regiões baseado no padrão cor-textura. Conforme Côco (2007), o descritor multifractal não se resume apenas a um simples detector de bordas. Backes (2010) afirma que a dimensão fractal atua como uma medida de homogeneidade da textura, tornando possı́vel a sua quantificação e a sua comparação com outras texturas. O Apêndice D contém informações e referências sobre o assunto. 2.2 A imagem do descritor multifractal Desde o trabalho de Pentland (1984), a idéia de visualizar os valores da dimensão fractal como uma imagem já existia. Porém, ele não gerava um valor por pixel, mas sim por bloco de pixels. Véhel e Mignot também usam esta ideia de visualização em seu artigo de 1994 (Véhel e Mignot, 1994). Os resultados destes trabalhos é que motivam, nesta Tese, tratar o cálculo da dimensão fractal como se fosse um filtro espacial de processamento de imagens de detecção de fronteiras entre regiões homogêneas. Ao invés de usar a equação D.6, usou-se a equação (q−1)Dq(i, j) = τ(q) = ln [ ∑i, j µr(i, j)q] ln (M r ) , (2.1) A alteração feita, a retirada do limite, significa que ao invés de fazer a relação linear no gráfico ln/ln usou-se o valor computado diretamente como indicação de borda no mapa 3D. Segundo Véhel e Mignot (1994) isso é possı́vel, pois a idéia principal não é calcular os valores “reais” do espectro multifractal, mas sim, informar quando se está ou não perto de uma fronteira entre regiões. Em outros termos, o objetivo não é o cálculo exato dos valores, mas sim evidenciar diferenças entre os valores estimados. Logo, o interesse é que os valores calculados representem apenas a indicação de fronteiras. Com isso, tem-se uma diminuição significativa do tempo de computação, pois não será necessário efetuar a regressão linear em cada pixel da imagem. Em geral, calcula-se o valor da dimensão para vários valores de q. Porém, Teng e colegas (Teng et al., 2010) mostram que os valores para q > 2 podem ser representados pelo resul- tado correspondente ao valor q = 2 e valores q <−1 podem ser representados pelo resultado de q =−1. Isto é, apenas os resultados de q no conjunto−1,0,1,2 contêm informações rele- vantes, e fora dessa faixa os valores são redundantes. Theiler (1990) afirma que o método de Box-Counting para o cálculo da dimensão multifractal, quando q < 1, não é adequado, e que 2. Critério de Homogeneidade Integrando Descritor Multifractal e J-image 40 se tem melhor estimativa para q > 1. (Teng et al., 2010) ainda afirma que para q = 2, regiões regulares apresentarão alto valor para D2 (equação 2.1 para q = 2) e, consequentemente, valores baixos para regiões não-regulares. Assim, ao se gerar uma imagem 3D com a informação do descritor multifractal local, as fronteiras serão vales estreitos e profundos confinados entre paredes abruptas, quase verti- cais. Na Figura 2.4, apresenta-se em (a) a imagem 101085 da base de dados do BSDS, com as dimensões alteradas para que a imagem fique quadrada. As imagens (b), (e) e (f) apresen- tam as imagens dos descritores multifractais respectivamente para as janelas 9×9, 17×17 e 33×33. Nas imagens (a), (b), (e) e (f) está representada a linha 200 (duzentos) na cor branca, para ressaltar qual foi a linha utilizada para mostrar o gráfico 2D, respectivamente em (c), (d), (g) e (h). É interessante observar que a imagem do descritor multifractal segue o que foi explicado, isto é, regiões regulares apresentarão valores elevados (pixels mais claros) e, consequente- mente, regiões não-regulares apresentarão valores baixos (pixels mais escuros). As fronteiras entre regiões são regiões não-regulares, e, portanto, são apresentadas como um contorno es- curo. À medida que a janela aumenta, as bordas da imagem do descritor multifractal também vão se tornando mais grossas. Os valores J, no método JSEG, formam uma imagem 3D, a J-image, onde os vales repre- sentam áreas de regiões homogêneas e as montanhas representam as fronteiras entre regiões. Portanto, tem-se uma representação inversa nas duas imagens, a J-image e a imagem gerada pelo descritor multifractal. Efetua-se uma inversão dos valores nas imagens do descritor multifractal, para que ambas as representações tenham a mesma semântica. Também é feita uma normalização dos valores para que ambas as representações tenham os mesmos limites de valores, sendo que o valor do J-value varia entre 0 e 2. A Figura 2.5 mostra, na coluna da esquerda, as imagens dos descritores fractais normalizados para as janelas 9×9 (parte a), 17×17 (parte c) e 33×33 (parte e). Nota-se que estas imagens são mais parecidas com as imagens do J-image apresentadas nas Figuras 2.1c e 2.1e. Na coluna direita da Figura 2.5 apresentam-se os gráficos 2D da linha 200 da imagem à esquerda. Para facilitar a comparação da localização das fronteiras entre regiões da referência hu- mana com relação à imagem do descritor multifractal, mostram-se dois gráficos na Figura 2.6. O primeiro gráfico, em (b), apresenta duas curvas: a curva em azul é a linha 200 da imagem de entrada 101085 e a curva em vermelho é a linha 200 da imagem de referência humana, mostrada em (a). Embora exista uma indefinição logo no inı́cio do gráfico, perto da origem, a curva em vermelho mostra basicamente 6 (seis) picos, que são exatamente as fronteiras dos três totens. Pela curva em azul, são os pontos onde há uma singularidade no gráfico como um degrau. No segundo gráfico, em (c), a curva em vermelho é a mesma de (b) 2. Critério de Homogeneidade Integrando Descritor Multifractal e J-image 41 (a) (b) (c) (d) (e) (f) (g) (h) Figura 2.4: (a) Imagem 101085 da base de dados do BSDS; (b) Imagem do descritor fractal para janela de tamanho 9×9; (c) gráfico 2D da linha 200 da imagem (a); (d) gráfico em 2D da linha 200 da imagem (b); (e) Imagem do descritor fractal para janela de tamanho 17×17; (f) Imagem do descritor fractal para janela de tamanho 33×33; (g) gráfico 2D da linha 200 da imagem (e); (h) gráfico em 2D da linha 200 da imagem (f). 2. Critério de Homogeneidade Integrando Descritor Multifractal e J-image 42 (a) 9×9 (b) (c) 17×17 (d) (e) 33×33 (f) Figura 2.5: À esquerda apresentam-se as imagens dos descritores fractais normalizados, (o tamanho da janela associada se encontra abaixo de cada imagem). À direita, apresentam-se os gráficos 2D da linha 200 da imagem à esquerda. 2. Critério de Homogeneidade Integrando Descritor Multifractal e J-image 43 (a) (b) (c) Figura 2.6: (a) Referência Humana de 101085. (b) Gráfico 2D com as curvas da linha 200 da imagem em escala de cinza 101085 em azul (c) Gráfico 2D com as curvas da linha 200 da imagem do descritor multifractal com janela 9×9 em azul. A curva em vermelho de (b) e (c) corresponde à linha 200 da imagem da referência humana. 2. Critério de Homogeneidade Integrando Descritor Multifractal e J-image 44 e a curva em azul é a linha 200 da imagem do descritor multifractal com janela 9×9, já com os valores invertidos, mas não normalizados. Os picos das curva em azul abrangem os picos da curva em vermelho. O fato da localização não ser exata será resolvido pelo algoritmo de crescimento de regiões, que irá aglutinando os vales até chegar às montanhas. 2.3 Trabalhos Relacionados Há poucos trabalhos propondo melhorias no método JSEG, dentre os quais dois são aqui apresentados. Nos trabalhos de Chang e colegas (Chang et al., 2007a,b) se propõe um método de melhoria de contraste, chamado IC-JSEG. Este método altera o espaço de cores e altera o contraste da imagem, gerando um mapa de contraste. Aplicam-se dois filtros nesse mapa, um para retirada de ruı́do e outro para enfatizar as bordas. Testes em três imagens médicas e em três imagens de cenas naturais são realizados, e os autores mostram que houve melhoria no problema de supersegmentação do JSEG. No trabalho de Wang e colegas (Wang et al., 2006), os autores propõem uma abordagem para solucionar o problema de supersegmentação de áreas com gradação suave de cores que o JSEG apresenta. Para tanto, embute-se uma medida de operadores direcionais de Frei e Chung-Ching (1977) para identificar a similaridade de cores. Testes com imagens do BSDS são realizados, mas os resultados quantitativos não são baseadas nas métricas padrão atuais do BSDS, impossibilitando a comparação quantitativa com este método. A dimensão multifractal é amplamente utilizada para segmentação de imagens ou textu- ras. A começar pelo trabalho de Pentland (1984), cuja técnica consiste em dividir a imagem em blocos e, para cada bloco, calcular a dimensão fractal. Depois, constrói-se um histo- grama com os valores da dimensão fractal, que é então dividido em seus vales ou mı́nimos locais. Cada divisão do histograma representa uma área homogênea da imagem. Há três exemplos de imagens de cenas naturais em escala de cinza, e Pentland relata outros testes mostrando bons resultados, porém lamenta que não há como comparar seus resultados com outras técnicas. Véhel possui vários artigos nesta área, escritos com colegas variados, onde se destaca seu trabalho de 1994 (Véhel e Mignot, 1994). Neste trabalho, ele demonstra que é possı́vel usar caracterı́sticas multifractais de cada pixel da imagem para solucionar o problema de segmentação. Estes valores são as entradas de um modelo de otimização Bayesiana, que classificará os pontos em pixels de borda ou não. Os experimentos, em imagens em escala de cinza, mostraram que esta abordagem é melhor, quando comparada com o detector de bordas Canny. Já Chaudhuri e Sarkar (1995) utilizam um vetor de caracterı́sticas, tendo-se 2. Critério de Homogeneidade Integrando Descritor Multifractal e J-image 45 dimensão fractal local e dimensão multifractal, entre outros valores, como entrada para o método de clustering, o K-means. Bons resultados foram alcançados ao segmentar mosaicos de texturas em escala de cinza. Maeda e colegas (Maeda et al., 2000), apresentam um algoritmo para estimar a dimensão fractal local (DFL) de imagens, com base no Blanket Method (Peleg et al., 1984). Depois, unem caracterı́sticas de diferença de intensidade de cores, gradiente de cores e DFL de cada pixel e aplicam um procedimento chamado Fuzzy Region-Growing. O teste é feito em ape- nas uma imagem de cena natural colorida. Kasparis e colegas (Kasparis et al., 2001) usam um vetor de caracterı́sticas composto por medidas fractais, e um algoritmo iterativo base- ado em K-means para a segmentação. O algoritmo de agrupamento inicia em uma janela local grande, que a cada iteração é reduzida. Comparações com caracterı́sticas baseadas em energia são feitas em testes com imagens de mosaicos de Brodatz. Nunes e Conci (2003) propuseram o uso de fractais para segmentação de texturas em imagens multi-bandas. Além da geração da dimensão multifractal local de cada banda, é feito um exame do inter-relacionamento entre a representação da imagem em cada banda. Após uma fase de treinamento supervisionado, é feita a classificação automática dos valores. Os testes de segmentação foram feitos com mosaicos de texturas naturais coloridas e imagens reais de satélites, e através deles os autores mostram a eficiência do método. Xia e colegas (Xia et al., 2006) propuseram o LMME (Local Morphology-based Multi- fractal Estimation), que é um novo algoritmo para cálculo da dimensão multifractal usando técnicas de morfologia matemática. As caracterı́sticas são computadas através de uma janela deslizante de 11×11 pixels, centrada no ponto. A segmentação é feita com base no algoritmo de agrupamento fuzzy C-means. Ao final, o trabalho afirma, através de resultados de testes, que o LMME diferencia melhor texturas que duas outras técnicas de estimativas de dimensão multifractal, MDBC (Houqiang et al., 2001) e MRDBC (Du e Yeo, 2002) em mosaicos de texturas e cenas naturais. Côco, Salles e Sarcinelli-Filho (Côco et al., 2009) apresentaram um novo critério to- pográfico para o método TICA (Topographic Independent Component Analysis), uma combi- nação da energia mais o descritor LMME. Os vetores de caracterı́sticas são submetidos ao método K-means. Resultados em mosaicos de texturas mostram que a nova abordagem com o descritor multifractal é melhor que a tradicional, que usa apenas energia. Portanto, uma abordagem comumente utilizada é criar um vetor de caracterı́sticas, que depois é analisado por um método de agrupamento, como o K-means. Trabalhos anterio- res, inclusive, já haviam utilizado descritores multifractais como um elemento num vetor de caracterı́sticas. Nesta Tese, diferentemente, será usado um descritor multifractal local para criar uma representação de uma imagem 3D com vales e montanhas, indicando o quanto 2. Critério de Homogeneidade Integrando Descritor Multifractal e J-image 46 o pixel está ou não numa região de borda. Assim, ao invés de se criar um vetor de carac- terı́sticas utilizado como entrada para um algoritmo de agrupamento, propõe-se uma nova abordagem, que consiste em integrar diferentes medidas em um único mapa, diminuindo o esforço do algoritmo de agrupamento. 2.4 Arquiteturas Implementadas A partir do JSEG foram desenvolvidos quatro diferentes sistemas, já mencionados na seção 1.3, sumarizadas na Tabela 2.1. Tabela 2.1: Caracterı́sticas das Arquiteturas Implementadas. # Nome Combinação dos Ca- nais de Cores Descritor Multi- fractal J-image Controle 1 Fractal-only Função de máximo Mapa de Classes Não 2 Fractal-JSEG Função de máximo Mapa de Classes Sim Local 3 I-Frac Funções de máximo e média Imagem de Entrada Não 4 MM-Frac Funções de máximo e média Imagem de Entrada Sim Global Deve ser enfatizado que duas arquiteturas utilizam como critério de homogeneidade de regiões apenas o descritor multifractal (arquiteturas 1 e 3), e as outras duas integram o descritor multifractal com o critério de homogeneidade original do JSEG (arquiteturas 2 e 4). Foram implementados dois diferentes tipos de controle de integração, um baseado em informação local e outro em informação global (no caso das arquiteturas 2 e 4). As arquitetu- ras 1 e 2 usam o mapa de classes, isto é, o resultado após o processo de quantização de cores como entrada para o processo de cálculo das imagens do descritor multifractal, enquanto as arquiteturas 3 e 4 usam a imagem colorida original. As arquiteturas 1 e 2 usam a função de máximo para combinar as imagens do descritor multifractal de cada canal de cor, e as arquiteturas 3 e 4 combinam os canais de cores através de funções de máximo e média. Durante os testes preliminares foram utilizados os espaços de cores: o RGB, LUV e o Lab. Os melhores resultados foi no espaço de cores LUV, que já era utilizado pelo JSEG. 2. Critério de Homogeneidade Integrando Descritor Multifractal e J-image 47 2.4.1 Fractal-only A arquitetura chamada Fractal-only usa somente as imagens de dimensão multifractal como critério de homogeneidade do algoritmo de crescimento de regiões, conforme pode ser visto na Figura 2.7. Os elementos que estão sombreados mostram as inclusões feitas, em relação ao sistema original JSEG. É importante salientar que se mantiveram os processos de quantização de cores e crescimento de regiões do método original. Conforme explicado, o cálculo da dimensão multifractal local é executado pelo método DBC, e o tamanho do cubo utilizado é o mesmo que o da janela local para calcular o J-image. Segmentação Espacial Imagem colorida Quantização de cores mapa-de-classes Crescimento de Regiões Imagem segmentada Mapa de classes em LUV Medida multifractal para L Medida multifractal para V Medida multifractal para U Cálculo do J-image J-image do mapa-de- classes Imagem da medida multifractal para L Imagem da medida multifractal para U Imagem da medida multifractal para V funcão de máximo Region Merge Imagem do descritor multifracftal Figura 2.7: Arquitetura do Fractal-only. Os resultados produzidos pelo método JSEG são baseados principalmente no mapa de classes produzido pela primeira etapa, onde se tem o processo de quantização de cores. O mapa de classes é formado por números na faixa de valores entre 1 (um) e C, onde C é o número de classes. Por exemplo, se a quantização reduz a quantidade de cores para dez cores, então o mapa de classes possui valores entre 1 (um) e 10 (dez). Entretanto, observa-se que a medida J é definida sobre a variância deste mapa de classes, que descreve a distribuição das classes, mas acaba desconsiderando a informação de cor. 2. Critério de Homogeneidade Integrando Descritor Multifractal e J-image 48 Assim, para o cálculo do descritor multifractal, ao invés de se usar o mapa de classes, usa-se o valor da cor média de cada classe. Continuou-se a usar o espaço de cores perceptualmente uniforme LUV, também conhecido como CIELUV, que já era usado pelo método JSEG. Por exemplo, ao invés de tratar a informação do pixel como classe de valor 1, tratou-se a informação do pixel como cor azul (com 3 valores, um para luminosidade e dois relativos à cor). Com isso, obtém-se maior sensibilidade às variações de cor que no método original. Os cálculos das três imagens de dimensão multifractal dos componentes do espaço de cores são executados separadamente. Todos os mapas 3D são combinados por uma função de máximo. Esta abordagem, de tratar cada canal do espaço de cores de forma independente, provém de Cheng e colegas (Cheng et al., 2001). Esta idéia também é usada em Conci e Proenca (1997), porém no espaço de cores RGB. Usando a função de máximo, cada pixel do mapa resultante tem valor maior ou igual aos valores dos mapas de entrada, na mesma posição do pixel. Se o descritor multifractal de um pixel no componente U é maior que a dimensão do mesmo pixel no componente L, significa que há uma informação de borda mais perceptı́vel na cor (U) que na luminosidade (em L). Associando sempre o valor máximo de cada pixel, aumenta-se a quantidade de montanhas, isto é, define-se melhor a localização das fronteiras entre regiões. 2.4.2 Fractal-JSEG O objetivo desta arquitetura é analisar se o resultado dos critérios de homogeneidade, (J-image e o descritor multifractal), combinados apresentam resultados melhores ou piores que os critérios isoladamente. A Figura 2.8 mostra a arquitetura do sistema Fractal-JSEG. Os elementos que estão som- breados mostram as inclusões feitas, em relação ao sistema original JSEG. A diferença entre o Fractal-JSEG e o Fractal-only foi o uso do mapa 3D J-image como entrada da função de máximo, além dos mapas 3D dos descritores multifractais. O cálculo das três imagens do descritor multifractal dos componentes do espaço de cores e do J-image são executados separadamente. 2. Critério de Homogeneidade Integrando Descritor Multifractal e J-image 49 Segmentação Espacial Imagem colorida Quantização de cores mapa-de-classes Crescimento de Regiões Imagem segmentada Mapa de classes em LUV Medida multifractal para L Medida multifractal para V Medida multifractal para U Cálculo do J-image J-image do mapa-de- classes Imagem da medida multifractal para L Imagem da medida multifractal para U Imagem da medida multifractal para V funcão de máximo Imagem do descritor multifracftal Region Merge Figura 2.8: Arquitetura do Fractal-JSEG. 2.4.3 I-Frac Nesta terceira arquitetura, mostrada na Figura 2.9, há três pontos que a diferenciam do Fractal-only: 1. uso da imagem original para o cálculo da imagem da dimensão multifractal. A di- mensão fractal fornece uma informação quantitativa da rugosidade da superfı́cie. Ao se quantizar a imagem, isto é, diminuir a quantidade de cores da imagem, altera-se a informação original. Essa diminuição da informação afeta o cálculo de rugosidade. Assim, ao usar a imagem original como entrada para o cálculo da imagem do descritor multifractal tem-se uma informação mais precisa sobre a rugosidade da superfı́cie, tal qual no trabalho de Kasparis e colegas (Kasparis et al., 2001); 2. combinação das imagens de dimensão multifractal. No Fractal-only todos os mapas 3D são combinados através de uma função de máximo. Isto é, supõe-se que cada componente do LUV tem a mesma importância para a definição de bordas. Testes pre- liminares mostraram que os componentes de cores, U e V, têm informações similares, 2. Critério de Homogeneidade Integrando Descritor Multifractal e J-image 50 Segmentação Espacial Imagem colorida Quantização de cores mapa-de-classes Crescimento de Regiões Imagem segmentada Medida multifractal para L Medida multifractal para V Medida multifractal para U Cálculo do J-image J-image do mapa-de- classes Imagem da medida multifractal para L Imagem da medida multifractal para U Imagem da medida multifractal para V função de máximo função de média Region Merge Imagem do descritor multifracftal Figura 2.9: Arquitetura do I-Frac. e que uma combinação diferente pode fornecer uma imagem de bordas mais descritiva. Nestes testes, a melhor combinação foi o uso da função de máximo entre os compo- nentes de cores e o uso da função de média entre os resultados da luminância e da combinação de cores; 3. alteração da janela local. Reduziu-se à metade os tamanhos originais das janelas locais do JSEG, com isso reduzindo o tamanho dos cubos. Além disso, não há a necessidade de se diminuir a amostragem. A janela local utilizada no JSEG possui um esquema de subamostragem, isto é, diminui a quantidade de informações da janela (veja Tabela A.1 do Apêndice A). No artigo original que propõe o método do JSEG (Deng e Manju- nath, 2001) esta subamostragem é feita por motivos computacionais. Entretanto, para os computadores atuais pode-se relaxar esta restrição, de forma que nesta arquitetura não há mais esta subamostragem. Logo, todos os pixels da janela local (cubo) são considerados. Assim, a tabela de escalas adotadas é a Tabela 2.2. 2. Critério de Homogeneidade Integrando Descritor Multifractal e J-image 51 Tabela 2.2: Tamanho das janelas para cada escala do I-Frac. escala janela amostragem tamanho da região tamanho mı́nimo da semente (pixels) (1/pixels) (pixels) (pixels) 1 5×5 1/(1×1) 32×32 16 2 9×9 1/(1×1) 64×64 32 3 17×17 1/(1×1) 128×128 128 4 33×33 1/(1×1) 256×256 512 2.4.4 MM-Frac A arquitetura MM-Frac utiliza o mapa 3D J-image, além dos mapas 3D dos descritores multifractais, para compor a entrada para o processo de crescimento de regiões. O cálculo das três imagens do descritor multifractal dos componentes do espaço de cores e do J-image são executados separadamente. A Figura 2.10 mostra a arquitetura do sistema MM-Frac, onde todos os retângulos representam os processos que recebem imagens como entrada e retornam uma imagem como saı́da. O processo de estimativa de α é representado como uma elipse, pois é o único processo que recebe uma imagem como entrada e retorna um número real como saı́da. Diferente da arquitetura do Fractal-JSEG, o controle de mistura dos mapas agora se ba- seia em uma propriedade estatı́stica global da imagem: o valor α, que é a declividade da curva do espectro de potência da imagem de entrada. Esta medida se mostrou muito efi- ciente na classificação de imagens de cenas naturais em diferentes categorias semânticas (objetos simples, cômodos, cenas panorâmicas, dentre outros), conforme trabalho de Tor- ralba e Oliva (2003), e também na segmentação de imagens, como no trabalho de Côco, Salles e Sarcinelli-Filho (Côco et al., 2009). Eles observaram que a declividade do perfil da curva dada pelo espectro de potência das imagens (log(magnitude) × log(frequência)) recai, na média, na forma 1/ f α com α∼ 2. A curva é dada pelos valores decrescentes do espectro de energia, da frequência mais baixa para a mais alta. A Figura 2.11 exemplifica o espectro de potência em 3D, onde o perfil da curva é enfatizado em vermelho. A Figura 2.12 mostra o perfil (em vermelho), no gráfico 2D, e a interpolação linear (linha preta pontilhada). No exemplo, o valor estimado é dado por −α =−2,31 (ou α =+2,31). Estatı́sticas de imagens naturais parecem seguir um padrão de regularidade. Pentland (1984) mostrou que superfı́cies naturais fractais (como montanhas e florestas) produzem uma imagem com espectro de energia na forma 1/ f α, onde α está relacionado com a dimensão 2. Critério de Homogeneidade Integrando Descritor Multifractal e J-image 52 Segmentação Espacial Imagem colorida Quantização de cores mapa-de-classes Crescimento de Regiões Imagem segmentada Medida multifractal para L Medida multifractal para V Medida multifractal para U Cálculo do J-image J-image do mapa-de-classes Imagem da medida multifractal para L Imagem da medida multifractal para U Imagem da medida multifractal para V função de máximo função de média Estimativa de α função de média ponderada imagem Region Merge Imagem do descritor multifracftal Figura 2.10: Arquitetura de MM-Frac. fractal de superfı́cies 3D (isto é, a sua rugosidade). Caracterı́sticas de declividade podem ser agrupadas em duas famı́lias: declividade suave (α ∼ 1), para cenas rugosas e com objetos detalhados, e declividade acentuada (α ∼ 3), para cenas com objetos de pouca rugosidade (mais lisos). Logo, quanto mais suave é a declividade, mais rugosa é a imagem ou a imagem possui mais informação de alta frequência. Alguns exemplos de imagens com muita rugosidade são apresentados na coluna esquerda da Figura 2.13, enquanto que na sua coluna direita são apresentados os respectivos gráficos da interpolação de α. Nestes gráficos mostra-se, também, a reta com declividade -2, apenas para facilitar a comparação visual. A estimativa de α foi feita apenas no componente de luminância, por isso as imagens estão em escala de cinza. Na Figura 2.14 são mostrados alguns exemplos de imagens com α∼ 3. Da mesma forma que na figura anterior, na coluna esquerda estão as imagens de entrada e na coluna direita estão os gráficos associados a seus respectivos α. Na figura com baixo valor de α tem-se muitas rugosidade, como a areia e a vegetação com galhos. Já na outra figura, as imagens apresentam regiões extensas com as mesmas cores ou de pouca rugosidade, como nuvens. 2. Critério de Homogeneidade Integrando Descritor Multifractal e J-image 53 Figura 2.11: Espectro de potência de uma imagem em 3D. Figura 2.12: Espectro de potência de uma imagem em 2D. Para integrar as duas medidas, utilizou-se uma média ponderada baseada em α. Quanto menor o valor de α, maior o peso da medida multifractal. Assim, cada pixel no mapa 3D final é dado por mapi j = J-value×αnorm +(1−αnorm)× valor-Fractal, (2.2) onde αnorm = (α− 1,0)/2,0. Esta normalização foi feita considerando a faixa de valores [1,3] citado no trabalho de Pentland (1984), de tal forma que αnorm esteja na faixa [0,1]. Um valor baixo de α, significa que a imagem apresenta muita rugosidade, e o peso da parcela relativa ao mapa do descritor multifractal é privilegiado com relação à parcela do J-image. Para valores altos de α, os pesos se invertem. 2. Critério de Homogeneidade Integrando Descritor Multifractal e J-image 54 196073 α=1,45 175032 α=1,58 69040 α=1,69 86016 α=1,77 Figura 2.13: Exemplos de imagens com valores de α próximos de 1. 2. Critério de Homogeneidade Integrando Descritor Multifractal e J-image 55 106024 α=2,78 3096 α=2,84 45096 α=2,85 189080 α=2,98 Figura 2.14: Exemplos de imagens com valores de α próximos de 3. 2. Critério de Homogeneidade Integrando Descritor Multifractal e J-image 56 2.5 Resultados Experimentais e Discussão Nesta seção são mostrados e analisados os resultados de cada uma das quatro arquite- turas descritas na seção anterior, de forma qualitativa e quantitativa. Os experimentos não incluı́ram qualquer tipo de calibração de parâmetros para alguma imagem especı́fica. Isto é, todos os parâmetros foram configurados para valores padrão, e não houve modificação destes valores durante as baterias de testes. O limiar para quantização de cores e a quantidade de escalas são calculados de forma automática. Para o limiar do region merge foi utilizado o valor padrão do JSEG, o qual é 0,4. 2.5.1 Comparação entre JSEG e Fractal-only Os resultados e a análise serão apresentados na seguinte sequência: 1. Figura 2.15, mostrando os resultados onde o método Fractal-only obteve métricas de F-measure maiores que o método JSEG; 2. Figura 2.16, mostrando os resultados onde o método Fractal-only obteve métricas de F-measure menores que o método JSEG; 3. Figura 2.17, mostrando os resultados onde o método JSEG obteve métricas de F- measure maiores que o método Fractal-only; 4. Figura 2.18, mostrando os resultados onde o método JSEG obteve métricas de F- measure menores que o método Fractal-only. A ordem em todas as figuras é a mesma. Há quatro colunas, sendo que a primeira mostra a imagem original da base de dados de testes (BSDS), seguida pela sua imagem de referência composta pelas anotações humanas (benchmark), seguida pelos resultados das segmentações usando o método JSEG e os resultados das segmentações pelo método Fractal-only. Analisando os resultados das segmentações do método Fractal-only, nos quais o valor de F-measure foram maiores que os valores de F-measure dos resultados do JSEG, verificou- se que há uma caracterı́stica comum nestas imagens: texturas complexas são identificadas como uma região única. Destacam-se alguns exemplos desta caracterı́stica na