Processamento de Imagens Segmentação (Parte 1) Segmentação Segmentação Análise de Imagem...
Transcript of Processamento de Imagens Segmentação (Parte 1) Segmentação Segmentação Análise de Imagem...
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: obter objetos disjuntos• 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 “Recentes”
• 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 é uma sub imagem de F
Tipos de Limiarização
• Por banda:
• Multi-bandas:
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 sfo
rmad
a d e
Hou
gh p
ara
um C
írcu
lo
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 Derivada
Aprox. 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