Segmentação de imagens descrição / análise Pré-processamento Não existe uma única e definitiva abordagem ao problema da segmentação A descrição pode ser feita a partir de diferentes partes da cena Pode haver várias formas de se extrair as regiões de interesse a serem descritas/analisadas Conclusão: a segmentação é uma etapa dependente do problema, importante na análise de imagens
Classificação geral Completa: resulta num conjunto de regiões disjuntas Parcial: não corresponde diretamente a imagens de objetos Técnicas de segmentação: baseada em conhecimento global baseada no contorno dos objetos baseada nas regiões definidas pelos objetos
Ou equivalentemente: baseada em descontinuidades (contornos) dos níveis de cinza baseada em similaridades (regiões) dos níveis de cinza Descontinuidades: detecção de pontos isolados, primitivas e contornos etc similaridade: limiarização, crescimento de regiões, subdivisão de regiões, fusão de regiões etc Tudo isto em imagens estáticas ou dinâmicas
Detecção de descontinuidades Em geral, pode-se considerar máscaras representando modelos de descontinuidades Exemplo: Detecção de pontos isolados A resposta R da máscara para um ponto da imagem é:
Um ponto isolado é detectado se T é um limiar Exemplo de máscara imagem máscara R
Exemplo: Detecção de ponto isolado Original f R máscara e limiar T = max(|R|)
Exemplo: Considerar máscaras representando modelos de linhas em Detecção de linhas Exemplo: Considerar máscaras representando modelos de linhas em possíveis direções na malha discreta horizontal -45 +45 vertical o ponto está associado a uma linha na direção i
Exemplo: Detecção de linhas de espessura 1 pixel na direção -45 graus Original Reposta da máscara (R) máscara -45
espessura de 1 pixel
Reposta da máscara (R) |R|
Resposta após limiarização com T = max(|R|)
Casamento de padrões (template matching) Outra forma simples de se extrair padrões de uma imagem é a partir do conceito de correlação visto anteriormente. Correlação de f(x,y) e h(x,y): Pode-se usar a FFT para o casamento com padrões muito grandes
Exemplo 1: c f Pontos de c > T=60 h (o max valor dos pixels em c é 68)
Exemplo 2: f h
c pontos de c > T=315
Exemplo 3: f h
Detecção de bordas Uma borda é uma fronteira entre duas regiões com relativa diferença de níveis de cinza Estes métodos de segmentação são ideais quando as regiões são suficientemente homogêneas A ideia básica consiste do emprego de um operador derivativo local (como estudado anteriormente)
Os detectores de contorno vistos anteriormente (Roberts, Sobel, LoG, Prewitt, Canny etc) podem ser empregados aqui. O Laplaciano, por exemplo, é utilizado na localização das bordas considerando-se a propriedade do zero-crossing (Método de Marr-Hildreth). Lembrando: Este conceito baseia-se na convolução de uma imagem com o Laplaciano de uma função gaussiana (LoG) 2-D do tipo: O Laplaciano de h é dado por
O zero-crossing ocorre quando A forma desta função corresponde ao modelo das máscaras laplacianas do tipo
Filtragem passa-altas: Suaviza a imagem proporcionalmente a Isto significa que este operador filtra a imagem e serve para detectar a posição dos seus contornos. suavização + deteccão de bordas
Exemplo: LoG Original
Exemplo: Sobel Original
Exemplo: Canny Original
f*
f*
f*
f*
f*
LoG Original Sobel Máscara laplaciana Função gaussiana LoG LoG limiarizado: f(x,y) > 0 Zero-crossing
Reconexão de contornos (edge linking) após detecção, os contornos geralmente não são conexos: problemas de iluminação irregular, ruído etc. os detectores podem ser seguidos de métodos para reconectá-los. Processamento local Considera pequenas vizinhanças (e.g., 3x3, 5x5) de um ponto de contorno e une aqueles vizinhos que compartilham propriedades comuns. - Propriedades: a resposta ao operador gradiente, , e a sua direção Um pixel (x’, y’), na vizinhança de (x, y), é similar em magnitude a este se: T é um limiar positivo
Um pixel (x’, y’) tem um ângulo próximo ao do seu vizinho (x, y) se: A é um limiar angular e como antes: Assim, um ponto numa dada vizinhança de (x, y) será conectado ao pixel (x, y) se os critérios de magnitude e direção forem satisfeitos. Este procedimento pode ser repetido um certo número de vezes para cada posição da imagem.
Exemplo: Reconexão de contornos