terça-feira, 29 de março de 2016

Haralick: Descritor de Textura

Venho aqui compartilhar o artigo e a apresentação do trabalho sobre Descritores de Textura de Haralick apresentado em um seminário da disciplina de Processamento de Imagens Digitais no mestrado.

Textura


Textura é uma das importantes características usadas na identificação de objetos ou regiões de interesse em uma imagem. A textura é uma característica que pode ajudar a segmentar as imagens e classificar regiões de interesse. Existem diversas definições de textura, dentre as quais se podem citar:


  • Característica diretamente relacionada com as propriedades físicas que a superfície de um objeto representa. Descreve o padrão de variação de tons de cinza ou cor de uma determinada região de interesse (BACKES; BRUNO, 2006);
  • Um conjunto de determinados padrões existentes nas superfícies físicas, perceptíveis ao olho humano, e que trazem grande quantidade de informações sobre a natureza da superfície, como suavidade, rugosidade (GONZALEZ; WOODS, 2002);
  • Propriedade inata de praticamente todas as superfícies – o grão de madeira, a trama de um tecido, o padrão de culturas em um campo, etc. Contém informações importantes sobre o arranjo estrutural das superfícies e sua relação com o ambiente circundante (HARALICK; SHANMUGAM; DISTEIN, 1973);
  • Conjunto de determinados padrões existentes nas superfícies físicas, perceptíveis ao olho humano e que trazem grande quantidade de informação sobre a natureza da superfície, como suavidade, rugosidade e regularidade (LUZ ALVES; ARAÚJO; LIBRANTZ, 2006);
  • Variações locais em valores de pixel que se repetem de maneira regular ou aleatória ao longo do objeto de uma imagem (SCHWARTZ; PEDRINI, 2003);
  • Propriedade local de imagem, uma medida de intensidade de cinza entre os pixels e sua vizinhança (SCHOWENGERDT, 1983);
  • Textura é o que constitui uma região macroscópica. Sua estrutura é atribuída a padrões repetitivos no quais elementos ou primitivas são arranjadas de acordo com uma regra de posicionamento (Tamura, Mori e Yamawaki, 1978);
As definições de textura estão associadas à impressão de rugosidade e contraste criada pela variação tonal ou pela repetição de padrões visuais sobre uma região. Apesar da falta de uma definição universal sobre textura, a maior parte dos pesquisadores concorda em dois aspectos:

  1. Existe uma variação entre pixels vizinhos, ou seja, uma não homogeneidade dos níveis de cinza ou tons de cor;
  2. Textura é uma propriedade homogênea em alguma escala espacial maior que a definição da imagem;
A textura é uma informação valiosa, que pode ser associada à interpretação de padrões relacionados às áreas de aplicação. Ela fornece informações sobre a distribuição espacial das variações de tonalidade de um objeto ou da repetição tonal de alguns grupos de objetos não identificáveis individualmente. Textura é o produto da forma, tamanho, sombra e tonalidade de cada objeto, permitindo a impressão visual de rugosidade ou suavidade de determinada superfície.

Exemplos de Texturas.


Classificação de Texturas


Texturas podem ser classificadas em dois tipos:

  • Artificiais: as texturas artificiais são aquelas que consistem em arranjos de símbolos tais como segmentos de linhas, pontos, estrelas, etc., dispostos sobre um fundo neutro;
Exemplos de texturas artificiais, onde pode ser observado certo padrão repetitivo.
  • Naturais: as texturas naturais são compostas por cenários encontrados na natureza, contendo arranjos de pixels do tipo semi-repetitivos;
Exemplos de texturas naturais, sendo a primeira, grama e a segunda, areia.

Descritores de Textura



A análise de imagens através de texturas vem sendo utilizada para diferenciação de diversos tipos de estruturas encontradas na natureza. Como exemplo de tais aplicações, pode-se citar aplicações em análise de imagens aéreas ou de satélite, imagens geológicas.

Existem de três abordagens principais usadas em processamento de imagens para a descrição de texturas:

  • Abordagem estatística: considera a distribuição de níveis de cinza e o inter-relacionamento entre eles, são utilizadas medias estatísticas para descrever as texturas;
  • Abordagem espectral: baseia-se em propriedades do espectro de Fourier, sendo usadas basicamente na detecção de periodicidade global em uma imagem através da identificação de picos de alta freqüência do espectro;
  • Abordagem estrutural: representa textura como sendo formada pela repetição de padrões que obedeçam alguma regra de posicionamento para a sua geração;

Para descrever as texturas, Haralick et al. (1973) propôs 14 medidas estatísticas, calculadas a partir da matriz de co-ocorrência. Este método proposto utiliza uma metodologia para descrição de texturas baseada em estatística de segunda ordem, em que se define características provenientes do cálculo de matrizes denominadas “matrizes de co-ocorrência” que consistem em uma tabulação de quantas combinações diferentes de níveis de cinza ocorrem em uma imagem em uma determinada direção.

Abordagem Estatística


A extração de características pela abordagem estatística propicia a descrição de imagens por meio de regras estatísticas que governam a distribuição e a relação entre os diferentes níveis de cinza. Inúmeras medidas podem ser extraídas da distribuição desses níveis em imagens digitais, dentre as quais se podem citar o cálculo de média, variância, desvio-padrão, energia ou entropia.
Ao invés de tentar compreender explicitamente a estrutura hierárquica da textura, os métodos estatísticos descrevem a textura por meio de propriedades não determinísticas que definem as distribuições e relacionamentos entre os níveis de cinza ou tons de cor de uma imagem.
A abordagem estatística pode ser dividida em duas importantes vertentes:

  • A de primeira ordem: diz respeito à distribuição de níveis de cinza em uma imagem, onde se usa o histograma de primeira ordem como base para extração de suas características, como: média, desvio-padrão, etc.;
  • A de segunda ordem: que leva em conta o posicionamento espacial relativo da ocorrência dos níveis de cinza em uma imagem, característica não atendida quando se faz uso de histogramas de primeira ordem;

Uma imagem que contenha uma mesma quantidade de diferentes níveis de cinza que outra, diferenciando-se somente em termos do posicionamento dos mesmos irá apresentar, conforma a abordagem de primeira ordem, um mesmo histograma, ou seja, imagens como as da figura abaixo serão avaliadas como a mesma, pois o histograma de primeira ordem das duas é igual. Estatísticas de segunda ordem ou maiores permitem tal diferenciação de imagens.


Duas imagens diferentes, compostas de dois níveis de cinza e seus respectivos histogramas de primeira ordem, que não permitem diferenciação existente entre as mesmas. A distinção entre as imagens só é possível através da análise de segunda ordem, onde é levada em conta a distribuição espacial dos pixels das imagens.

Seguindo a abordagem de segunda ordem, as duas imagens podem ser diferenciadas, mesmo tendo histogramas de primeira ordem iguais, pois, nesse caso, é levado em conta o posicionamento relativo dos pixels das imagens, para a obtenção de medidas estatísticas.


Matriz de Co-Ocorrência de Nível de Cinza


O uso principal da Matriz de Co-ocorrência é caracterizar texturas em uma imagem através de um conjunto de estatísticas para as ocorrências de cada nível de cinza em pixels diferentes ao longo de diferentes direções. Disposta em uma organização bi-dimensional (histograma bi-dimensional) de níveis de cinza, onde pares de pixels são separados por uma relação espacial fixa. As matrizes de co-ocorrência são ferramentas para a classificação de imagens. No entanto, elas possuem alto custo computacional à medida que o numero de tons de cinza crescem na imagem.
A Matriz de Co-ocorrência de textura considera a relação entre dois pixels por vez, um chamado de pixel referência e o outro de pixel vizinho. A co-ocorrência, na sua forma geral, pode ser especificada por uma matriz de freqüências relativas P (i, j; d, θ), na qual dois elementos de textura vizinhos, separados por uma distância d em uma direção θ ocorrem na imagem, um com propriedade i (pixel referência) e o outro com propriedade j (pixel vizinho). Instanciando essa definição para co-ocorrência de níveis de cinza, os elementos de textura são pixels e as propriedades são os níveis de cinza. Por exemplo, para um relacionamento com uma direção θ = 0º, e vizinhança considerada de 1 pixel, tem-se: P (i, j; 1, 0).
Em outras palavras a matriz de co-ocorrência pode ser definida como P(i, j, d, θ) onde: i e j são pixels vizinhos de acordo com a distância d. Esta distância entre os pixels i e j é analisada de acordo com uma direção θ. Os valores possíveis para θ são apresentados na figura abaixo:


Possíveis valores para θ.

Portanto, cada elemento da matriz de co-ocorrência corresponde à contagem do numero de ocorrência dos pares de níveis de cinza i e j, com uma distância d e direção  . 

Seja p um pixel de uma imagem, os vizinhos de p = (x, y) de acordo com uma distância d são:

  • Na direção θ = 0º: (x, y - d) e (x, y + d)
  • Na direção θ = 45º: (x + d, y - d) e (x - d, y + d)
  • Na direção θ = 90º: (x + d, y) e (x - d, y)
  • Na direção θ = 135º: (x + d, y + d) e (x - d, y - d)
Após o cálculo das matrizes nas quatro direções, realiza-se a normalização e calcula-se a média das quatro matrizes, transformando-as em uma única matriz que representará quantitativamente a região a ser analisada. Através desta matriz, calculam-se os chamados descritores de textura.
Essas matrizes podem ser normalizadas através da divisão de cada entrada da matriz pelo número total de pares de pontos de pixels vizinhos que satisfaçam P(i, j, d,  ). Desta forma cada valor será a probabilidades de uma transição, da forma especificada  , do nível de cinza i para o nível de cinza j, com uma distância d pixels.
Para chegar-se a forma final da matriz de co-ocorrência (matriz normalizada) precisa-se dividir cada elementos pelo número total, ou seja, a matriz de co-ocorrência é dada pela matriz quadrada de probabilidade P(i, j), onde cada elemento (i, j) representa a probabilidade de um certo valor aparecer na matriz, sendo então calculado pela equação:


Onde:

  • i é o número da linha e j o número da coluna
  • p(i, j) é o conteúdo da célula (i, j)
  • P(i, j) é a probabilidade da célula (i, j)
  • N é o número de linhas ou colunas, uma vez que p é uma matriz quadrada

Desta forma, a matriz normalizada é obtida pela divisão de cada posição da matriz pelo total de seus valores não nulos. 

Algumas propriedades importantes da matriz de co-ocorrência são:

  • Toda matriz de co-ocorrência é uma matriz quadrada;
  • O número de linhas e de colunas é igual ao nível de quantização da imagem;
  • A matriz de co-ocorrência é simétrica ao redor da diagonal;

Haralick


Haralick et al. (1973) descrevem um método para extração de características de texturas baseado na relação espacial existentes entre os níveis de cinza da imagem, calculando as chamadas matrizes de co-ocorrência e, a partir delas, determinaram 14 parâmetros estatísticos que caracterizam as texturas.

Um descritor de textura ou de Haralick é um valor calculado a partir da matriz co-coorrência da imagem, que quantifica algumas características da variação dos níveis de cinza dessas imagens. As texturas definem características como uniformidade, densidade, aspereza, regularidade, intensidade, entre outras características de uma imagem. A classificação correta de qualquer textura depende dos descritores utilizados para caracterizá-la da melhor forma possível.

A matriz de co-ocorrência é o ponto de partida para a obtenção dos 14 descritores estatísticos que foram propostos, para representar características presentes em texturas:

  • Segundo Momento Angular;
  • Contraste;
  • Correlação;
  • Soma dos Quadrados – Variância;
  • Momento de Diferença Inverso;
  • Média da Soma;
  • Variância da Soma;
  • Entropia da Soma;
  • Entropia;
  • Variância da Diferença;
  • Entropia da Diferença;
  • Medidas de Informação da Correlação (2);
  • Coeficiente de Correlação Máximo;
Essas características servem como medida para a diferenciação de texturas que não seguem um determinado padrão de repetitividade, fornecendo informações relevantes para a classificação das mesmas.


Exemplos de Descritores de Haralick


Dentre as várias medidas de textura sugeridas segue o exemplo de algumas:


  • Segundo Momento Angular – fornece a medida da homogeneidade local dos níveis de cinza em uma imagem. Em uma imagem homogênea existem poucas transições de níveis de cinza. Nesse caso, a matriz de co-ocorrência possui baixas entradas de alta magnitude;


  • Contraste – reflete a quantidade de variação local de níveis de cinza em uma imagem. Se este valor for pequeno, os níveis de cinza da imagem analisada são todos próximos de uma média, ou seja, a matriz de co-ocorrência de níveis de cinza vai possuir a maioria dos valores concentrados na horizontal. Caso contrário, se o valor do contraste for alto, a imagem possui uma maior distribuição dos níveis de cinza em seu histograma;

Conforme citado acima, existem outras características de Haralick utilizadas para a extração de características em texturas para a diferenciação de imagens. Assim como essas duas acima descritas, as demais também se baseiam na matriz de co-ocorrência é o ponto de partida.


Referências Bibliográficas




ALVES, Wonder A. L.; ARAÚJO, Sidnei A.; Avaliação da utilização de dois diferentes modelos de redes neurais na classificação de imagens com base em características texturais; São Paulo: Centro Universitário Nove de Julho, 2006.
BARBOSA, Danilo P.; Avaliação de descritores texturais geoestatísticos e de Haralick para o reconhecimento de plantas daninhas; Viçosa: Minas Gerais, 2009.
BRAZIL, André L.; Matrizes de co-ocorrência no MathLab; Disponível em: <http://www.ic.uff.br/~aconci/co-ocorrenciaMathLab.pdf>. Acesso em: 22 de setembro de 2011.
COSTA, José M. P.; Análise de Imagem: Medição de Área Edificada; Covilhã: Universidade da Beira Interior, 2010.
GABOARDI, Clovis; Utilização de imagem de coerência SAR para classificação do uso da terra: floresta nacional do tapajós; São José dos Campos: INPE, 2003.
FERREIRA, Mauricio A. L., FIGUEREDO, Aurélio M.; Chroma Key a partir de imagens de TV Utilizando análise de Textura; Pontifícia Universidade Católica.
HARALICK, Robert M. ; SHANMUGAM K.; DINSTEIN I.; Textural Features for Image Classification; IEEE Transaction on Systems, Man and Cybernetics, 1973.
ITO, Rodrigo H., KIM, Hae Y., SALCEDO, Walter J.; Classificação de Texturas Invariante a Rotação Usando Matriz de Co-ocorrência; São Paulo: Escola Politécnica Universidade de São Paulo.
LOCK, Ruth E. N.; KIRCHNER, Flávio F.; Classificação de imagens multiespectrais LANDSAT TM e feições de textura: mapeamento da cobertura da terra.
MELLO, Carlos A.; Texturas; Disponível em: <http://www.cin.ufpe.br/~cabm/visao/Aula07_Texturas.pdf>. Acesso em: 22 de setembro de 2011.
NUNES, Éldman O.; CONCI, Aura; Técnicas de Descrição Regional Baseadas em Texturas; Disponível em: <www.ic.uff.br/~aconci/textura.ppt>. Acesso em: 22 de setembro de 2011.
OSHIRO, Seimou H.; GOLDSCHMIDT, Ronaldo R.; Processamento de Imagens; Rio de Janeiro: Instituto Militar de Engenharia, 2008.
STEIN, Tatiane; Avaliação de descritores de textura para segmentação de imagens; Curitiba: Universidade Federal do Paraná, 2005.
TRINDADE, Fernanda R.; Desenvolvimento de uma metodologia de classificação de padrões em imagens de tomografia computadorizada do pulmão; Porto Alegre: Pontifícia Universidade Católica do Rio Grande do Sul, 2009.
VASCONCELOS, Simone; Matrizes de Co-Ocorrência; Disponível em: <http://www.ic.uff.br/~aconci/co-ocorrencia.pdf>. Acesso em: 22 de setembro de 2011.

Nenhum comentário:

Postar um comentário