• Nenhum resultado encontrado

Grafos e redes complexas em imagens

3.2 M´ etodos que utilizam modelagem imagem/grafo em processamento de imagens

3.2.1 Segmenta¸c˜ ao de Imagens

Em vis˜ao computacional, segmenta¸c˜ao se refere ao processo de dividir uma imagem digital em m´ultiplas regi˜oes (conjunto de pixeis) ou objetos, com o objetivo de simplificar e/ou mudar a representa¸c˜ao de uma imagem para facilitar a sua an´alise. O resultado da segmenta¸c˜ao de imagens ´e um conjunto de regi˜oes/objetos da imagem onde cada um dos pixeis em uma mesma regi˜ao ´e similar com referˆencia a alguma caracter´ıstica ou propriedade computacional, tais como cor, intensidade, textura ou continuidade. Regi˜oes adjacentes devem possuir diferen¸cas significativas com respeito a(s) mesma(s) caracter´ıstica(s).

3.2.1.1 Segmenta¸c˜ao com lattices 4 ou 8-conectadas

A primeira forma de segmenta¸c˜ao, e provavelmente a mais difundida, utiliza o sistema de vizinhan¸ca 4 ou 8 para definir as conex˜oes entre os v´ertices. Uma aresta ´e adicionada a dois v´ertices se estes representam pixeis vizinhos de 4 ou 8 na imagem original. Tal tipo de adjacˆencia enfatiza propriedades locais do grafo.

3.2 M´etodos que utilizam modelagem imagem/grafo em processamento de imagens 57

Nele o peso da aresta no sistema de vizinhos 8-adjacentes ´e tido como a diferen¸ca absoluta da intensidade de cinza entre os pixeis. Uma ´arvore geradora m´ınima ent˜ao ´e obtida do modelo e uma segmenta¸c˜ao da imagem em r regi˜oes distintas ´e obtida pelo simples corte das r arestas com maior peso. Morris et al. (26) tamb´em prop˜oe algumas formas de melhorar o resultado da segmenta¸c˜ao, entre elas o c´alculo da ´arvore geradora m´ınima de forma recursiva. Xu e Uberbacher (27) acrescentam algumas heur´ısticas ao m´etodo para tornar o processo de corte mais preciso e eficiente computacionalmente, e Vlachos e Constantinides (28) estende o trabalho de (26) para imagens coloridas, considerando a informa¸c˜ao de cor no c´alculo do peso da aresta. Uma abordagem hier´arquica, utilizando wavelets na determina¸c˜ao dos pesos da aresta e das imagens multi-escala, ´e realiza no trabalho (29). Outra abordagem hier´arquica utilizando pirˆamides ´e dada por (30). Outros m´etodos n˜ao baseados em grafos tamb´em podem ser utilizados ap´os segmenta¸c˜ao por ´arvore geradora m´ınima com objetivo de melhorar a qualidade final da segmenta¸c˜ao e diminuir a super segmenta¸c˜ao obtida (31).

Wu e Leahy (32, 33) tamb´em definem o peso da aresta como uma fun¸c˜ao de similaridade entre os pixeis adjacentes. No entanto a segmenta¸c˜ao ´e obtida pelo particionamento do grafo em subgrafos via corte de grafos. Esse particionamento ´e obtido removendo-se os arcos em G que correspondem ao corte m´ınimo com menor peso entre todos os cortes m´ınimos de todos os pares de v´ertices em G. O autor argumenta que o corte com baixo valor correspondem `a contornos fechados com bordas evidentes e, consequentemente, bordas isoladas n˜ao produzem regi˜oes na imagem, um vez que h´a um alto custo associado `a inclus˜ao das arestas com baixo valor necess´arias para formar um contorno fechado. Dessa forma buracos no contorno s˜ao penalizados ao passo que grandes regi˜oes n˜ao sofrem nenhum tipo de restri¸c˜ao. Para tal particionamento o algoritmo de Gomory-Hu (34, 35) ´e inicialmente utilizado em (36). No entanto esse m´etodo apresenta um alto custo computacional e tamb´em apresenta uma super segmenta¸c˜ao para algumas imagens. Em trabalhos subsequentes Wu e Leahy (33) calculam o corte m´ınimo com o algoritmo de Gomory-Hu modificado e otimizado visando minimizar o custo e tentar evitar a super segmenta¸c˜ao. Cox et al. (37, 38) sugerem ent˜ao outra forma de implementa¸c˜ao muito similar utilizando chamada corte proporcional. Nesse m´etodo a fun¸c˜ao de custo ´e uma propor¸c˜ao do peso total das arestas podadas, normalizadas pelo tamanho das parti¸c˜oes criadas (39).

Utilizando uma representa¸c˜ao da imagem por d´ıgrafo, Jermyn e Ishikawa (40) apresentam uma outra forma de segmentar imagens. Nessa representa¸c˜ao o peso e a dire¸c˜ao da aresta ´e determinada pelo produto do gradiente entre os pixeis vizinhos. A segmenta¸c˜ao ´e obtida por encontrar um ciclo/borda fechada que isola um objeto da imagem, utilizando para isso a solu¸c˜ao do ciclo de peso m´ınimo normalizado.

58 3 Grafos e redes complexas em imagens

3.2.1.2 Segmenta¸c˜ao com conectividade por raio ou knn

Embora se obtenham bons resultados de segmenta¸c˜ao com os m´etodos de conectividade limitada (i.e. ´arvore geradora m´ınima e corte de grafos com vizinhan¸ca 4-8), esses utilizam um crit´erio de segmenta¸c˜ao baseado em propriedades locais do grafo. Outra forma bastante utilizada para se determinar a adjacˆencia entre os v´ertices ´e utilizar a conex˜ao de k-vizinhos mais pr´oximos, ou seja, mapear cada pixel para um espa¸co de caracter´ısticas e ent˜ao agregar os pixeis mais similares com uma aresta. Nesse tipo de adjacˆencia uma aresta e ∈ E e um peso wi,j, representando o relacionamento e similaridade entre pixeis i e j, s˜ao adicionados ao grafo se estes pixeis est˜ao pr´oximo no espa¸co de caracter´ısticas.

De fato h´a diversas formas para se determinar tais caracter´ısticas, sendo a mais comum conectar todos os pixeis vizinhos que est˜ao a um raio r. De fato se apenas a caracter´ıstica de distˆancia entre pixeis for utilizada para a conectividade knn, essa se reduz `a conectividade por um raio apresentada anteriormente. O parˆametro r ´e, portanto, chave nesse tipo de modelagem.

Essa representa¸c˜ao pode ou n˜ao gerar grafos planares, dependendo da fun¸c˜ao de distˆancia utilizada. O trabalho de Cour et al. (41) apresenta uma boa discuss˜ao nesse sentido e (42, 43) apresentam estudos de caso de segmenta¸c˜ao para conectividade limitada e conectividade knn com diversas fun¸c˜oes de distˆancia.

O estudo realizado por Cour et al. (41) demostra que grandes valores de r melhoram a representa¸c˜ao da imagem e sua subsequente segmenta¸c˜ao. Entretanto h´a o problema do custo computacional envolvido. Para resolver (41) prop˜oe modelar o grafo com um valor de r grande, em conjunto com uma metodologia baseada no particionamento do grafo em sub-grafos, obtendo assim uma segmenta¸c˜ao eficiente tempo O(N ) com algoritmo de corte normalizado ´otimo.

Ainda dentro desse contexto muitas s˜ao as solu¸c˜oes de corte empregadas com objetivo de segmentar a imagem modelada. Os trabalhos de Shi e Malik (44), por exemplo, prop˜oem uma fun¸c˜ao de custo normalizada, chamada de corte normalizado, onde o fator de normaliza¸c˜ao ´e a conectividade total dos n´os em cada parti¸c˜ao para todos os n´os do grafo. Outras fun¸c˜oes de custo para corte incluem os trabalhos (45, 46). Solu¸c˜oes mais eficientes tamb´em podem ser alcan¸cadas com utiliza¸c˜ao de vers˜oes recursivas (44), implementa¸c˜oes hier´arquicas (multi- escala) (41, 46) e outras abordagens (43, 47, 48).

Outra forma para segmenta¸c˜ao de imagens ´e dada por Costa (7) que utiliza um grafo hier´arquico de G′

3.2 M´etodos que utilizam modelagem imagem/grafo em processamento de imagens 59

conectados a este hub s˜ao adicionados `a regi˜ao segmentada.

3.2.1.3 Segmenta¸c˜ao via IFT

Outro modo utilizado para se determinar a rela¸c˜ao de adjacˆencia dos v´ertices no grafo ´e escolher, com base em alguma heur´ıstica, quais v´ertices ser˜ao conectados. Tal forma difere da conectividade Knn pelo fato de n˜ao haver um rela¸c˜ao direta de similaridade (ou dissimilaridade) entre dois v´ertices adjacentes, ou seja, dado apenas os dois v´ertices ´e imposs´ıvel saber se esses ser˜ao adjacentes ou n˜ao no grafo.

Um recente trabalho muito interessante nessa linha ´e apresentado por Fal¸c˜ao et al. (25). Nele a chamada image foresting transform (IFT) ´e utilizada em aplica¸c˜oes de segmenta¸c˜ao de imagens, detec¸c˜ao de bordas e esqueletoniza¸c˜ao via transformada da distˆancia. A IFT ´e dada pelo simples c´alculo dos caminhos m´ınimos entre os v´ertices e alguns pontos de controle. O grafo resultante ´e uma floresta de caminhos ´otimos.

A medida de distˆancia, escolha dos pontos e a fun¸c˜ao de custo utilizada s˜ao diversas e est˜ao fortemente dependentes da aplica¸c˜ao. Para realizar a transformada da distˆancia, por exemplo, as sementes correspondem aos pixeis do contorno da imagem. J´a para aplica¸c˜oes de segmenta¸c˜ao essas sementes podem ser escolhidas manualmente (segmenta¸c˜ao dirigida) ou atrav´es de algum heur´ıstica. Diversos trabalhos exploram e prop˜oem formas de melhorar a qualidade das aplica¸c˜oes utilizando IFT (49, 50).

3.2.1.4 Segmenta¸c˜ao com sementes

Este tipo modelagem trata de segmenta¸c˜ao dirigida, onde o fundo e objeto(s) de interesse s˜ao explicitamente pr´e-identificados manualmente. Semelhantemente `a lattice 4 conectada apresentada anteriormente, esta modelagem atribui um v´ertices v ∈ V para cada pixel, uma aresta (direcionada ou n˜ao) e ∈ E e um peso wi,j, representando o relacionamento e similari- dade entre pixeis i e j. A essas arestas d´a-se o nome de n-links. V´ertices especiais (chamados sementes ou terminais) s˜ao ent˜ao adicionados ao grafo. No contexto de vis˜ao, estas sementes s˜ao r´otulos atribu´ıdos a determinados pixeis da imagem, representando que aquele pixel per- tence ao fundo ou ao objeto(s) de interesse (51). Cada semente criada ´e ent˜ao ´e conectada com uma aresta (t-links) a todos os v´ertices correspondentes aos pixeis da imagem.

V´arios s˜ao os trabalhos ((51, 52)) que utilizam esta modelagem para realizar segmenta¸c˜ao dirigida (onde o usu´ario indica quais s˜ao as sementes). Alguns trabalhos recentes focam esfor¸cos em determinar automaticamente quais s˜ao as sementes (regi˜oes e objetos de inte-

60 3 Grafos e redes complexas em imagens

resse) atrav´es de uma pr´e-segmenta¸c˜ao grosseira da imagem (53, 54), ficando a cargo da segmenta¸c˜ao baseada em grafos obter um resultado mais refinado e preciso.

3.2.1.5 Segmenta¸c˜ao por regi˜oes

Nesse tipo de modelagem cada v´ertice vi ∈ V representa uma regi˜ao distinta da imagem. Essas regi˜oes s˜ao determinadas por uma pr´e-segmenta¸c˜ao grosseira, muitas vezes apresentado uma imagem over-segmentada. Uma aresta (direcionada ou n˜ao) ´e ent˜ao adicionada entre os v´ertices vi e vj se as regi˜oes representadas por esses v´ertices forem vizinhas. Esse tipo de abordagem diminui o numero de v´ertices e arestas necess´arios para representar a imagem, diminuindo assim no custo computacional dos algoritmos de particionamento empregados, fato este que leva muitos trabalhos a empregarem tal metodologia (55, 56).

V´arias s˜ao os m´etodos utilizados para se obter essa pr´e-segmenta¸c˜ao, desde simples limi- ares, split-and-merge (36) e m´etodos mais refinados como Manford-Shah (57) e watershed (58). O objetivo, em geral, ´e agrupar pixeis semelhantes em pequenas regi˜oes, obtendo uma imagem super segmentada, e ap´os obter um refinamento desta segmenta¸c˜ao utilizando mo- delagem em grafos.