Processamento de Imagens Segmentao Parte 1 Segmentao Segmentao

  • Slides: 42
Download presentation
Processamento de Imagens Segmentação (Parte 1)

Processamento de Imagens Segmentação (Parte 1)

Segmentação • Segmentação Análise de Imagem • “Divisão da imagem em partes com grande

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

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,

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 • Pode haver sobreposição de objetos. .

Classificação dos Métodos de Segmentação • Conhecimento global (histogram-based) • Baseada em bordas (Edge-based

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

“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

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

Exemplos de Thresholding

Thresholding • Objetos que não se tocam • nível distinto do fundo (background) •

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

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

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 Fundo: + claro Objetos: + escuros

Limiar Ótimo • Limiar escolhido como o nível de cinza mais próximo correspondente a

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

Algoritmo Isodata: Livro Sonka

Método de Otsu • Seleção do ponto mais baixo entre duas classes • Frequência

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

Método de Otsu • Variância entre classes • Substituindo temos • 0, 1 e 0, 1 são as freqüências e médias duas classes

Método de Otsu • A função que envolve a variância entre classes e a

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 B G

Limiarização Multi-Espectral R B G

Segmentação por Bordas • Depende de arestas das imagens localizados pelos operadores de bordas.

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

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

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

Seg. Bordas: Limiarização

Supressão de arestas • Uma imagem de arestas (edge image) apresenta borda ‘espessa’, mas

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 de aresta 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

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)

Achando a borda externa (pertencente ao fundo)

Borda externa (outer region border)

Borda externa (outer region border)

Seg. Bordas: Grafos de arestas • Quando existe conhecimento a priori da direção da

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 de

Busca em grafos de arestas Conhecendo a magnitude e direção em uma imagem de arestas, cada Pixel corresponde a um nó no grafo, cujo peso é a magnitude.

Angiografia coronariana Imagem de arestas borda encontrada por grafo

Angiografia coronariana Imagem de arestas borda encontrada por grafo

Seg. Bordas: Transformada Hough • Objetos têm tamanho e forma conhecidos – localizar áreas

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.

Transformada de Hough para um Círculo

Transformada de Hough para um Círculo

Seg. Bordas: Marr-Hildreth • 1970: importância dos contornos na interpretação de imagens • Operadores

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

Marr-Hildreth • Primeira derivada: extremo na posição da aresta • Segunda derivada: zero na mesma posição

1 a Derivada Aprox. numérica Máscaras 1 D Máscaras 2 D

1 a Derivada Aprox. numérica Máscaras 1 D Máscaras 2 D

a 2 Laplaciano Derivada Aprox. em 1 D Equivalente a: Aprox. 2 D

a 2 Laplaciano Derivada Aprox. em 1 D Equivalente a: Aprox. 2 D

Marr-Hildreth • Como computar a segunda derivada robustamente? 1) Suavizar a imagem (redução de

Marr-Hildreth • Como computar a segunda derivada robustamente? 1) Suavizar a imagem (redução de ruído). Operador Gaussiano 2 D 2) Detecção de bordas com Laplaciano

Marr-Hildreth • A segunda derivada de f(x, y) suavizada – Operador Laplace • isotrópico

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

Marr-Hildreth