View
86
Download
0
Category
Preview:
Citation preview
Antonio G. Thométhome@nce.ufrj.brSala – 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 ImagensTratamento da ImagemTratamento da Imagem -- FiltrosFiltros
2
Processamento de ImagensProcessamento de Imagens SumárioConceito de FiltragemFiltros DigitaisDomínio da Filtragem
Filtragem no Domínio da FreqüênciaFiltragem no Domínio Espacial
Tipos de FiltrosFiltros Lineares
Filtros Passa-baixasFiltros Passa-altasFiltros Passa-banda
Filtros Não LinearesNo domínio da freqüência
– Filtragem HomomórficaNo domínio do espaço
– Filtro de Mediana– Filtro de Ordem– Filtro de Moda– Filtros Detectores de Borda
Conceito de FiltragemFiltros DigitaisDomínio da Filtragem
Filtragem no Domínio da FreqüênciaFiltragem no Domínio Espacial
Tipos de FiltrosFiltros Lineares
Filtros Passa-baixasFiltros Passa-altasFiltros Passa-banda
Filtros Não LinearesNo domínio da freqüência
– Filtragem HomomórficaNo 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
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.
correção - é a remoção de características indesejáveis, emelhoria/realce - é a acentuação de características.
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.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
Filtros linearesSuavizam, 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
),(DvuDseDvuDse
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
nDvuDvuH 2
0]/),([11),(
+=
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
D0D(u,v)
H(u,v)H(u,v)
u
v
>≤
=0
0),(1),(0
),(DvuDseDvuDse
vuH
10
Processamento de ImagensProcessamento de Imagens
Filtros Lineares no Domínio da Freqüência
d) Filtro Passa-Altas – Filtro de Butterworth
nvuDDvuH 2
0 )],(/[11),(
+=
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üênciaExemplo: Filtro Passa-Altas
Freqüência de corte – D0 = 20
12
Processamento de ImagensProcessamento de Imagens
Filtros Lineares no Domínio da FreqüênciaExemplo: 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(),(
yxryxiyxfyxz+=
=
))},({ln())},({ln()},({ yxryxiyxz ℑ+ℑ=ℑ
15
Processamento de ImagensProcessamento de Imagens
Filtragem Não Linear no Domínio da Freqüência
Filtragem Homomórfica ...
),(),(),( vuRvuIvuZ +=
),(),(),(),(),(),(),(
vuRvuHvuIvuHvuZvuHvuS+=
=
)},(),({)},(),({
)},({),(11
1
vuTvuHvuIvuH
vuSyxs−−
−
ℑ+ℑ=
ℑ=
),(),()],('exp[)].,('exp[
)],(exp[),(
00 yxryxiyxryxi
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çoOs métodos de filtragem espacial operam diretamente sobre a matriz de pixels (imagem digitalizada); normalmente utilizam operações de convolução entre a imagem original e uma máscara especialmente construída;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çoFiltros 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ção do 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
iiniwzR
11
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
iiniwzR
11
w25w24w23w22w21
w20w19w18w17w16
w15w14w13w12w11
w10w9w8w7w6
w5w4w3w2w1
Máscara 5x5
25
Processamento de ImagensProcessamento de Imagens
Filtro Passa-baixas
Atenua (ou elimina) as altas freqüências que estão relacionadas com a informação de detalhes da imagem.
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.
A suavização tende também, pelas mesmas razões, a minimizar o efeito do ruído em imagens.
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
Filtros de média 3x3, 5x5 e 7x71 1 1 1 1 1 11 1 1 1 1 1 11 1 1 1 1 1 11 1 1 1 1 1 11 1 1 1 1 1 11 1 1 1 1 1 11 1 1 1 1 1 1
1 1 1 1 11 1 1 1 11 1 1 1 11 1 1 1 11 1 1 1 1
1 1 11 1 11 1 1
1/9 * 1/25 * 1/49 *
Substitui o valor do pixel original pela média aritmética do pixel dos seus vizinhos;Quanto maior a máscara, maior o efeito de borramento.Pesos positivosSoma 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
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
São usados quando os pesos são definidos em função de sua distância do peso central.Filtros de Média Ponderada de dimensão 3x3 são:
1/16 *1 2 12 4 21 2 1
1 1 11 2 11 1 1
1/10 *
29
Processamento de ImagensProcessamento de Imagens
Resultado da Aplicação do Filtro de Média Ponderada 3x3
1 1 11 2 11 1 1
1 2 12 4 21 2 1
Original
30
Processamento de ImagensProcessamento de Imagens
Filtro Passa-altas
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).
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.
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
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.
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
iiniwzR
11
• 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
Pesos positivos, negativos e nulosObserve 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
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
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.5Horizontais Verticais
-1 -1 2-1 2 -12 -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)
Seleciona um intervalo de freqüências do sinal (banda de freqüência) para ser realçado, removendo, ou atenuando componentes fora da faixa selecionadaSã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
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.
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.
É possível, também, em vez de tomar a mediana da vizinhança, escolher o valor máximo ou o valor de ordem qualquer.
Esta categoria de filtros é conhecida por filtros de ordem.
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)
Filtro de MedianaSuaviza a imagem sem diminuir sua resolução (borrar);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.
Filtro de OrdemOs 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.
Filtro de ModaOs 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çaElimina 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
Detecção de BordasDetectam características como bordas, linhas, curvas e manchasO problema da detecção de bordas é indicar uma mudança súbita donível de cinza entre duas regiões relativamente homogêneasA 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
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:
Operadores mais comuns:RobertsSobel
∇∇
=∇y
x
42
Processamento de ImagensProcessamento de Imagens
Operador RobertsÉ o mais antigo e mais simples algoritmo de detecção de bordas.Roberts introduziu a seguinte operação cruzada (módulo do gradiente):
Que deve ser comparado a um limiar.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
Este operador pode ser representado por duas componentes
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.
Uma desvantagem deste operador é a sua assimetriaDependendo da direção, certas bordas são mais realçadas que outras, mesmo tendo magnitude igual.
0-110
-1001
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
Mais sofisticado que o operador Roberts.É dado pela seguinte expressão:
Onde X e Y são as saídas dos filtros dados pelas seguintes máscaras
A máscara X detecta as variações no sentido horizontal e a máscara Y, no sentido vertical.
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-1000121
10-120-210-1
YX
46
Processamento de ImagensProcessamento de Imagens
Operador Sobel (continuação)
A detecção de bordas é obtida pela limiarização da magnitude do gradiente
Diferentes valores de limiar resultam em diferentes mapas de bordas.Se o limiar é muito baixo, muitos pontos são marcados como pontos de borda, resultando em bordas grossas ou muitos pontos de bordas isoladosSe 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
Semelhante ao operador SobelEncontra as bordas utilizando uma aproximação da derivada.Retorna as bordas onde o gradiente da imagem é máximo.É dado pela seguinte expressão:
Onde X e Y são as saídas dos filtros dados pelas seguintes máscaras
111000-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
22 yxf
yyxf
xyxf
∂
∂+
∂
∂=∇
LaplacianoContraste na borda Gradiente
)(2
2xf
x∂∂
)(xfx∂∂
)(xf
52
Processamento de ImagensProcessamento de Imagens
Operador Laplaciano
O Laplaciano de uma função bidimensional f(x,y) é uam derivada de segunda ordem definida por
A implementação desta equação na forma digital para o casode uma região 3x3 pode ser:
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 negativosComo o laplaciano é uma derivada, a soma dos coeficientestem 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
22
yf
xff
∂∂+
∂∂=∇
)(4 864252 zzzzzf +++−=∇
53
Processamento de ImagensProcessamento de Imagens
Máscara Espacial do Operador Laplaciano
A máscara espacial que pode ser usada na implementação da equação seria:
0-10-14-10-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
Encontra as bordas procurando por um máximo local do gradiente da imagemO gradiente é calculado a partir da derivada de um filtro gaussianoO 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 fortesEste 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
Recommended