Baixe o app para aproveitar ainda mais
Prévia do material em texto
Antonio G. Thomé thome@nce.ufrj.br Sala – AEP/1033 Processamento de ImagensProcessamento de Imagens Universidade Federal do Rio de JaneiroUniversidade Federal do Rio de Janeiro -- IM/DCC & NCEIM/DCC & NCE Processamento de ImagensProcessamento de Imagens Tratamento da ImagemTratamento da Imagem -- FiltrosFiltros 2 Processamento de ImagensProcessamento de Imagens Sumário z Conceito de Filtragem z Filtros Digitais z Domínio da Filtragem 9 Filtragem no Domínio da Freqüência 9 Filtragem no Domínio Espacial z Tipos de Filtros 9 Filtros Lineares Filtros Passa-baixas Filtros Passa-altas Filtros Passa-banda 9 Filtros Não Lineares No domínio da freqüência – Filtragem Homomórfica No domínio do espaço – Filtro de Mediana – Filtro de Ordem – Filtro de Moda – Filtros Detectores de Borda z Conceito de Filtragem z Filtros Digitais z Domínio da Filtragem 9 Filtragem no Domínio da Freqüência 9 Filtragem no Domínio Espacial z Tipos de Filtros 9 Filtros Lineares Filtros Passa-baixas Filtros Passa-altas Filtros Passa-banda 9 Filtros Não Lineares No domínio da freqüência – Filtragem Homomórfica No domínio do espaço – Filtro de Mediana – Filtro de Ordem – Filtro de Moda – Filtros Detectores de Borda 3 Processamento de ImagensProcessamento de Imagens Filtragem Digital z Consiste na aplicação de técnicas de transformação (operadores – máscaras) com o objetivo de corrigir, suavizar ou realçar determinadas características de uma imagem dentro de uma aplicação específica. 9 correção - é a remoção de características indesejáveis, e 9 melhoria/realce - é a acentuação de características. z A filtragem é realizada pixel a pixel, onde o novo nível de cinza de um ponto P qualquer depende do seu nível de cinza original e do de outros pontos considerados como vizinhança de P. 9 Em geral, os pontos mais próximos de P contribuem mais para o novo valor do nível de cinza do que os pontos mais afastados 4 Processamento de ImagensProcessamento de Imagens Domínio da Filtragem • Domínio Espacial São procedimentos que operam diretamente sobre os pixels da imagem na sua forma original. • Domínio da Freqüência São procedimentos que operam sobre a Transformada de Fourier da imagem original. 5 Processamento de ImagensProcessamento de Imagens Tipos de Filtros z Filtros lineares Suavizam, realçam detalhes da imagem e minimizam efeitos de ruído, sem alterar o nível médio de cinza da imagem. • Filtros não-lineares Aplicam transformações sem o compromisso de manterem o nível médio de cinza da imagem original. 6 Processamento de ImagensProcessamento de Imagens Filtros Lineares • no domínio do espaço: convoluçãog(x,y)f(x,y) h(x,y) g(x,y)= h(x,y) * f(x,y) • no domínio da freqüência: produtoG(u,v)H(u,v)F(u,v) G(u,v)= H(u,v) . F(u,v) (*) h(x,y) ou H(u,v) são os operadores ou máscaras 7 Processamento de ImagensProcessamento de Imagens Filtros Lineares no Domínio da Freqüência a) Filtro Passa-baixas – Filtro Ideal Deixa passar apenas as componentes de mais baixa freqüência (atenuam o contraste). v u H(u,v) H(u,v) D(u,v)D0 > ≤= 0 0 ),(0 ),(1 ),( DvuDse DvuDse vuH )(),( 22 vuvuD += freqüência de corte 8 Processamento de ImagensProcessamento de Imagens Filtros Lineares no Domínio da Freqüência b) Filtro Passa-baixas – Filtro de Butterworth nDvuD vuH 2 0]/),([1 1),( += u v H(u,v) Filtro de Butterworth para n=1 As componentes de freqüência são quase exponencialmente reduzidas a medida que a distância D(u,v) fica maior que a freqüência de corte. 9 Processamento de ImagensProcessamento de Imagens Filtros Lineares no Domínio da Freqüência c) Filtro Passa-Altas – Filtro Ideal 1 D0 D(u,v) H(u,v)H(u,v) u v > ≤= 0 0 ),(1 ),(0 ),( DvuDse DvuDse vuH 10 Processamento de ImagensProcessamento de Imagens Filtros Lineares no Domínio da Freqüência d) Filtro Passa-Altas – Filtro de Butterworth nvuDD vuH 2 0 )],(/[1 1),( += u v H(u,v) As componentes de freqüência são quase exponencialmente reduzidas a medida que a distância D(u,v) fica menor que a freqüência de corte. 11 Processamento de ImagensProcessamento de Imagens Filtros Lineares no Domínio da Freqüência Exemplo: Filtro Passa-Altas Freqüência de corte – D0 = 20 12 Processamento de ImagensProcessamento de Imagens Filtros Lineares no Domínio da Freqüência Exemplo: Filtro Passa-Baixas Espectro de Fourier Imagem de 512x512 pixels Raios iguais a 8, 18, 43, 78 e 152 - 90, 93, 95, 99 e 99,5% da potência da imagem 13 Processamento de ImagensProcessamento de Imagens Original Passa-baixas – D0 = 8 Passa-baixas – D0 = 152 Passa-baixas – D0 = 18 Passa-baixas – D0 = 78Passa-baixas – D0 = 43 14 Processamento de ImagensProcessamento de Imagens Filtragem Não Linear no Domínio da Freqüência Filtragem Homomórfica Trata-se de uma abordagem que busca operar sobre as componentes de iluminação e reflectância separadamente. ),().,(),( yxryxiyxf = )},({)},({)},({ yxryxiyxf ℑℑ≠ℑ )),(ln()),(ln( )),(ln(),( yxryxi yxfyxz += = ))},({ln())},({ln()},({ yxryxiyxz ℑ+ℑ=ℑ 15 Processamento de ImagensProcessamento de Imagens Filtragem Não Linear no Domínio da Freqüência Filtragem Homomórfica ... ),(),(),( vuRvuIvuZ += ),(),(),(),( ),(),(),( vuRvuHvuIvuH vuZvuHvuS += = )},(),({)},(),({ )},({),( 11 1 vuTvuHvuIvuH vuSyxs −− − ℑ+ℑ= ℑ= ),(),( )],('exp[)].,('exp[ )],(exp[),( 00 yxryxi yxryxi yxsyxg = = = 16 Processamento de ImagensProcessamento de Imagens Filtragem Não Linear no Domínio da Freqüência Filtragem Homomórfica ... f(x,y) ln() FFT exp()H(u,v) (FFT)-1 g(x,y) • A componente de iluminação de uma imagem é geralmente caracterizada por variações espaciais lentas; • A reflectância tende a variar abruptamente, particularmente na junção de objetos diferentes. O filtro homomórfico oferece uma forma de operar sobre esses componentes separadamente. Assim, os efeitos da iluminação ficam associados às baixas freqüências e os da reflectância às altas freqüências O filtro homomórfico oferece uma forma de operar sobre esses componentes separadamente. Assim, os efeitos da iluminação ficam associados às baixas freqüências e os da reflectância às altas freqüências 17 Processamento de ImagensProcessamento de Imagens Filtragem Homomórfica Exemplo: Freqüência de corte – D0 = 20 18 Processamento de ImagensProcessamento de Imagens Filtragem Homomórfica 19 Processamento de ImagensProcessamento de Imagens Filtragem Linear no Domínio do Espaço z Os métodos de filtragem espacial operam diretamente sobre a matriz de pixels (imagem digitalizada); z normalmente utilizam operações de convolução entre a imagem original e uma máscara especialmente construída; z As máscaras são chamadas de filtros espaciais. Como no domínio da freqüência as máscaras podem implementar filtros: • Passa-Baixas – para suavizar a imagem; • Passa-Altas – para realçar bordas; • Passa-Banda – para remover freqüências baixas e altas. 20 Processamento de ImagensProcessamento de Imagens Filtragem Linear no Domínio do Espaço Filtros no Domínio da Freqüência 1 1 1 Passa-Altas Passa-BandaPassa-Baixas 0 Filtros no Domínio Espacial 21 Processamento de ImagensProcessamento de Imagens O Processo de Filtragem Espacial ¾ Consiste na aplicação sucessiva de máscara que desliza sobre toda a imagem original; ¾ Ao ser aplicada com centro numa posição (i,j), sendo i o número de uma dada linha e j o número de uma dada coluna da imagem, consiste na substituiçãodo valor do pixel na posição (i,j) por um novo valor o qual depende dos valores dos pixels vizinhos e dos pesos da máscara. ¾ À cada posição da máscara está associado um valor numérico, chamado de peso ou coeficiente. ¾ Em cada posição (i,j), os pesos do filtro são multiplicados pelos NCs dos pixels correspondentes e somados, resultando em um novo valor de NC, que substitui o antigo NC do pixel central. 22 Processamento de ImagensProcessamento de Imagens O Processo de Filtragem Espacial w25w24w23w22w21 w20w19w18w17w16 w15w14w13w12w11 w10w9w8w7w6 w5w4w3w2w1 Máscara 5x5 R ∑ = +−= n i iniwzR 1 1 23 Processamento de ImagensProcessamento de Imagens O Processo de Filtragem Espacial ¾ Na operação de filtragem deve-se calcular os pontos pertencentes à borda da imagem de modo diferente dos demais, já que estes não dispõem de todos os vizinhos. ¾ Por questões de simetria usam-se, na definição das máscaras dos filtros, janelas N x N, onde N é um número ímpar. ¾ Por questões de eficiência computacional, preferem-se valores pequenos para N (no máximo 7). 24 Processamento de ImagensProcessamento de Imagens O Processo de Filtragem Espacial R ∑ = +−= n i iniwzR 1 1 w25w24w23w22w21 w20w19w18w17w16 w15w14w13w12w11 w10w9w8w7w6 w5w4w3w2w1 Máscara 5x5 25 Processamento de ImagensProcessamento de Imagens Filtro Passa-baixas z Atenua (ou elimina) as altas freqüências que estão relacionadas com a informação de detalhes da imagem. z O efeito visual de um filtro passa-baixas é o de suavização (smoothing) da imagem uma vez que as altas freqüências, que correspondem às transições abruptas, são atenuadas. z A suavização tende também, pelas mesmas razões, a minimizar o efeito do ruído em imagens. z A filtragem passa-baixas tem, por outro lado, o efeito indesejado de diminuir a resolução da imagem, provocando assim, um leve borramento. Ou seja, diminui a nitidez e a definição da imagem. 26 Processamento de ImagensProcessamento de Imagens Exemplo Filtro Passa-baixa – Filtro de Média z Filtros de média 3x3, 5x5 e 7x7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1/9 * 1/25 * 1/49 * z Substitui o valor do pixel original pela média aritmética do pixel dos seus vizinhos; z Quanto maior a máscara, maior o efeito de borramento. z Pesos positivos z Soma dos pesos igual a 1 – não altera a média 27 Processamento de ImagensProcessamento de Imagens Resultado da Aplicação do Filtro de Média 3x3 z Os ruídos foram reduzidos, porém a imagem filtrada apresenta-se borrada 28 Processamento de ImagensProcessamento de Imagens Exemplo Filtro Passa-baixas – Filtro de Média Ponderada z São usados quando os pesos são definidos em função de sua distância do peso central. z Filtros de Média Ponderada de dimensão 3x3 são: 1/16 * 1 2 1 2 4 2 1 2 1 1 1 1 1 2 1 1 1 1 1/10 * 29 Processamento de ImagensProcessamento de Imagens Resultado da Aplicação do Filtro de Média Ponderada 3x3 1 1 1 1 2 1 1 1 1 1 2 1 2 4 2 1 2 1 Original 30 Processamento de ImagensProcessamento de Imagens Filtro Passa-altas z Atenuam ou eliminam as baixas freqüências, realçando as altas freqüências e são normalmente usados para realçar os detalhes na imagem (agudização – sharpening). z Para filtros passa-altas, o efeito obtido é, em geral, o de tornar mais nítidas as transições entre regiões diferentes, conhecidas como bordas, realçando o contraste. z O efeito indesejado destes filtros é o de enfatizar o ruído presente na imagem. 31 Processamento de ImagensProcessamento de Imagens Filtro Passa-altas Básico z O formato da resposta de um filtro passa-altas deve ser tal que a máscara correspondente apresente coeficientes positivos nas proximidades de seu centro e negativos longe deles. 9 Exemplo - máscara 5x5, reforça o contraste que porventura exista entre os pixels centrais e os da periferia. -1-1-1-1-1 -1111-1 -1181-1 -1111-1 -1-1-1-1-1 ∑ = +−= n i iniwzR 1 1 • se homogênea tende a zero 32 Processamento de ImagensProcessamento de Imagens Exemplos de Filtros Passa-altas 0 -1 0 -1 4 -1 0 -1 0 -1 -1 -1 -1 8 -1 -1 -1 -1 1 -2 1 -2 4 -2 1 -2 1 z Pesos positivos, negativos e nulos z Observe que a soma algébrica da máscara é zero, o que significa que quando aplicada a regiões homogêneas de uma imagem, o resultado será zero ou um valor muito baixo. 33 Processamento de ImagensProcessamento de Imagens Resultado da Aplicação do Filtro Passa-altas 3x3 -1 -1 -1 -1 8 -1 -1 -1 -1 z A máscara foi aplicada a imagem original (esquerda) resultando a imagem da direita 34 Processamento de ImagensProcessamento de Imagens Filtros Passa-altas Direcionais ¾ Os filtros passa-alta direcionais (realce de bordas) realçam a cena, segundo direções preferenciais de interesse, definidas pelas máscaras. ¾ A seguir estão algumas máscaras utilizadas para realçar bordas em vários sentidos. ¾ O nome dado às máscaras indica a direção ortogonal preferencial em que será realçado o limite de borda. Assim, a máscara norte realça limites horizontais 35 Processamento de ImagensProcessamento de Imagens Exemplos de Filtros Passa-altas Direcionais 1 1 1 1 -1 1 -1 -1 -1 -1 1 1 -1 -1 1 -1 1 1 -1 -1 -1 1 -1 1 1 1 1 1 1 -1 1 -1 -1 1 1 -1 Norte Leste Sul Oeste 1 1 1 -1 -1 1 -1 -1 1 -1 -1 1 -1 -1 1 1 1 1 1 -1 -1 1 -1 -1 1 1 1 1 1 1 1 -1 -1 1 -1 -1 Nordeste Sudeste Sudoeste Noroeste 36 Processamento de ImagensProcessamento de Imagens Exemplos de Filtros Passa-altas z Linhas, em imagens, podem ser detectadas através das máscaras: -0.5 1 -0.5 -0.5 1 -0.5 -0.5 1 -0.5 -0.5 -0.5 -0.5 1 1 1 -0.5 -0.5 -0.5 Horizontais Verticais -1 -1 2 -1 2 -1 2 -1 -1 2 -1 -1 -1 2 -1 -1 -1 2 +45o Diagonal -45o 37 Processamento de ImagensProcessamento de Imagens Filtro Passa-banda (ou Passa-faixa) z Seleciona um intervalo de freqüências do sinal (banda de freqüência) para ser realçado, removendo, ou atenuando componentes fora da faixa selecionada z São de pouca utilidade prática, a menos de algumas tarefas específicas em restauração de imagens 1 f Resposta em freqüência Filtro correspondente no domínio espacial 0 t 38 Processamento de ImagensProcessamento de Imagens Filtragem Não-Linear no Domínio Espacial z Um exemplo típico de filtro passa-baixas não-linear é o filtro da mediana, que suaviza a imagem sem contudo diminuir sua resolução. z No filtro da mediana, os pontos da vizinhança de (x,y), dentro de uma janela na imagem, são ordenados e tomado como novo valor para (x,y) o valor mediano desta ordenação. z É possível, também, em vez de tomar a mediana da vizinhança, escolher o valor máximo ou o valor de ordem qualquer. z Esta categoria de filtros é conhecida por filtros de ordem. z Uma alternativa que produz resultados interessantes é tomar o valor mais freqüente de uma vizinhança - a "moda", que elimina ruídos pontuais sem alterar muito as informações da imagem. 39 Processamento de ImagensProcessamento de Imagens Exemplos de Filtro Não-Linear (Passa-baixas) z Filtro de Mediana 9 Suaviza a imagem sem diminuir sua resolução (borrar); 9 Os pontos da vizinhança de (x,y), dentro de uma janela da imagem, são ordenados e tomado como novo valor para (x,y) o valor mediano desta ordenação. z Filtro de Ordem 9 Os pontos da vizinhança de (x,y), dentro de uma janela da imagem,são ordenados e tomado como novo valor para (x,y) o valor máximo ou o valor de uma ordem qualquer desta ordenação. z Filtro de Moda 9 Os pontos da vizinhança de (x,y), dentro de uma janela da imagem, são ordenados e tomado como novo valor para (x,y) o valor mais freqüente da vizinhança 9 Elimina ruídos pontuais, sem alterar muito as informações da imagem. 40 Processamento de ImagensProcessamento de Imagens Exemplos de Filtros Não-Lineares • Imagem original • Imagem com ruído aditivo • Filtro de média • Filtro de mediana 41 Processamento de ImagensProcessamento de Imagens Filtros Não Lineares – Detectores de Bordas z Detecção de Bordas 9 Detectam características como bordas, linhas, curvas e manchas 9 O problema da detecção de bordas é indicar uma mudança súbita do nível de cinza entre duas regiões relativamente homogêneas 9 A maioria dos operadores de detecção de bordas baseia-se numa filtragem passa-altas seguida de um processo de limiarização: Se a saída do filtro ultrapassar o limiar, uma borda local é detectada, caso contrário a borda não é detectada 9 Para se obter uma detecção de bordas independente da direção, pode- se efetuar uma filtragem espacial em duas direções ortogonais, vertical (y) e horizontal (x). Estes dois resultados constituirão as componentes de um vetor gradiente: 9 Operadores mais comuns: Roberts Sobel ∇ ∇=∇ y x 42 Processamento de ImagensProcessamento de Imagens Operador Roberts z É o mais antigo e mais simples algoritmo de detecção de bordas. z Roberts introduziu a seguinte operação cruzada (módulo do gradiente): z Que deve ser comparado a um limiar. z Devido ao custo computacional, as operações de elevar ao quadrado e raiz quadrada são, muitas vezes substituídas pelo valor absoluto das diferenças cruzadas )1,(),1()1,1(),(),( +−++++−= yxfyxfyxfyxfyxg [ ] [ ] 2/122 )1,(),1()1,1(),(),( +−++++−= yxfyxfyxfyxfyxg 43 Processamento de ImagensProcessamento de Imagens Operador Roberts z Este operador pode ser representado por duas componentes z Como resultado de sua aplicação, obtém-se uma imagem com altos valores de nível de cinza, em regiões de contrastes bem definidos e valores baixos em regiões de pouco contraste, sendo 0 para regiões de nível de cinza constante. z Uma desvantagem deste operador é a sua assimetria 9 Dependendo da direção, certas bordas são mais realçadas que outras, mesmo tendo magnitude igual. 0-1 10 -10 01 Componente horizontal Componente horizontal 44 Processamento de ImagensProcessamento de Imagens Efeito da Aplicação do Operador Roberts 45 Processamento de ImagensProcessamento de Imagens Operador Sobel z Mais sofisticado que o operador Roberts. z É dado pela seguinte expressão: 9 Onde X e Y são as saídas dos filtros dados pelas seguintes máscaras 9 A máscara X detecta as variações no sentido horizontal e a máscara Y, no sentido vertical. z O operador gradiente de Sobel tem a propriedade de realçar linhas verticais e horizontais mais escuras que o fundo, sem realçar pontos isolados 22),( YXyxg += -1-2-1 000 121 10-1 20-2 10-1 YX 46 Processamento de ImagensProcessamento de Imagens Operador Sobel (continuação) z A detecção de bordas é obtida pela limiarização da magnitude do gradiente 9 Diferentes valores de limiar resultam em diferentes mapas de bordas. 9 Se o limiar é muito baixo, muitos pontos são marcados como pontos de borda, resultando em bordas grossas ou muitos pontos de bordas isolados 9 Se o limiar é alto, os segmentos aparecerão finos e quebrados (sem continuidade da borda) 47 Processamento de ImagensProcessamento de Imagens Efeito da Aplicação do Operador Sobel 48 Processamento de ImagensProcessamento de Imagens Operador Prewitt z Semelhante ao operador Sobel z Encontra as bordas utilizando uma aproximação da derivada. z Retorna as bordas onde o gradiente da imagem é máximo. z É dado pela seguinte expressão: 9 Onde X e Y são as saídas dos filtros dados pelas seguintes máscaras 111 000 -1-1-1 -101 -101 -101 22),( YXyxg += X Y 49 Processamento de ImagensProcessamento de Imagens Efeito da Aplicação do Operador Prewitt 50 Processamento de ImagensProcessamento de Imagens Prewitt x Sobel • Imagem Original • Sobel • Prewitt 51 Processamento de ImagensProcessamento de Imagens Filtro Laplaciano É um operador escalar baseado na derivada de 2a ordem. ),(),(),( 2 2 2 2 2 yxf y yxf x yxf ∂ ∂+∂ ∂=∇ LaplacianoContraste na borda Gradiente )(2 2 xf x∂ ∂ )(xf x∂ ∂ )(xf 52 Processamento de ImagensProcessamento de Imagens Operador Laplaciano z O Laplaciano de uma função bidimensional f(x,y) é uam derivada de segunda ordem definida por z A implementação desta equação na forma digital para o caso de uma região 3x3 pode ser: z A exigência para a definição do laplaciano digital é que o coeficiente associado com o pixel central seja positivo e que os pixels externos sejam negativos z Como o laplaciano é uma derivada, a soma dos coeficientes tem que ser nula (toda a vez que o ponto em questão e seus vizinhos tiverem o mesmo valor, a resposta será nula) 2 2 2 2 2 y f x ff ∂ ∂+∂ ∂=∇ )(4 86425 2 zzzzzf +++−=∇ 53 Processamento de ImagensProcessamento de Imagens Máscara Espacial do Operador Laplaciano z A máscara espacial que pode ser usada na implementação da equação seria: 0-10 -14-1 0-10 O Laplaciano é um operador linear, invariante à translação e sua função de transferência é zero na origem do espaço de freqüência. 54 Processamento de ImagensProcessamento de Imagens Efeito da Aplicação do Operador Laplaciano da Gaussiana 55 Processamento de ImagensProcessamento de Imagens Operador Canny z Encontra as bordas procurando por um máximo local do gradiente da imagem z O gradiente é calculado a partir da derivada de um filtro gaussiano z O método usa dois limiares para detectar bordas fortes e fracas e inclui as bordas fracas na saída somente quando elas estiverem conectadas a bordas fortes z Este método é menos sensível a ruídos dos que os demais e mais provável de detectar bordas fracas 56 Processamento de ImagensProcessamento de Imagens Efeito da Aplicação do Operador Canny 57 Processamento de ImagensProcessamento de Imagens Sobel Canny Original Roberts Prewitt Laplaciano Universidade Federal do Rio de Janeiro-IM/DCC & NCE Sumário Tipos de Filtros Filtros Lineares Filtros Lineares no Domínio da Freqüência Filtros Lineares no Domínio da Freqüência Filtragem Linear no Domínio do Espaço O Processo de Filtragem Espacial Filtro Passa-baixas Filtro Passa-altas Exemplos de Filtros Passa-altas Direcionais Exemplos de Filtros Passa-altas Filtro Passa-banda (ou Passa-faixa) Filtragem Não-Linear no Domínio Espacial Exemplos de Filtro Não-Linear (Passa-baixas) Filtros Não Lineares – Detectores de Bordas Operador Roberts Operador Roberts Efeito da Aplicação do Operador Roberts Operador Sobel Operador Sobel (continuação) Efeito da Aplicação do Operador Sobel Operador Prewitt Efeito da Aplicação do Operador Prewitt Operador Laplaciano Máscara Espacial do Operador Laplaciano Efeito da Aplicação do Operador Laplaciano da Gaussiana Operador Canny Efeito da Aplicação do Operador Canny
Compartilhar