Post on 07-Apr-2016
Processamento de Imagens
Segmentação(Parte 1)
Segmentação
• Segmentação Análise de Imagem• “Divisão da imagem em partes com grande
correlação aos objetos e áreas do mundo real contidos na imagem”
• Completa: regiões disjuntas, objetos da img• Parcial: objetos obtidos podem não ser objetos distintos
Segmentação Completa• Pode requerer cooperação de níveis mais
altos de processamento que usam conhecimento específico do problema
• As vezes, apenas processamento em nível mais baixo é a solução. – Independente de contexto
• Não existe modelo para o objeto• Não existe conhecimento da segmentação esperada
– Objetos contrastados em fundo mais escuro• identificação de células, caracteres, etc.
Segmentação Parcial
• Divisão da imagem em regiões homogêneas segundo uma propriedade– brilho, cor, textura
• Segmentação de uma imagem aérea
• Mais viável muito difícil obter segmentação completa de uma cena sempre
Classificação dos Métodos de Segmentação
• Conhecimento global (histogram-based)• Baseada em bordas (Edge-based Segmentation)
– Descontinuidade entre regiões• Baseada em Regiões (Region-based)
– Similaridade entre regiões
“Métodos” p/ segmentação
• Algoritmos Genéticos• Redes Neurais• Métodos Estocásticos (MRF)• Morfologia Matemática • Segmentação por Textura• Segmentação por Cor
Limiarização (Thresholding)
• Limiarização em nível de cinza: método mais simples de segmentação. Usa a intensidade do pixel como separador.
• Limiarização:
Exemplos de Thresholding
Thresholding• Objetos que não se tocam• nível distinto do fundo (background)• Determinação do limiar correto (Threshold)
é crucial– interativamente– automaticamente
• global (menos provável): único limiar p/ imagem– T = T(f)
• variável: variação do limiar “ao longo” da imagem– T = T(f, fc ), fc é a parte da imagem f onde T é
determinado
Tipos de Limiarização• Por banda:
• Multi-bandas:
D : conjunto de níveis de cinza.
Detecção do Limiar (T)• Tem-se informação “a priori”? Simples
– exemplo: detecção de caracteres em um folha papel• Análise do formato do histograma
– bi-modal: Objetos de mesmo NC + fundo
Objetos: +escuros
Fundo: +claro
Métodos Automáticos• Utilizar os mínimos do histograma
– tonalidades intermediárias entre duas bandas– Problemas
• valores muito largos e planos• valores assumem valores muito baixos:
sensibilidade a ruído.
• Exemplo:• p/ histogramas bi-modais, ache os dois pontos de
máximo primeiramente e, depois, o mínimo entre eles. (Mode method)
Limiar Ótimo
• Limiar escolhido como o nível de cinza mais próximo correspondente a probabilidade mínima entre dois pontos de máximo de duas ou mais distribuições normais.
• Método de Otsu:– determina o tom de corte que maximiza a
medida de variância entre o objeto e o fundo
Algoritmo Isodata: Livro Sonka
Método de Otsu
• Seleção do ponto mais baixo entre duas classes
• Frequência e média
• Análise da variância total (imagem inteira)
Método de Otsu
• Variância entre classes
• Substituindo temos
0,1 e 0,1 são as freqüências e médias das duas classes
Método de Otsu
• A função que envolve a variância entre classes e a variância total é dada por:
• Avaliar todos os possíveis limiares. Aquele que maximizar será o limiar ótimo.
Limiarização Multi-Espectral
R
GB
Segmentação por Bordas
• Depende de arestas das imagens localizados pelos operadores de bordas.– arestas: descontinuidades no nível de cinza, cor
textura,etc.• Muito susceptíveis ao ruído (presença de
arestas onde não há bordas ou vice-versa)
Segmentação por Bordas
• Não basta apenas identificar as bordas e construir um contorno a partir delas.
• É preciso identificar o objeto a partir desses contornos
• Objeto: região dentro de um contorno
Seg. Bordas: Limiarização
• Operação de detecção de bordas• Aplicar Thresholding sobre a imagem de arestas
(edge image)– Valor de mínimo ou média do histograma
• Ligar os segmentos de bordas em um contorno (edge linking)– Os pontos que passaram no thresholding são ligados
aos seus vizinhos, segundo uma distância máxima
Seg. Bordas: Limiarização
Supressão de arestas• Uma imagem de arestas (edge image)
apresenta borda ‘espessa’, mas a borda deve ser composta por um pixel simples.
• Discretizar as direções de acordo com 8-conectado• Para cada pixel com magnitude não-zero, inspecione
os dois pixels adjacentes (segundo a direção da aresta)
• Se a magnitude de um deles for maior que a do pixel corrente, marque-o para remoção.
• Percorra novamente a imagem e zere os pixels marcados para remoção.
Seg. por Rastreamento de Bordas• Border Tracing (ou tracking)• Depende do grau de conectividade utilizado
– 4-conectado 8-conectado• A borda vai sendo composta aplicando-se a
cada pixel um operador que define a direção do gradiente (que indica a posição do próximo pixel da borda)
• Objetivo: encontrar uma “inner region border”
Achando a borda externa (pertencente ao fundo)
Borda externa (outer region border)
Seg. Bordas: Grafos de arestas
• Quando existe conhecimento a priori da direção da borda
• Usar esse conhecimento (magnitude ou direção das arestas) como pesos num processo de busca de caminho mínimo em uma estrutura de grafo.
Busca em grafos de arestas
Conhecendo a magnitude e direção em uma imagem edge, cada pixelcorresponde a um nó no grafo, cujo peso é a magnitude.
Angiografia coronariana
Imagem de arestas borda encontrada por grafo
Seg. Bordas: Transformada Hough
• Objetos têm tamanho e forma conhecidos– localizar áreas em circuitos impressos
• Podemos usar máscaras de convolução– Problemas: zoom, rotação, distorções, etc.
• Transformada de Hough: projetada inicialmente para identificar linhas. Pode ser generalizada para localização de círculos e outras curvas.
Tra n
sfor
mad
a d e
Hou
gh p
a ra
um C
í rcu l
o
Seg. Bordas: Marr-Hildreth
• 1970: importância dos contornos na interpretação de imagens
• Operadores existentes até então: Sobel, Prewit -> dependência do tamanho e ruído
• Step-edge: mudança abrupta na função de uma imagem
Marr-Hildreth
• Primeira derivada: extremo na posição da aresta• Segunda derivada: zero na mesma posição
1a DerivadaAprox. numérica
Máscaras 1D Máscaras 2D
2a DerivadaLaplaciano Aprox. em 1D
Equivalente a:
Aprox. 2D
Marr-Hildreth
• Como computar a segunda derivada robustamente?1) Suavizar a imagem (redução de ruído).
Operador Gaussiano 2D
2) Detecção de bordas com Laplaciano
Marr-Hildreth• A segunda derivada de f(x,y) suavizada
– Operador Laplace • isotrópico (não é direcional)
– LOG (Laplace of Gaussian)
Aproximações discretas do Operador Laplaciano
Marr-Hildreth