• Nenhum resultado encontrado

Avaliação de descritores de textura para segmentação não-supervisionada de imagens

N/A
N/A
Protected

Academic year: 2021

Share "Avaliação de descritores de textura para segmentação não-supervisionada de imagens"

Copied!
138
0
0

Texto

(1)

Carlos Alberto Souto Junior

Avaliação de Descritores de Textura para

Segmentação Não-Supervisionada de

Imagens

Dissertação de Mestrado apresentada à Faculdade de Engenharia Elétrica e de Computação como parte dos requisitos para a obtenção do título de Mestre em Engenharia Elétrica. Área de concentração: Engenharia de Computação.

Orientador: Prof. Dr. Clésio Luis Tozzi

Banca Examinadora:

Prof. Dr. Clésio Luis Tozzi (DCA/FEEC/UNICAMP)

Prof. Dr. Márcio Luiz de Andrade Netto (DCA/FEEC/UNICAMP) Prof. Dr. Fernando Marques de Almeida Nogueira (DEP/UFJF)

Campinas, SP 2010

(2)

FICHA CATALOGRÁFICA ELABORADA PELA

BIBLIOTECA DA ÁREA DE ENGENHARIA E ARQUITETURA - BAE - UNICAMP

So89a

Souto Junior, Carlos Alberto

Avaliação de descritores de textura para segmentação não-supervisionada de imagens / Carlos Alberto Souto Junior. --Campinas, SP: [s.n.], 2010.

Orientador: Clésio Luis Tozzi.

Dissertação de Mestrado - Universidade Estadual de Campinas, Faculdade de Engenharia Elétrica e de Computação.

1. Campos aleatórios. 2. Textura. 3. Estatística. I. Tozzi, Clésio Luis. II. Universidade Estadual de Campinas. Faculdade de Engenharia Elétrica e de Computação. III. Título.

Título em Inglês: Texture descriptors evaluation for unsupervised image segmentation

Palavras-chave em Inglês: Random fields, Texture, Statistically Área de concentração: Engenharia de Computação

Titulação: Mestrado em Engenharia Elétrica

Banca examinadora: Fernando Marques de Almeida Nogueira, Márcio Luiz de Andrade Netto

Data da defesa: 19/03/2010

(3)
(4)

Resumo

! Este trabalho consiste em uma avaliação de descritores de atributos de textura para o caso totalmente não-supervisionado, na qual nada se conhece anteriormente sobre a natureza das texturas ou o número de regiões presentes na imagem. Escolheram-se para descrever as texturas decomposição por filtros de Gabor, descritores escalares baseados em matrizes de co-ocorrência de níveis de cinza e campos aleatórios de Gauss-Markov; e aplicou-se um procedimento baseado no algoritmo k-means, onde o valor ótimo do parâmetro k foi estimado a partir de uma métrica de qualidade calculada nos resultados da execução do algoritmo k-means para vários valores de k. O k ótimo foi obtido pelo “método do cotovelo”. Aplicou-se o procedimento em imagens sintéticas e naturais e confrontou-se com uma segmentação manual. Obtiveram-se melhores resultados para imagens agrícolas de baixa altitude e tipo frente-fundo quando usados descritores baseados em matrizes de co-ocorrência; nas imagens de satélite, o método que emprega campos aleatórios foi melhor sucedido.

Palavras-chaves: Segmentação Não-Supervisionada de Texturas, Filtros de Gabor, Matriz de Co-ocorrência, Campos Aleatórios, k-means

Abstract

!

! This work comprises a texture features descriptors evaluation focusing the fully unsupervised case, where neither the texture nature nor the numbers of regions in the image are previously known. Three distinct texture descriptors were chosen: Image decomposition with Gabor filters, scalar descriptors based in gray-level co-occurrence matrix and Gauss-Markov random fields; and an automatic region number determination framework was applied. For performance evaluation, the procedure was applied in both synthetic and natural images.

Keywords: Unsupervised Texture Segmentation, Gabor Filters, Co-occurrence Matrix, Random Fields, k-means

(5)

Aos meus pais Carlos e Maria de Fátima e a meus irmão William e Vanessa

(6)

Agradecimentos

Primeiramente, gostaria de agradecer a todas pessoas e instituições que colaboraram para minha formação prévia a universitária, em especial a todo o corpo docente da ETec Fernando Prestes e ETec Rubens de Faria e Souza, cujo o ensino e os conselhos foram vitais para direcionar-me para as áreas de tecnologia e engenharia.

Agradeço aos meus pais, Carlos e Maria de Fátima, por sempre me apoiarem na minha decisão de cursar Engenharia longe de casa e continuar os estudos no nível de Mestrado. Agradeço a meus irmãos William e Vanessa, que por seu apoio moral e financeiro, tornaram possível que eu obtivesse meu título de Engenheiro de Computação que possibilitou-me cursar o Mestrado.

Ao meu orientador Prof. Dr. Clésio, pela sua infinita paciência em discutir os mais diversos temas relacionados ao trabalho desenvolvido ao longo de dois anos de Mestrado, desde teoria de métodos estocásticos até gramática portuguesa. O direcionamento dado pelo Prof. Dr. Clésio durante a iniciação científica desenvolvida na graduação foi crucial para a escolha da área de concentração e pesquisa abordada.

A Prof. Dra. Ting, pela confiança depositada em mim para ser monitor de uma disciplina de graduação, além da grande quantidade de conhecimentos passados durante as disciplinas que cursei tanto na graduação quanto na pós-graduação.

Aos demais docentes da UNICAMP, pelo conhecimento passado a mim nestes sete anos em que pude desfrutar de suas aulas e conhecimentos.

A UNICAMP, pelos sete anos de acolhimento e estrutura.

(7)

“Saber o que é certo e não fazê-lo é a pior covardia”

(8)

Sumário

...

Lista de Figuras! xvii

...

Lista de Tabelas! xxi

... Capítulo 1! 1 ... Introdução 1 ... 1.1 Objetivos 5 ... 1.2 Organização do Trabalho 6 ... Capítulo 2! 7 ...

Formas de Representação de Texturas! 7

... Introdução 7 ... 2.1 Textura 7 ... 2.2 Abordagem Espectral 9 ...

2.2.1 Decomposição por filtros de Gabor 10

...

2.2.2 Filtros Bi-dimensionais de Gabor 16

...

2.3 Abordagem Estatística 22

...

2.3.1 Matrizes de Co-ocorrência de Níveis de Cinza 22

... 2.3.2 Método da Dependência Espacial dos Níveis de Cinza. 25

...

2.3.3 Descritores Escalares 28

...

2.4 Abordagem Estrutural 31

...

2.4.1 Campos Aleatórios de Markov 32

...

2.4.2 Campos Aleatórios de Gauss-Markov 34

...

2.4.3 Fatoração por Clique 36

... 2.4.4 Aplicação da Distribuição Normal no Campo Aleatório de Gauss-Markov 37

... 2.4.5 Campo Aleatório de Gauss-Markov no domínio da imagem 39

(9)

...

2.5 Abordagens Mistas e outras abordagens 40

...

Considerações Finais 43

...

Capítulo 3! 45

...

Metodologia de Agrupamento de Dados! 45

...

Introdução 45

...

3.1 Agrupamento de dados 46

...

3.2 O algoritmo de agrupamento k-means 47

...

3.3 Definição automática do número de classes k 49

... Considerações Finais 57 ... Capítulo 4! 59 ... Implementação! 59 ... Introdução 59 ...

4.1 Pré-processamento das imagens 59

...

4.2 Obtenção dos Descritores de Textura 60

...

4.2.1 Decomposição por Filtros de Gabor 60

... 4.2.2 Descritores Escalares Baseados em Matriz de co-ocorrência 64

...

4.2.3 Campos Aleatório de Gauss-Markov 68

... 4.3 Segmentação da imagem 72 ... Considerações Finais 72 ... Capítulo 5! 75 ... Metodologia de testes! 75 ... Introdução 75 ...

5.1 Definição das imagens de teste 75

...

5.1.1 Imagens na Forma de Mosaicos 76

...

(10)

...

5.2 Avaliação da segmentação das imagens 80

...

5.2.1 Análise das Imagens na Forma de Mosaico 81

...

5.2.2 Análise das Imagens Naturais 82

...

Capítulo 6! 89

...

Resultados Experimentais! 89

...

6.1 Imagens na Forma de Mosaicos 89

...

6.2 Imagens Naturais 100

...

Capítulo 7! 121

...

Conclusão e Trabalhos Futuros! 121

...

(11)

Lista de Figuras

... Figura 1.1 - Fluxograma do processo de segmentação não-supervisionada de imagens 3 Figura 2.1 - Representação do espaço aumentado obtido de submeter um imagem a

...

decomposição por filtros de Gabor 16

Figura 2.2 - Representação Gráfica do espectro de um Filtro de Gabor como definido em Zhang, ...

Tan e Ma [3] 18

Figura 2.3 - Representação do espaço aumentado obtido da filtragem de imagem por filtros de ...

Gabor descritos em Zhang, Tan e Ma[3] 19

... Figura 2.4 - a) Imagem senoidal do tipo “telha” b)espectro da imagem a) 20 Figura 2.5 - Resultado da decomposição por filtros de Gabor da imagem da Figura 2.4a para: a)

...

ƒ1, b)ƒ2, c)ƒ3 21

... Figura 2.6 - As direções possíveis de vizinhança, para um pixel de referência 25 Figura 2.7 - Imagem de níveis de cinza usada no exemplo de aplicação de aplicação do método

...

de matriz de co-ocorrência de níveis de cinza 26

...

Figura 2.8 Modelo de uma Matriz de Co-ocorrência 26

Figura 2.9 - Matrizes de Co-ocorrência de níveis de cinza para a imagem de exemplo da Figura ...

2.7 27

... Figura 2.10 - Matrizes de co-ocorrência de níveis de cinza normalizadas 28

... Figura 2.11 Detalhe de uma textura definida por uma estrutura de repetição determinística 32 Figura 2.12 Grafo ilustrando a propriedade de Makov em um campo aleatório de Gauss-Markov

...

35

... Figura 2.13 - Cliques de tamanho 2 do grafo na Figura 2.12 37

... Figura 2.14 - Representação Gráfica da Distribuição Normal 3 8

... Figura 2.15 - Relação do Grafo do Campo Aleatório de Gauss-Markov com a imagem 39

... Figura 3.1 - Representação gráfica da evolução do método k-means para k = 3 48 Figura 3.2 - Ilustração do problema da sensibilidade a mínimos locais do método k-means,

...

para k=3 49

... Figura 3.3 - Fluxograma da análise dos dados de entrada em um método de agrupamento 50

... Figura 3.4 - Fluxograma da análise dos resultados parcias de um método de agrupamento 51 Figura 3.5 - Problema do agrupamento do método K-means Iterative Fisher para conjunto de

...

dados representados por número ímpar de regiões 52

... Figura 3.6 - Fluxograma da análise dos resultados finais de um método de agrupamento 52

... Figura 3.7 - Ilustração do cotovelo, descrito pelo ponto. 55

.. Figura 3.8 - Desempenho do algoritmo k-means, medido pela soma da distância intra-classes 56

...

Figura 4.1 - Distribuição do parâmetro ƒ em cada canal 61

... Figura 4.2 - Fluxograma do processo de decomposição por filtros de Gabor 63 Figura 4.3 - Representação do método de janelamento da imagem empregado no cálculo das matrizes de co-ocorrência. As células em cinza pertencem a janela e a célula preta representa o

... pixel aonde atribuem-se os descritores calculados na janela 65

... Figura 4.4 - Representação de uma janela de tamanho 3x3 que estoura a borda da imagem 65

(12)

Figura 4.5 - Representação do tratamento do problema de borda no janelamento. As células cinza pertencem a janela, as células pretas são os pixels da imagem que receberão os descritores

...

calculados nesta janela 66

Figura 4.6 - Fluxograma do processo de obtenção dos descritores escalares baseados em matriz ...

de co-ocorrência de níveis de cinza 67

.. Figura 4.7 - Representação do sub-janelamento da janela,com a sub-janela centrada em (x,y) 69 Figura 4.8 - Fluxograma do processo de obtenção dos parâmetros do campo aleatório de Gauss-

...

Markov 71

...

Figura 4.9 - Fluxograma do processo de segmentação 73

Figura 5.1 - Exemplo de representação dos resultados de segmentação de imagem, como presente ...

na literatura [57] 76

... Figura 5.2 - Representação da disposição das texturas em uma imagem de mosaico 77

... Figura 5.3 - Exemplo de imagem agrícola de baixa altitude 78 Figura 5.4 - Exemplo de Imagem de Satélite, com detalhe em região com textura de orientação

...

variável ao longo da região 79

... Figura 5.5 - Exemplo de imagem do tipo frente-fundo. No detalhe, a região de brilho 80

...

Figura 5.6 - Modelo de tabela de erros 81

... Figura 5.7 - Modelo de Exibição do resultado da segmentação de imagens 82

... Figura 5.8 - Exemplo de especificação de polígono da região 83

...

Figura 5.9 - Representação dos centróides 84

... Figura 5.10 - Exemplo de matriz de tabulação de distâncias 85

...

Figura 5.11 - Exemplo de matriz de tabulação de notas 86

...

Figura 5.12 - Fluxograma do processo de testes 87

... Figura 6.1 - Imagens na Forma de Mosaico de texturas em cores usadas neste trabalho 90

... Figura 6.2 - Imagens na Forma de Mosaico de texturas em níveis de cinza 91 Figura 6.3 - Resultado da segmentação das Imagens na Forma de Mosaico pelo método de

...

decomposição por filtros de Gabor 93

Figura 6.4 - Resultado da segmentação das Imagens da Forma de Mosaico pelo método de ...

descritores escalares 94

Figura 6.5 - Resultado da segmentação das Imagens na Forma de Mosaico pelo método Campos ...

Aleatórios de Gauss-Markov 95

...

Figura 6.7 - Imagens naturais usadas neste trabalho 101

...

Figura 6.8 - Imagens naturais em tons de cinza 102

Figura 6.9 - Resultados da segmentação da Figura 6.7a. a) Decomposição Por Filtros De Gabor b) ...

Matrizes de Co-ocorrência c) Campos de Gauss-Markov 103

Figura 6.10 - Resultados da segmentação da Figura 6.7b. a) Decomposição Por Filtros De Gabor ... b) Matrizes de Co-ocorrência c) Campos de Gauss-Markov 104 Figura 6.11 - Resultados da segmentação da Figura 6.7c. a) Decomposição Por Filtros De Gabor

... b) Matrizes de Co-ocorrência c) Campos de Gauss-Markov 105 Figura 6.12 - Resultados da segmentação da Figura 6.7d. a) Decomposição Por Filtros De Gabor

... b) Matrizes de Co-ocorrência c) Campos de Gauss-Markov 106 Figura 6.13 -Resultados da segmentação da Figura 6.7d, para k = 4. a) Decomposição Por Filtros

... De Gabor b)Matrizes de Co-ocorrência c) Campos de G auss-Markov 107 Figura 6.14 - Resultados da segmentação da Figura 6.7e. a) Decomposição Por Filtros De Gabor

... b) Matrizes de Co-ocorrência c) Campos de Gauss-Markov 108

(13)

Figura 6.15 - Resultados da segmentação da Figura 6.7e, para k = 4. a) Decomposição Por Filtros ... De Gabor b)Matrizes de Co-ocorrência c) Campos de Gauss-Markov 109 Figura 6.16 - Resultados da segmentação da Figura 6.7f. a) Decomposição Por Filtros De Gabor

... b) Matrizes de Co-ocorrência c) Campos de Gauss-Markov 110 Figura 6.17 - Resultados da segmentação da Figura 6.7f, para k = 4. a) Decomposição Por Filtros

... De Gabor b)Matrizes de Co-ocorrência c) Campos de Gauss-Markov 111 Figura 6.18 - Resultados da segmentação da Figura 6.7g. a) Decomposição Por Filtros De Gabor

... b) Matrizes de Co-ocorrência c) Campos de Gauss-Markov 112 Figura 6.19 - Resultados da segmentação da Figura 6.7h. a) Decomposição Por Filtros De Gabor

... b) Matrizes de Co-ocorrência c) Campos de Gauss-Markov 113 Figura 6.20 - Resultados da segmentação da Figura 6.7i. a) Decomposição Por Filtros De Gabor

... b) Matrizes de Co-ocorrência c) Campos de Gauss-Markov 114 Figura 6.21 - Gráfico das somas das distâncias entre centróides das regiões da segmentação

... ground- truth e das regiões obtidas pelos métodos não-supervisionados 116 Figura 6.22 - Gráfico da soma da diferença entre as áreas da segmentação ground-truth e dos

...

resultados obtidos pelos métodos não-supervisionados 118

... Figura 6.23 : Gráfico das notas atribuídas a segmentação 120

(14)

Lista de Tabelas

...

Tabela 2.1 - Lista de autores e técnicas aplicadas 42

...

Tabela 6.1 - Tabela de Erros 92

...

Tabela 6.2 - Soma da distância entre centróides 111

...

Tabela 6.3 - Soma da diferença das áreas 113

... Tabela 6.4 : Notas dadas aos resultados da segmentação 115

(15)

Capítulo 1

Introdução

! A decomposição de imagens em regiões de interesse é uma das área relevantes da visão computacional, pois as imagens decompostas se constituem em informações importantes no desenvolvimento de conhecimento e tomada de decisões, como por exemplo: navegação autônoma, análise de imagens médicas, agrimensura remota, entre outras. Decomposição em regiões é parte da segmentação de imagens.

! A segmentação busca separar as regiões através de padrões definidos, que podem por exemplo ser descritos por texturas. De posse das regiões podem-se fazer inferências de mais alto-nível, como qual material compõe a região, qual a forma do objeto que possui determinada textura ou até agrupar várias regiões para compor um objeto mais complexo, como uma cama ou mesa.

! No entanto, definir quais são as regiões de interesse dentro de uma imagem não é uma tarefa trivial, pois cada aplicação possui sua própria classe de regiões de interesse; poder-se-ia por exemplo separar regiões de cor vermelha das de cor azul, ou regiões preenchidas com bolinhas das preenchidas com listras e xadrez.

! Para o fim de segmentar uma imagem baseado em texturas, encontram-se na literatura diversas abordagens, podendo-se dividi-las basicamente em abordagens supervisionadas e não-supervisionadas. As abordagens supervisionadas tem em comum a necessidade de se conhecer a priori as características das texturas que se desejam identificar, necessitando uma fase de treinamento do sistema a partir de amostras conhecidas.

! Métodos supervisionados são interessantes quando as imagens que se desejam segmentar sempre contêm um conjunto específico de texturas, que se pode identificar a priori. Desta forma, o problema reduz-se a classificação de regiões baseada em texturas. No entanto, ao se aplicar o método para imagens onde encontram-se texturas ainda não descritas e catalogadas no banco do classificador, a tendência é a de se classificar erroneamente, sendo esse um problema que torna este método inadequado

(16)

quando se deseja pouca interação do usuário com o sistema que segmenta as imagens.

! Outro problema comum nas abordagens supervisionadas é a questão da escala. Normalmente, define-se o descritor de uma textura em uma dada escala da textura, sendo que se a textura apresenta alguma compressão ou ampliação na imagem a se analisar o classificador não consegue reconhecer. Alguns algoritmos tentam lidar com este problema criando descritores complexos, como por exemplo decomposição em pirâmides deslocáveis [1], ou de um tratamento mais sofisticado dos parâmetros do descritor [2]. Estes métodos possuem boa resposta, mas a carga computacional adicionada só se justifica quando se deseja classificar as texturas. Quando se deseja somente agrupar regiões com padrões iguais, a questão da escala deixa de ser um problema, pois mesmo que duas regiões apresentem a mesma textura mas com escalas diferentes, ainda serão duas regiões distintas que precisam ser discernidas. ! Assim, em algumas aplicações de segmentação de imagens, um método não-supervisionado é mais adequado, pois é capaz de lidar com diversas texturas sem conhecimento anterior da sua natureza ou escala. Porém, uma dificuldade presente nos métodos não-supervisionados de segmentação de imagens baseados em textura é como se determinar o número de regiões presentes na imagem. Espera-se que um método totalmente não-supervisionado infira automaticamente o número de regiões presentes na imagem, no entanto observa-se que o enfoque das pesquisas em segmentação baseada em texturas concentra-se nos métodos de descrição de textura, deixando-se para uma análise posterior a automatização do processo de agrupamento em regiões. Para agrupar as regiões, usam de algoritmos já bem estabelecidos, como k-means [3], fuzzy c-means [4] [5] e contornos ativos [6], que por sua vez necessitam ser informados a priori sobre o número de classes que se deseja obter a partir do conjunto de dados. Desta forma, para estes autores os métodos não-supervisionados são os que não dependem de conhecimento anterior sobre a natureza das texturas presentes na imagem, porém, deve-se conhecer quantas regiões se deseja obter após a segmentação da imagem. Logo, deve-se solucionar o problema da determinação automática do número de regiões para que o método possa ser considerado plenamente não-supervisionado.

(17)

!

! Os passos necessários para uma segmentação não-supervisionada baseada em texturas são obtenção de descritores de texturas e agrupamento em regiões.

Figura 1.1 - Fluxograma do processo de segmentação não-supervisionada de imagens !

! A determinação de um descritor de textura que possua boa capacidade de representação é o tema que mais se aborda na literatura sobre segmentação não-supervisionada de imagens baseados em textura. Uma busca revela que se usam várias abordagens na fase de extração dos descritores de textura, havendo também trabalhos que analisam comparativamente o desempenho dos métodos de segmentação, como por exemplo o trabalho de Chang, Bowyer e Sivagurunath [7], que compara o desempenho dos métodos de descrição por matriz de co-ocorrência de níveis de cinza, máscaras de energia de Laws e decomposição por filtros de Gabor. Como método de agrupamento, usa o algoritmo das c-médias nebulosas, sem nenhum critério de determinação automática do número de regiões. Desta forma, o número de regiões que se deseja obter na imagem é um parâmetro externo. Outro exemplo da análise comparativa de formas de descrição de textura está no trabalho de Clausi e Yue [8], que comparam o desempenho dos métodos que usam matriz de co-ocorrência de níveis de cinza e Campos Aleatórios de Markov, usando o método de maximização da probabilidade a posteriori. Novamente, não há critério automático de especificação do número de regiões da imagem.

(18)

A contribuição que se pretende para esta dissertação está em determinar qual descritor que melhor se adequa para segmentar de forma totalmente não-supervisionada um conjunto pré-selecionado de imagens naturais quando se adota uma metodologia automática de determinação do número de regiões. Espera-se que este trabalho contribua para o desenvolvimento da área de pesquisa facilitando a busca de descritores de textura que propiciam a decomposição de imagem em regiões mais adequadas as suas áreas de conhecimento.

(19)

1.1 Objetivos

! Este trabalho tem como objetivo estudar o comportamento de algoritmos de segmentação não-supervisionada de imagens através de texturas, quando estes são aplicados sobre classes bem definidas de imagens naturais e incorporar uma metodologia de especificação automática do número de regiões que compõe a imagem. Para alcançar estes objetivos, usa-se as seguinte metodologia, onde primeiramente, compila-se um banco de imagens coloridas, descritas no espaço RGB. Como os métodos de segmentação escolhidos necessitam de imagens em tons de cinza, convertem-se as imagens para o espaço de cor YIQ e considera-se somente a componente Y, correspondente a intensidade (ou a luma).

! Com as imagens descritas em tons de cinza, extraem-se os descritores de texturas, que servem para compor o espaço de atributos. Aplicam-se os métodos de decomposição por filtro de Gabor, estatísticas sobre matriz de co-ocorrência de níveis de cinza e descrição por campos aleatórios de Gauss-Markov. Depois que se aplicam estes métodos, para cada pixel existe vetor em um espaço de atributos. Ao espaço de atributos obtido pelo uso dos métodos de descrição de textura, adicionam-se as componentes de cor I e Q. Para a segmentação, é necessário o agrupamento destes vetores por uma medida de semelhança no espaço de atributos.

! Para o agrupamento, usa-se o algoritmo k-means. Como o método k-means necessita de um parâmetro k, que determina o número de regiões que se obtém na segmentação, usa-se uma metodologia automática para a determinação ótima do parâmetro k.

(20)

1.2 Organização do Trabalho

! Esta dissertação é constituída de 7 capítulos. O Capítulo 1 compreende a introdução ao problema.

! No Capítulo 2 apresentam-se as formas de descrição de textura. Explicam-se sucintamente algumas formas de descrição de textura relatadas na literatura e apresentam-se comentários do autor desta dissertação para cada técnica. Faz-se uma descrição pormenorizada dos filtros bidimensionais de Gabor, dos descritores escalares baseados nas matrizes de co-ocorrência dos níveis de cinza e dos campos aleatórios de Gauss-Markov, que os leitores familiarizados com as formas empregadas para se descrever texturas podem pular sem prejudicar a compreensão desta dissertação. ! No Capítulo 3 analisa-se o método k-means de agrupamento de dados. Após uma breve apresentação sobre sistemas classificadores, apresentam-se o algoritmo e a abordagem que busca automatizar o processo de encontrar o número de regiões da imagem.

! O Capítulo 4 contém os detalhes de implementação numérica dos métodos que se utilizam para a solução do problema de segmentação não-supervisionada.

! No Capítulo 5, apresenta-se a metodologia de testes e avaliação dos resultados. Definem-se os padrões de imagens usadas nos testes e enunciam-se as métricas de qualidade, assim como a forma de exibição dos resultados.!

! O Capítulo 6 aborda os resultados experimentais obtidos da aplicação dos algoritmos e da análise dos resultados usando as técnicas definidas na metodologia de testes, apresentando-se comentários sobre os resultados.

! Finalmente, o Capítulo 7 trata da conclusão. Analisa-se o trabalho como um todo e sugere-se direções a seguir em pesquisas futuras.

(21)

Capítulo 2

Formas de Representação de Texturas

Introdução

O primeiro passo para se realizar a segmentação não-supervisionada de imagens baseada em texturas é definir o que é uma textura e como se pode representá-la computacionalmente. Representar corretamente uma textura é uma condição primaz para o sucesso da divisão da imagem em regiões que possuem o mesmo padrão de repetição.

Para isso, deve-se definir o que é uma textura, tanto no sentido que se usa comumente quanto em visão computacional. Somente assim pode-se prosseguir para o estudo dos métodos de obtenção de descritores de textura. Este é o assunto que se aborda neste capítulo.

!

2.1 Textura

! Muitas vezes, texturas apresentam informações que podem ajudar na identificação de objetos na imagem. No entanto, enquanto um pixel descreve uma intensidade, uma textura representa uma distribuição local de intensidades, sendo assim inerentemente um descritor regional.

!

! As definições de textura são as mais variadas. O dicionário Merriam-Webster [9] define textura como:

! “1a) Algo composto de elementos intimamente entrelaçados; especificamente: um pano entrelaçado. b) A estrutura formada pelos fios de um tecido

(22)

! 3 a)A disposição ou maneira de união das partículas de um corpo ou substância b) características e aparências visuais ou tácteis de algo

! 4 a) estrutura o esquema básico. b) Estrutura geral.

! As definições citadas acima demonstram que o conceito geral de textura é bem amplo. Na literatura de visão computacional, adotam-se também várias definições. Jain e Tuceryan [10] reuniram algumas:

! "A textura é uma propriedade inerente a praticamente todas as superfícies: o veio da madeira, a trama de um tecido, o desenho de uma lavoura no campo, etc. Ela contém informações importantes sobre a organização estrutural das superfícies e sua relação com o meio que as cerca.”

! "A região em uma imagem tem uma textura constante se um conjunto de estatísticas localizadas ou outras propriedades exclusivas da função da imagem forem constantes."

! "Podemos considerar textura aquilo que constitui uma região macroscópica. Sua estrutura é atribuída simplesmente a padrões repetitivos em que os elementos ou rudimentos são organizados de acordo com um padrão de posicionamento."

!

! "A noção de textura mostra-se dependente de três componentes: (1) alguma 'ordem' de localização se repete sobre uma região considerada grande, se comparada ao tamanho da ordem; (2) a ordem consiste no arranjo não aleatório de partes elementares; e (3) as partes são entidades irregularmente uniformes que possuem aproximadamente as mesmas dimensões em toda a área da região texturizada."

! Nota-se que, mesmo nos domínios da visão computacional, o conceito de textura não possui uma definição unânime. Mas, para fins práticos, interpreta-se a textura como a repetição de padrões pré-estabelecidos, como rugosidade, granularidade e homogeneidade. Normalmente, os métodos que buscam discriminar texturas tentam

(23)

representar estas características através de uma série de descritores numéricos, que compõem um espaço de atributos que possibilita o agrupamento em regiões com características semelhantes.

! Os métodos para se obter as características que descrevem as texturas separam-se em, basicamente, três abordagens: Espectral, Estrutural ou Estatística [12]:

Abordagem Espectral: Busca caracterizar a textura de sua representação no domínio da freqüência. Pode usar detecção de máximos do espectro, a fase ou filtragens especiais que decomponha o espectro em espaços de interesse.

Abordagem Estatística: Descreve a textura por medidas estatísticas da ocorrência espacial dos níveis de cinza. Essas estatísticas incluem média, entropia, segundo momento angular e homogeneidade, entre outras.

Abordagem Estrutural: Decompõe a textura em repetições de uma primitiva, que pode ser determinística ou estocástica.

! Tendo-se as abordagens acima descritas como orientação, buscaram-se na literatura trabalhos na área de segmentação não-supervisionada de imagens baseada em textura que usam estas abordagens. Discutem-se brevemente as metodologias usadas pelos autores, assim como os resultados obtidos. Foram também analisados trabalhos em que se usam outras técnicas e combinações de várias técnicas. Destacam-se os comentários do autor desta dissertação no texto pela fonte em negrito. No final, compila-se uma tabela com os autores e os métodos escolhidos.

2.2 Abordagem Espectral

Os métodos espectrais analisam a imagem no domínio da freqüência, que é o resultado de se calcular por exemplo, Transformada de Fourier da imagem. Desta

(24)

forma, se interpreta a textura como sendo descrita pela soma de um conjunto específico de senóides.

! Neste trabalho, utiliza-se a decomposição por filtros de Gabor, uma técnica especial de análise espectral, para descrever a textura, pela sua eficiência e seu embasamento em estudos psiconeurológicos.

2.2.1 Decomposição por filtros de Gabor

! A decomposição por filtros de Gabor é uma técnica muito popular na literatura, com uma grande quantidade de referências que utiliza os bancos de filtros de Gabor para decompor a imagem em canais e, assim, compor o descritor de textura.

! Jain e Farrokhnia [12] utilizam o filtro real de Gabor, que é uma cossenóide modulada por uma função gaussiana. Neste tipo de filtro, os parâmetros que determinam o deslocamento equivalente no espectro são a freqüência do cosseno e um ângulo θ que orienta uma rotação rígida das coordenadas x e y, de acordo com as equações: (2.1) ! (2.2)

! Segundo os autores, este tipo de filtro simula bem o padrão de resposta das células do córtex estriado, responsáveis pela identificação de padrões visuais pelo cérebro humano. Na escolha dos parâmetros, os autores recorrem a dados psicofísicos. No parâmetro de deslocamento no espectro μ0 , definem-se valores de espaçamento de

!"#$%&'()!$&*$)+$*(,)-(,,$&.(%!$%!()/).,(.,"$!/!$)$0*,/1!/)$#)2#)!$*$,#"%/%!()-/%/34 5/"% ) $ ) 6/,,(78%"/9::; ) ) 2*"3"</,/# ) ( ) ="3*,( ) ,$/3 ) !$ ) >/?(,@ ) A2$ ) B ) 2#/ ) &$%C"!$) #(!23/!/ ) .(, ) 2#/ ) D/2&&"/%/4 ) E$&*$ ) *".( ) !$ ) ="3*,(@ ) (& ) ./,F#$*,(& ) A2$ ) !$*$,#"%/# ) () !$&3(-/#$%*()$A2"+/3$%*$)%()$&.$-*,()&'()/)=,$AGH%-"/)!()-(&&$%()$)2#)F%D23() ! A2$) (,"$%*/)2#/),(*/I'(),1D"!/)!/&)-((,!$%/!/&)0)$)J@)!$)/-(,!()-(#)/&)$A2/IK$&L ))))))))))))))))))))))))))))))))))))))))) !"" # $#$!"#"$%%%"&'#& ()& $ " "$ *" $& $$ *$ $#+ ))))))))))))))))))))))))))))MA4): ) ))))))))) ! ""' # $' #$!"

,

!"#! )(&) ! (&)! !"#!

-,

" $

-

# ))))))))))))))))))))))))))))))MA4)N

O$D2%!( ) (& ) /2*(,$&@ ) $&*$ ) *".( ) !$ ) ="3*,( ) &"#23/ ) ?$# ) ( ) ./!,'( ) !$ ) ,$&.(&*/ ) !/&) -B323/& ) !( ) -C,*$0 ) $&*,"/!(@ ) ,$&.(%&P+$"& ) .$3/ ) "!$%*"="-/I'( ) !$ ) ./!,K$& ) +"&2/"& ) .$3() -B,$?,()82#/%(4)Q$,-$?$R&$)$%*'()A2$)/)"%&.",/I'()./,/)()$#.,$D()!(&)="3*,(&)!$)>/?(,) ./,/ ) &$D#$%*/I'( ) !$ ) *$0*2,/& ) +$"( ) !",$*/#$%*$ ) !$ ) !$&-(?$,*/& ) %( ) -/#.( ) !/) %$2,(-"H%-"/@)()A2$).(!$)3$+/,)/)-(%-32",)A2$)&$)*,/*/)!$)2#)/3D(,"*#()?"(R"%&.",/!(@)(2) &$S/@)/),$&.(&*/)C*"#/)%2%-/)B)D/,/%*"!/@)#/&).(!$R&$)(?*$,)2#/),$&.(&*/)#2"*/)?(/9:T;4

E/ ) $&-(38/ ) !(& ) ./,F#$*,(&@ ) (& ) /2*(,$& ) %(+/#$%*$ ) ,$-(,,$,/# ) / ) !/!(&) .&"-(=1&"-(&4)E()./,F#$*,()!$)!$&3(-/#$%*()%()$&.$-*,( %% @)=(,/#)!$="%"!(&)+/3(,$&)!$)

$&./I/#$%*()!$)2#/)("*/+/@)()A2$)$&*P)!$)/-(,!()-(#)/),$&.(&*/)!/&)-B323/&)!()-C,*$0) $&*,"/!(4)5P)%()./,F#$*,( ! @)2#/)&"#.3"="-/I'()*$+$)A2$)&$,),$/3"</!/@).("&)/&)-B323/&) !()-C,*$0) )-(%&$D2$#)2#)$&./38/#$%*()/%D23/,)!$)UV4)O$)=(&&$)*$%*/,),$.,(!2<",)$&*$) -(#.(,*/#$%*(@)()%W#$,()!$)="3*,(&)./,/)-/!/)!$&3(-/#$%*(),/!"/3)&$,"/)!$)XN@)()A2$)B) .,("?"*"+( ) -(#.2*/-"(%/3#$%*$4 ) Y ) .(&&1+$3 ) A2$ ) $&*/ ) &"#.3"="-/I'( ) 3$+$ ) / ) 2# ) $,,( ) !$) &$D#$%*/I'()#/"&)$3$+/!(@)#/&)-(#()/)/?(,!/D$#)SP)*$#)2#)$,,()"#.31-"*()$#)&2/) "%&.",/I'()?"(3CD"-/@)2#/)-$,*/)A2/%*"!/!$)!$)$,,(&)B)$&.$,/!/)$)*(3$,/!/4

Z& ) ?/%!/& ) !$ ) ./&&/D$# ) !(& ) ="3*,(& ) */#?B# ) =(,/# ) $&-(38"!/& ) 2&/%!( ) -,"*B,"(&) ?"(3CD"-(&4)Z)?/%!/)!$)./&&/D$#)!(?,/)/)-/!/)!$&3(-/#$%*(),/!"/3@)(2)&$S/@)*$#)2#) =/*(,)!$)$&-/3/)!$)2#/)("*/+/4

[$&#()-(#)/&)&"#.3"="-/IK$&@)()%W#$,()!$)-/%/"&)-,"/!(&).$3(&)="3*,(&).(!$)&$,) #2"*( ) D,/%!$4 ) ZD,2./, ) !/!(& ) !$ ) !"#$%&"(%/3"!/!$ ) #2"*( ) /3*/ ) .(!$ ) &$, ) 2# ) D,/%!$) .,(?3$#/@)!$D,/!/%!()()!$&$#.$%8()!()/3D(,"*#(4))\(D(@)(&)/2*(,$&).,(.K$#)2#)#(!()

'

!"#$%&'()!$&*$)+$*(,)-(,,$&.(%!$%!()/).,(.,"$!/!$)$0*,/1!/)$#)2#)!$*$,#"%/%!()-/%/34

5/"% ) $ ) 6/,,(78%"/9::; ) ) 2*"3"</,/# ) ( ) ="3*,( ) ,$/3 ) !$ ) >/?(,@ ) A2$ ) B ) 2#/ ) &$%C"!$)

#(!23/!/ ) .(, ) 2#/ ) D/2&&"/%/4 ) E$&*$ ) *".( ) !$ ) ="3*,(@ ) (& ) ./,F#$*,(& ) A2$ ) !$*$,#"%/# ) ()

!$&3(-/#$%*()$A2"+/3$%*$)%()$&.$-*,()&'()/)=,$AGH%-"/)!()-(&&$%()$)2#)F%D23()

! A2$)

(,"$%*/)2#/),(*/I'(),1D"!/)!/&)-((,!$%/!/&)0)$)J@)!$)/-(,!()-(#)/&)$A2/IK$&L

))))))))))))))))))))))))))))))))))))))))) !"" # $#$!"#"$%%

%

"

&'#&

()$&""$ *" $& $$ *$ $#+

))))))))))))))))))))))))))))MA4):

)

))))))))) ! ""' # $' #$!"

,

!"#

! )(&) !

(&)

!

!"#

!

-,

"

$

-

# ))))))))))))))))))))))))))))))MA4)N

O$D2%!( ) (& ) /2*(,$&@ ) $&*$ ) *".( ) !$ ) ="3*,( ) &"#23/ ) ?$# ) ( ) ./!,'( ) !$ ) ,$&.(&*/ ) !/&)

-B323/& ) !( ) -C,*$0 ) $&*,"/!(@ ) ,$&.(%&P+$"& ) .$3/ ) "!$%*"="-/I'( ) !$ ) ./!,K$& ) +"&2/"& ) .$3()

-B,$?,()82#/%(4)Q$,-$?$R&$)$%*'()A2$)/)"%&.",/I'()./,/)()$#.,$D()!(&)="3*,(&)!$)>/?(,)

./,/ ) &$D#$%*/I'( ) !$ ) *$0*2,/& ) +$"( ) !",$*/#$%*$ ) !$ ) !$&-(?$,*/& ) %( ) -/#.( ) !/)

%$2,(-"H%-"/@)()A2$).(!$)3$+/,)/)-(%-32",)A2$)&$)*,/*/)!$)2#)/3D(,"*#()?"(R"%&.",/!(@)(2)

&$S/@)/),$&.(&*/)C*"#/)%2%-/)B)D/,/%*"!/@)#/&).(!$R&$)(?*$,)2#/),$&.(&*/)#2"*/)?(/9:T;4

E/ ) $&-(38/ ) !(& ) ./,F#$*,(&@ ) (& ) /2*(,$& ) %(+/#$%*$ ) ,$-(,,$,/# ) / ) !/!(&)

.&"-(=1&"-(&4)E()./,F#$*,()!$)!$&3(-/#$%*()%()$&.$-*,( %

%

@)=(,/#)!$="%"!(&)+/3(,$&)!$)

$&./I/#$%*()!$)2#/)("*/+/@)()A2$)$&*P)!$)/-(,!()-(#)/),$&.(&*/)!/&)-B323/&)!()-C,*$0)

$&*,"/!(4)5P)%()./,F#$*,(

! @)2#/)&"#.3"="-/I'()*$+$)A2$)&$,),$/3"</!/@).("&)/&)-B323/&)

!()-C,*$0) )-(%&$D2$#)2#)$&./38/#$%*()/%D23/,)!$)UV4)O$)=(&&$)*$%*/,),$.,(!2<",)$&*$)

-(#.(,*/#$%*(@)()%W#$,()!$)="3*,(&)./,/)-/!/)!$&3(-/#$%*(),/!"/3)&$,"/)!$)XN@)()A2$)B)

.,("?"*"+( ) -(#.2*/-"(%/3#$%*$4 ) Y ) .(&&1+$3 ) A2$ ) $&*/ ) &"#.3"="-/I'( ) 3$+$ ) / ) 2# ) $,,( ) !$)

&$D#$%*/I'()#/"&)$3$+/!(@)#/&)-(#()/)/?(,!/D$#)SP)*$#)2#)$,,()"#.31-"*()$#)&2/)

"%&.",/I'()?"(3CD"-/@)2#/)-$,*/)A2/%*"!/!$)!$)$,,(&)B)$&.$,/!/)$)*(3$,/!/4

Z& ) ?/%!/& ) !$ ) ./&&/D$# ) !(& ) ="3*,(& ) */#?B# ) =(,/# ) $&-(38"!/& ) 2&/%!( ) -,"*B,"(&)

?"(3CD"-(&4)Z)?/%!/)!$)./&&/D$#)!(?,/)/)-/!/)!$&3(-/#$%*(),/!"/3@)(2)&$S/@)*$#)2#)

=/*(,)!$)$&-/3/)!$)2#/)("*/+/4

[$&#()-(#)/&)&"#.3"="-/IK$&@)()%W#$,()!$)-/%/"&)-,"/!(&).$3(&)="3*,(&).(!$)&$,)

#2"*( ) D,/%!$4 ) ZD,2./, ) !/!(& ) !$ ) !"#$%&"(%/3"!/!$ ) #2"*( ) /3*/ ) .(!$ ) &$, ) 2# ) D,/%!$)

.,(?3$#/@)!$D,/!/%!()()!$&$#.$%8()!()/3D(,"*#(4))\(D(@)(&)/2*(,$&).,(.K$#)2#)#(!()

(25)

uma oitava, o que está de acordo com a resposta das células do córtex estriado. Já no parâmetro θ, realiza-se uma simplificação, pois as células do córtex conseguem um espalhamento angular de 5º. Se fosse tentar reproduzir este comportamento, o número de filtros para cada deslocamento radial seria de 72, o que é proibitivo computacionalmente. Os autores afirmam que é possível que esta simplificação leve a um erro de segmentação mais elevado, mas como a abordagem já tem um erro implícito em sua inspiração biológica, espera-se e tolera-se uma certa quantidade de erros. Escolhem-se as regiões de maior resposta do filtro, as bandas de passagem dos filtros, por critérios biológicos. A banda de passagem dobra a cada deslocamento radial, ou seja, tem um fator de escala de uma oitava. Para solucionar o problema da alta dimensionalidade do espaço de atributos gerado, os autores propõem um modo de seleção dos canais que mais contribuem para a reconstrução da imagem, eliminando os canais que pouco influem e, por conseqüência, possuem pouca informação sobre as texturas. Em seguida, submetem cada imagem filtrada a uma transformação não-linear. Esta escolha se deve novamente a conhecimento psicofísico da percepção de texturas, pois a função escolhida assemelha-se a função de ativação sigmoidal usadas em redes neurais. Ao final do processo, representa-se cada pixel por um vetor no espaço de atributos. Para agrupá-los em regiões, os autores usaram um algoritmo chamado CLUSTER [13].

! A abordagem só foi aplicada em imagens sintéticas, compostas por retalhos de texturas reais do álbum de Brodatz [14].

! Os resultados de segmentação obtidos pelos autores foram bons, com

erros de classificação nas fronteiras, o que é considerado aceitável.

! Teuner, Pichler e Hosticka [15] também utilizam o filtro de Gabor, mas em sua versão complexa e diádica.

h(x, y)

= h

e

(x, y)

+ jh

o

(x, y)

= g(x, y)(cos(2π f

0

x)

+ jsen(2π f

0

x)

(2.3)

(26)

g(x, y)

=

1

σ

2

e

( −x2 λ2+ y 2 πσ2 ) (2.4) !

e a rotação é dada também pela Equação 2.1.

! Estes autores sugerem um procedimento para minimizar o número de filtros necessários para a segmentação da imagem, baseando-se em um procedimento inspirado no modo como os seres humanos concentram a atenção visual. Ao buscar freqüências de pico no espectro global, o que se obtêm são as componentes que mais estão presentes em toda a imagem, pouco contribuindo para a distinção das diferentes texturas. Logo, assim como os seres humanos buscam identificar o que se destaca do padrão, a proposta dos autores é de dividir a imagem em 2k+1 partições e aplicar a

decomposição por filtros de Gabor nas partições. Em seguida, subdivide-se cada partição e decompõe-se novamente pelo método de Gabor. Se um nível inferior desta pirâmide de partições apresentar uma resposta maior ao nível superior, então há algum objeto “fora do comum” na região, que pode ser uma região com uma textura distinta. Por isso, subdivide-se novamente a região até que a reposta do filtro pare de crescer. Repete-se todo o procedimento para cada variação de parâmetros do filtro de Gabor. Os n filtros que tem resposta máxima são escolhidos como “filtro ótimos” e usam-se estes para a segmentação, que se faz por uma simples limiarização da energia da decomposição da imagem em cada “filtro ótimo”, que se obtém com a convolução do filtro com a imagem original e, em seguida, a elevação ao quadrado do valor obtido na convolução. Como ajustam-se os filtros para responder a uma textura bem localizada, espera-se que ao se fazer esta limiarização somente se destaquem as texturas significativas.!

! A combinação de buscas locais e espectrais deste método reflete bem o

modo como os seres humanos percebem os objetos e as texturas, mas todo este passo de subdivisão espacial pode levar a uma elevação do custo computacional. A abordagem é considerada não-supervisionada porque não se conhece o

(27)

número de texturas na imagem. No entanto, ainda há dependência de um parâmetro de qualidade, que é o limiar de energia que se usa para definir o que é uma textura significativa.

! Com a mesma abordagem de decomposição por filtros de Gabor, Hofmann, Puzicha e Buhmann [16] apresentam um método de segmentação de texturas, mas de menor inspiração biológica e de cunho mais matemático, análogo ao que se adota em [12] mas, na fase de segmentação usa-se uma técnica totalmente diversa. Divide-se a imagem em blocos (patches) de tamanhos definidos a priori, e a cada bloco associa-se vetor de atributos que é a média do vetor de atributos de cada pixel. Com este vetor de atributos por blocos, fazem-se medidas de disparidade entre blocos através de uma função de custo sugerida pelos autores. Para evitar que se façam comparações entre todos os blocos, o que aumentaria a complexidade do algoritmo, os autores usam uma amostragem de Monte Carlo em uma vizinhança restrita, buscando se aproximar ao resultado real. O algoritmo pára quando a dissimilaridade entre os blocos atribuídos a um mesmo grupo fica menor que um limiar, definido empiricamente.

! Os resultados sofrem do problema de qualquer abordagem que use divisão

por blocos, que é a alta granularidade e fronteiras mais grosseiras. Mas, dentro das regiões, a segmentação teve qualidade considerável. Provavelmente, uma escolha mais adequada dos filtros proporcionasse uma resposta mais precisa. Novamente, se nota a presença de um parâmetro de limiarização.

! Mital [4], em seu trabalho, utiliza a mesma escolha de filtros que [12], mas difere no modo como se agrupam os pixels para identificar uma região de textura, preferindo o procedimento fuzzy-c-means para agrupar os vetores de propriedades correspondentes aos pixels. No entanto, o autor argumenta que se o algoritmo fuzzy-c-means for usado em sua totalidade, o custo computacional é muito alto, sugerindo então que se use o fuzzy-c-means somente para identificar os c centros de clusters no espaço de atributos e, para agrupar os pixels das texturas, um classificador de distância quadrática mínima, devido a maior eficiência deste classificador. O classificador de distância mínima é facilmente paralelizável, logo pode ser executado em um sistema distribuído sem maiores complicações.

(28)

! Para este autor, o parâmetro livre na fase de segmentação é o número de regiões c que se desejam identificar. Mesmo assim, a abordagem por ele adotada é considerada não-supervisionada, pois nenhum conhecimento a priori sobre as texturas é assumido. Esta interpretação é contrária a adotada neste trabalho de dissertação.

! Também usando a decomposição por filtros de Gabor, Li e Staunton [5] apresentam uma técnica que mistura decomposição por canais, agrupamento nebuloso e um algoritmo imunológico genético. A escolha do tipo de filtro de Gabor pelos autores é semelhante a presente em [12], mas não se escolhem a priori os parâmetros dos filtros e sim evolui-se através de um algoritmo de otimização.

! Primeiramente, submete-se a imagem a uma coleção inicial de filtros com parâmetros iniciais. Com esta primeira decomposição, realiza-se uma partição usando um fuzzy-c-means e, baseado em uma função de fitness e na quantidade de filtros que respondem melhor a este fitness, evoluem-se os parâmetros dos filtros obedecendo as operações da genética, como mutação, crossing-over e seleção por pressão evolutiva. ! Repete-se todo o procedimento de filtrar, segmentar e evoluir os parâmetros um número arbitrário de iterações, definido pelo usuário.

! Nota-se que a chave da funcionalidade deste algoritmo é a simulação da

aleatoriedade dos processos biológicos no modo de evolução dos parâmetros. Espera-se que esta aleatoriedade proporcione uma boa exploração do espaço de parâmetros e também proporcione que se fuja dos máximos locais.

! Os resultados apresentados pelos autores são satisfatórios, ainda que

estejam longe do ideal. Um dos motivos deve ser a dificuldade de se especificar qual o número de iterações necessárias para um segmentação ótima, se é que se pode alcançar este número de iterações.

! Zhang, Tan e Ma [3] também baseiam seu método em uma decomposição por filtros de Gabor, mas com uma escolha de filtros totalmente diversa de [11] e [12]. Com o objetivo de classificar igualmente texturas e suas versões rotacionadas, os autores definem um novo tipo de filtro de Gabor diferente das abordagens tradicionais, onde o filtro é uma gaussiana que se localiza em algum ponto (u0, v0) do espectro. Deste modo,

(29)

discriminam-se independentemente por causa da localização das freqüências características. Em algumas aplicações, deseja-se este tipo de comportamento, em outras, desejam-se simplesmente identificar padrões iguais, estejam rotacionados ou não. Com este objetivo, Zhang, Tan e Ma modificam o filtro de Gabor para que seja uma gaussiana deslocada no eixo u do espectro e depois rotacionada em relação ao eixo F(u,v). Esta escolha de filtro faz com que a decomposição da imagem se dê por bandas anelares de espectro, com alguns efeitos interessantes. O primeiro é a detecção de texturas e suas versões rotacionadas como sendo a mesma textura, pois sob rotação rígida no espaço, o espectro roda igualmente. Como a banda anelar do filtro cobre todas as rotações possíveis dentro de um raio do espectro, não faz-se distinção entre textura rodada ou normal. O segundo efeito, e este com grande impacto na eficiência, é que se diminui o número de parâmetros e, conseqüentemente, o número de filtros. Como o filtro já cobre toda uma banda anelar do espectro, somente o deslocamento radial e as variâncias das gaussianas são necessárias.

! Para a escolha dos deslocamentos radiais, os autores também fogem das escolhas usuais encontradas em [11] e [12]. Ao invés de uma distribuição exponencial, com crescimento em oitavas, eles preferem um esquema de busca bi-logarítmica, onde explora-se mais o centro do espectro. Para agrupar os pixels, os autores permitem a liberdade de escolha do usuário, mas utilizam o k-means para apresentar os resultados.

! As partições obtidas foram muito boas e a eficiência do algoritmo é boa,

sendo este algoritmo muito promissor. Ao usar o algoritmo k-means para agrupar em regiões, o método citado fica dependente do parâmetro k, que define o número de texturas que se desejam identificar na imagem. Mesmo que ainda possa ser considerado um método não-supervisionado, a dependência de um parâmetro externo ainda é presente, fazendo que o método não seja plenamente automático.

(30)

2.2.2 Filtros Bi-dimensionais de Gabor

!

O Filtro de Gabor foi concebido em 1946 por Denis Gabor [17], para decompor sinais sonoros em “átomos” e possibilitar que se transmitam somente coeficientes que multiplicam estes átomos.

! O filtro de Gabor, de acordo com Jain e Farrokhnia [12], compõe-se por uma função h(xʼ,yʼ), que consiste no produto de uma gaussiana de aberturas σx e σy por

uma função cosseno de freqüência µ0 e fase φ, com subseqüente transformação de

rotação em θ graus, que se expressa pela Equação 2.1 :

! Segundo Jain e Farrokhnia [12], pode-se decompor uma imagem, de forma a se criar um espaço aumentado I(x,y,θ,µ0,φ,σx,σy), resultado de se filtrar a imagem original

com um filtro de Gabor de abertura σx na direção x, σy na direção y, multiplicado por

um coseno de freqüência angular µ0 e fase φ, possuindo uma rotação de θ graus. Este

novo espaço aumentado tem sete graus de liberdade. A Figura 2.1 exemplifica o espaço aumentado, compactando-se eixos de µ0,φ,σx,σy e evidenciando θ e as coordenadas x

e y da imagem.

Figura 2.1 - Representação do espaço aumentado obtido de submeter um imagem a decomposição por filtros de Gabor.

(31)

! ! !

! Como se descreveu anteriormente, usar diretamente o filtro de Gabor como especificado por Jain e Farrokhnia [12] leva ao problema da quantidade de dimensões para descrever o filtro. Calcular a decomposição da imagem nas sete dimensões definidas pode levar a uma explosão combinatória quando se for realizar o processamento. Zhang, Tan e Ma [3], apresentam uma outra versão do filtro de Gabor. A motivação por trás desta outra versão do filtro é adquirir invariância a rotação do espectro. Os parâmetros deste filtro são somente ƒ e σ. Ao se aplicar um banco de filtros variando os parâmetros, obtém-se um espaço aumentado I(x,y,ƒ,σ) , com quatro graus de liberdade. Assim, consegue-se diminuir em três graus de liberdade o espaço aumentado. Matematicamente, descreve-se o filtro por uma função h(x,y) , dada por:

(2.5)

! Na escolha de filtros de Zhang, Tan e Ma [3], interpreta-se o parâmetro ƒ como o centro da banda radial de freqüências que se quer isolar no espectro [3] e σ como a abertura da função gaussiana . A Figura 2.2 ilustra esta interpretação de filtro através do seu espectro.

!"#$%&'()*'($+,-$(&'('&#.(/0'&"($(#01&(/$023'#0"&4(5"3(#$,#"&(60$*&(-'(7+8'0-$-'9(

: ( ,';'&&.0+" ( <.0+"& ( =+7#0"& ( /$0$ ( &' ( ;"80+0 ( " ( '&/';#0" ( ;"3 ( *3 ( ,><'7 ( -' ( 0'&"7*?@"(

$/0"/0+$-"4(A&&+39(#',#$,-"(0'&"7<'0('&#'(/0"87'3$9(BC$,69(D$,('(E$FGH(/0"/*&'0$3(*3(

=+7#0"()*'(&I(#"3$(;"3"(/$023'#0"&(*3(0$+"(;',#0$7(!('($(<$0+2,;+$(&+63$4(

J+6*0$(KLM(EI-*7"(-"(=+7#0"(;+0;*7$0(-'(N$8"0(,"('&/$?" J+6*0$(KOM(J+7#0"(;+0;*7$0(-'(N$8"0(,"('&/';#0"

P&#'(=+7#0"(:(;C$3$-"(-'(=+7#0"(;+0;*7$0(-'(N$8"09('(:(-'&;0+#"(/'7$(')*$?@"M

!

!" # $ "#

!

$

"

%&

%

'""( $" &"

%

"%& ! !$! "" ( $" ""

(P)4QR

S3$(/0"/0+'-$-'(+,#'0'&&$,#'(-'&#$('&;"7C$(-'(=+7#0"(:($(+,<$0+2,;+$($(0"#$?@"4(

h

(32)

!"#$%&'()*'($+,-$(&'('&#.(/0'&"($(#01&(/$023'#0"&4(5"3(#$,#"&(60$*&(-'(7+8'0-$-'9( : ( ,';'&&.0+" ( <.0+"& ( =+7#0"& ( /$0$ ( &' ( ;"80+0 ( " ( '&/';#0" ( ;"3 ( *3 ( ,><'7 ( -' ( 0'&"7*?@"( $/0"/0+$-"4(A&&+39(#',#$,-"(0'&"7<'0('&#'(/0"87'3$9(BC$,69(D$,('(E$FGH(/0"/*&'0$3(*3( =+7#0"()*'(&I(#"3$(;"3"(/$023'#0"&(*3(0$+"(;',#0$7(!('($(<$0+2,;+$(&+63$4( J+6*0$(KLM(EI-*7"(-"(=+7#0"(;+0;*7$0(-'(N$8"0(,"('&/$?" J+6*0$(KOM(J+7#0"(;+0;*7$0(-'(N$8"0(,"('&/';#0" P&#'(=+7#0"(:(;C$3$-"(-'(=+7#0"(;+0;*7$0(-'(N$8"09('(:(-'&;0+#"(/'7$(')*$?@"M !!" # $ "# !

$

"%&% '""( $" &" %"%& ! !$! "" ( $" ""(P)4QR S3$(/0"/0+'-$-'(+,#'0'&&$,#'(-'&#$('&;"7C$(-'(=+7#0"(:($(+,<$0+2,;+$($(0"#$?@"4(

Figura 2.2 - Representação Gráfica do espectro de um Filtro de Gabor como definido em Zhang, Tan e Ma [3]

! Mesmo com esta escolha para os filtros de Gabor, ainda se tem dois parâmetros livres, !ƒ e σ. Para resolver este problema, Zhang, Tan e Ma [3], inspirados em trabalhos

anteriores [4], usam informações neurofisiológicas para relacionar ƒ e σ, diminuindo ainda mais o grau de liberdade do espaço aumentado, que compõe o espaço de atributos e servirem para descrever as texturas. Em [4], mostra-se que as células do córtex visual possuem comportamento semelhante a se decompor a imagem por filtros de Gabor, com aberturas σ específicas para cada faixa ƒ. Experimentalmente, determinaram que a abertura σ do filtro é inversamente proporcional a faixa do espectro ƒ e que as células também são sensíveis a um número de oitavas B. Ao calcular a constante de proporcionalidade, chegaram a:

(2.6)

! Agora, o espaço aumentado, que compõe o espaço de atributos, conta somente com três graus de liberdade, podendo interpretá-lo como uma realização de R3 , como

mostra a Figura 2.3.

!"#"$%&%$'"()%$*"+,$-#,$.,/0,$),+/,&$ $+"$%12%'*)"3$4%)15%1$)"*,'/"6,+,1$+%$-#,$'%)*,$

)%12"1*,$+"$%12%'*)"$17"$+%*%'*,+,1$6"$#%1#"$./&*)"8$9%1*,$.")#,3$:;$,&<-#,$2%)+,$+%$

/6.")#,=7"$>-,6+"$1%$+%1%?,$+/1')/#/6,)$4%)15%1$)"+,+,1$+%$-#,$#%1#,$*%0*-),8

@11-#/6+"$"$'"#2)"#/11"$+%$-#,$2%>-%6,$2%)+,$6,$+/1')/#/6,=7"$%#$*)"',$+%$

-#,$1/#2&/./',=7"$+"$%12,="$+%$2,)A#%*)"13$2,11,B1%$2,),$,$.,1%$+,$%1'"&:,$+"1$4,&")%1$

+%$!"%$1/<#,8

C"+%)/,B1%$2)"2")$-#,$+/1*)/(-/=7"$:"#"<D6%,$6"$%12%'*)"3$'"#$4;)/,1$%1'"&:,1$

+%$4,)/A6'/,18$E11"$',-1,)/,$-#,$%02&"17"$'"#(/6,*F)/,$+%$2,)A#%*)"18

G%$."11%$2"11H4%&$-1,)$,&<-#,$/6.")#,=7"$>-%$+/#/6-H11%$"$%12,="$+%$2,)A#%*)"13$

" $ 2)"(&%#, $ 1%)/, $ #-/*" $ #,/1 $ *),*;4%&8 $ @11/#3 $ ,6,&/1,) $ '"#" $ 6F13 $ 1%)%1 $ :-#,6"13$

'"#2)%%6+%#"1$,1$*%0*-),1$2"+%$1%)$#-/*"$4,&/"1"$2,),$1"&-'/"6,)$%1*%$/#2,11%8

C%1>-/1,1$6%-)"./1/"&F</',1IJK$."),#$.%/*,13$(-1',6+"$+%*%)#/6,)$'"#"$,1$'L&-&,1$

+" $ 'F)*%0 $ 4/1-,& $ )%12"6+%# $ ," $ %1*H#-&"$ 4/1-,&8 $ M $ "(?%*/4" $ %), $ +%1'"()/) $ '"#" $ %), $ ,$

)%12"1*,$+"$'L)%()"$,$$%1*H#-&"1$%#$+/.%)%6*%1$.,/0,1$+"$%12%'*)"8$

9%1'"()/-B1% $ >-% $ ,1 $ 'L&-&,1 $ )%,<%# $ %# $ (,6+,1 $ %12%'H./',1 $ +% $ .)%>-D6'/,3$

"(%+%'%6+"$,$)%&,=7"N

!

!"

#

! "# !

!

$

%!

"

&$'

%!

"

($'

$O>8JP

"6+%$#"L$,$(,6+,$+%$2,11,<%#$+"$./&*)"3$%#$"/*,4,18$@"$1%$%1'"&:%)$-#,$"/*,4,$+%$

(,6+, $ +% $ 2,11,<%#3 $ , $ #,/") $ .)%>-D6'/, $ >-% $ 2,11, $ 2%&" $ ./&*)" $ L $ " $ +"()" $ +, $ #%6")$

.)%>-D6'/,8$C,),$%.%/*"1$2);*/'"13$-#,$"/*,4,$L$1-./'/%6*%$2,),$-#,$(",$+/1')/#/6,=7"$+%$

',),'*%)H1*/',18

@<"),3$*%#B1%$-#,$$%>-,=7"$>-%$)%&,'/"6,$!"%$1/<#,8$

!"%

#

! "# !

!

$ !

$O>8$JJ

Q),+/'/"6,&#%6*%3$"$2,)A#%*)"$"!"$,11-#%$4,&")%1$6,$.")#,N

!

"

#

!

)$& !&'&(&$)&**** $O>8JR

(33)

Figura 2.3 - Representação do espaço aumentado obtido da filtragem de imagem por filtros de Gabor descritos em Zhang, Tan e Ma[3]

! Para ilustrar o procedimento, seguem-se os passos descritos em Zhang, Tan e Ma [3] e apresenta-se aqui o procedimento que se adota. Primeiro, toma-se uma imagem, mostrada na Figura 2.4. Neste caso, para simplificar a visualização do espectro, escolhe-se uma imagem criada ao se aplicar uma função senoidal conhecida como “telha” na direção x e expandida na direção y. Em seguida, tomam-se três valores de ƒ para exemplificar:

ƒ1 = 20 (2.7)

ƒ2 = 60 (2.8)

ƒ3 = 90 (2.9)

!

! Aplicando a Equação 2.6, fixando o parâmetro B em 1, como recomendado em Zhang, Tan e Ma [3], obtêm-se:

σ1 = 110,9 (2.10)

σ2 = 332,9 (2.11)

(34)

a) b)

Figura 2.4 - a) Imagem senoidal do tipo “telha” b)espectro da imagem a)

! Com estas escolhas de parâmetros, criam-se três filtros de Gabor. Ao se convoluir cada filtro com a imagem, obtêm-se as três imagens apresentadas na Figura 2.5. Como o resultado da convolução apresenta números negativos, escolhe-se uma escala de tons de cinza que possa representar os números negativos.

(35)

a) b)

c)

Figura 2.5 - Resultado da decomposição por filtros de Gabor da imagem da Figura 2.4a para: a)ƒ1, b)ƒ2,

c)ƒ3.

! Observando os resultados que se obtevem na Figura 2.5, vê-se que houve maior resposta ao filtro do canal 2 que aos outros. Então, este canal descreve melhor esta classe de textura(no caso,a “telha”) que os outros.

! Usa-se este método, descrito por Zhang, Tan e Ma [3], como um dos métodos de extração de atributos de textura deste trabalho, por representar uma abordagem espectral e pela simplicidade de se especificar os parâmetros, simplificando o projeto.

(36)

2.3 Abordagem Estatística

!

Nos métodos estatísticos, busca-se caracterizar a textura através da distribuição dos níveis de cinza no espaço de imagem. A partir desta distribuição determina-se um conjunto de características estatísticas regionais, que servem de descritores para as texturas.

! Os métodos estatísticos fazem, em sua maioria, uso de uma estrutura chamada matriz de co-ocorrência. Neste trabalho, usa-se o método SGLDM (Método da Dependência Espacial dos Níveis de Cinza). Neste método, analisa-se o valor de intensidade de um pixel e sua relação com outros pixels em um dado deslocamento espacial. Pode-se alterar este deslocamento quando se deseja alterar os parâmetros da análise, como a direção ou o detalhamento [18]. É a aplicação que determina a escolha do deslocamento espacial a ser usada na análise. Os métodos usando matriz de co-ocorrência tem muito bom desempenho na classificação de texturas [19], mas para segmentação de imagens por textura, o desempenho depende muito da escolha adequada dos parâmetros [20].

2.3.1 Matrizes de Co-ocorrência de Níveis de Cinza

! Um dos primeiros métodos criados para caracterização de texturas foi o de estatísticas sobre a matriz de co-ocorrência.

! Haralick, Shanmungan e Dinstein [21], em seu trabalho pioneiro, estabelecem as fundações para os métodos usando matriz de co-ocorrência, servindo de base para outros pesquisadores expandirem o método e abrindo todo um campo de análise de imagens baseada em textura.

(37)

! Os autores definem a matriz de co-ocorrência como uma matriz n x n, com n sendo o número de níveis de cinza da imagem. Cada célula da matriz contém o número de ocorrências de um nível de cinza i na proximidade de um nível de cinza j na imagem. Define-se a proximidade por um deslocamento (a,b), com (x + a,y + b) sendo o pixel “vizinho” ao pixel (x,y), por este critério.

! Com vários deslocamentos, é possível criar várias matrizes e, com elas, caracterizar texturas através de métricas a respeito do padrão de ocorrência dos níveis de cinza no espaço. Fazem-se medidas como entropia, contraste e energia que servem como atributos de textura.

! Apesar dos autores não usarem originalmente o método para segmentação de imagens, e sim para classificação de texturas, percebe-se que pode-se expandir este método para contemplar a segmentação não-supervisionada de imagens por textura.

! Notando o potencial do método, Visa [22] aplica as medidas sobre matriz de co-ocorrência para segmentar imagens de texturas, usando como método de agrupamento um mapa auto-organizável. Mapas auto-organizáveis são estruturas topológicas em que se espere que protótipos de classificação converjam para posições estáveis através da interação com as amostras que se deseja classificar e também da interação com os outros protótipos.

! O autor atribui protótipos em posições aleatórias no espaço de atributos, de acordo com o número de texturas que se deseja segmentar, sugerindo em seu artigo 25 protótipos, que depois de um tempo poderão se fundir, caso se aproximem demais. Em seguida, amostra aleatoriamente a imagem com uma janela deslocante e obtém as medidas através de matriz de co-ocorrência. Com estas medidas, cria vetores de propriedades e treina o mapa auto-organizável.

! Depois de treinado o mapa, passa-se uma janela deslizante por toda a imagem. Em cada janela, pelo processamento da matriz de co-ocorrência obtêm-se os atributos, que submetem-se então a avaliação pelo mapa auto-organizado e classifica-se o bloco definido pela janela atual como pertencente a classe do protótipo que melhor responder

(através de um classificador de distância mínima, por exemplo. O autor não deixa claro o método que usa).

(38)

! Os resultados são satisfatórios, mas não é possível ver com clareza as partições, pois as imagens presentes no artigo estão muito degradadas. O método final de segmentação da imagem não ficou claro no artigo, deixando margem para a aplicação de qualquer método automático de agrupamento. Assim, o método pode ser tanto totalmente automático ou não. Porém, é claramente não-supervisionado.

! Zwiggelaar [23] em seu trabalho usa as matrizes de co-ocorrência para

caracterizar as texturas e, para realizar a segmentação, utiliza um modelo de transporte, que busca minimizar o custo de se mover um produto de um armazém para uma loja. Neste caso, o autor define os armazéns e as lojas como sendo as intensidades de cinza da matriz de co-ocorrência e o custo de transporte como sendo o número de ocorrências na matriz nestas dadas intensidades. Com o funcional de custo, o autor propõe um esquema de programação linear de minimização para resolver o problema de transporte.

Os resultados obtidos pelos autores são bons, com boa capacidade de segmentação. No entanto, o autor somente exibe os resultados para imagens artificias e com duas texturas. Apesar de sugerir-se no artigo que o método é expansível para várias texturas, os autores não abordam este problema.

Em seu trabalho, Kovalev, Kruggel, Gertz,e Cramon [24] aplicam o método das matrizes de co-ocorrência para segmentar texturas tridimensionais existentes em imagens de ressonância magnética de cérebros, construindo matrizes de co-ocorrência em que o parâmetro de deslocamento pode variar em latitude e longitude, além do deslocamento. Os autores usam o método tanto para classificação de texturas quanto para segmentação de textura, sendo que no caso da segmentação, se calculam os protótipos de agrupamento por uma sub-amostragem das matrizes de co-ocorrência e se faz o agrupamento usando uma medida de distância entre matrizes.

Neste trabalho, os autores explicam de forma detalhada os problemas de sensibilidade, anisotropia e outros enfrentados pelo descritor por matriz de co-ocorrência quando aplicado em imagens 3D. Os resultados são apresentados na forma de gráficos e, de acordo com estes, a metodologia empregada obteve bons resultados.

Referências

Documentos relacionados

Ficou com a impressão de estar na presença de um compositor ( Clique aqui para introduzir texto. ), de um guitarrista ( Clique aqui para introduzir texto. ), de um director

En este sentido, el concepto de interés general, ahora abierto a la participación por exigencias de un Estado que se presenta como social y democrático de Derecho, presenta

Os doentes paliativos idosos que permanecem nas instituições privadas são encaminhados pelos hospitais em que estavam ou internados pelos próprios familiares

As pontas de contato retas e retificadas em paralelo ajustam o micrômetro mais rápida e precisamente do que as pontas de contato esféricas encontradas em micrômetros disponíveis

autoincriminação”, designadamente através da indicação de exemplos paradigmáticos. Sem prejuízo da relevância da matéria – traduzida, desde logo, no número e

Os roedores (Rattus norvergicus, Rattus rattus e Mus musculus) são os principais responsáveis pela contaminação do ambiente por leptospiras, pois são portadores

O primeiro passo para introduzir o MTT como procedimento para mudança do comportamento alimentar consiste no profissional psicoeducar o paciente a todo o processo,

forficata recém-colhidas foram tratadas com escarificação mecânica, imersão em ácido sulfúrico concentrado durante 5 e 10 minutos, sementes armazenadas na geladeira (3 ± 1