técnicas de proc. imagens
DESCRIPTION
Técnicas de Proc. Imagens. Aplicações Fourier 2D. Transformada de Fourier 2D. Contínua Discreta. Exemplos de DFT/FFT 2D. f(x,y). y. x. Pulso / Sync 2D. Amplitude e Fase. |F(u,v)|. amplitude. fase. original. F(u,v). Rotação. Combinação Linear. - PowerPoint PPT PresentationTRANSCRIPT
Técnicas de Proc. Imagens
Aplicações Fourier 2D
Transformada de Fourier 2D
Contínua
Discreta
Exemplos de DFT/FFT 2D
2
4
6
8
10
12
14
16Spectra
Pulso / Sync 2D
xy
f(x,y)
Amplitude e Fase
original
amplitude
fase
|F(u,v)|
F(u,v)
Rotação
Combinação Linear
Relação de freqüência espaço/espectro
Alguns pares...
Aplicações da FT em imagens:
Filtros Gaussiana Marr-Hildreth Convolução Descritores de fourier
Filtrando sinais 1D
Exemplo de filtro para onda 1D
sinus1= 2*sin(nn/50+1); sinus2= 5*sin(nn/20+1); sinus3= sin(nn/3+1); sinus=sinus1+sinus2+sinus3;
Composição do sinal
sinal1
sinal2
sinal3
Sinal=1+2+3
Transformada de Fourier
f(t)
f(u)
f(t)
Matlab
nn=1:300;sinus1= 2*sin(nn/50+1);sinus2= 5*sin(nn/20+1);sinus3= sin(nn/3+1);sinus=sinus1+sinus2+sinus3;Hsinus= fft(sinus);figure(1)subplot (3,1,1), plot(nn,sinus);subplot (3,1,2), plot(nn,real(fftshift(Hsinus)),'r-',nn,imag(fftshift(Hsinus)),'g-');Fsinus= ifft(Hsinus);subplot (3,1,3), plot(nn,Fsinus);
Filtrando no espectro
Filtro baixa freq. F(u) = 0 | u = 1..13 | u = 288..300
Filtro alta freq.
F(u) = 0 | u = 5..296
MatlabNHsinus1=Hsinus;NHsinus2=Hsinus;for i=1:300, NHsinus2(i)=0;end;for i=1:4, NHsinus2(i)=Hsinus(i); NHsinus2(301-i)=Hsinus(301-i);end;for i=1:13, NHsinus1(i)=0; NHsinus1(301-i)=0;end;subplot(3,2,3), plot(nn,real(NHsinus1),'r-',nn,imag(NHsinus1),'g-');subplot(3,2,4), plot(nn,ifft(NHsinus1));subplot(3,2,5), plot(nn,real(NHsinus2),'r-',nn,imag(NHsinus2),'g-');subplot(3,2,6), plot(nn,ifft(NHsinus2));
Filtrando em 2D
Distribuição de freqüências em 2D
u=-N/2 u=0 u=N/2
v=N
/2
v
=0
v=-
N/2
D0
D(u,v)
Filtro passa baixa:
Filtro passa alta
Filtro passa banda
Exemplo:
Passa baixa - resultado
Matlab%%%%%%% espectro de aHa=fft2(a);%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Filtragem passa baixa%%%%%%%%%%%%%%%%%%%%%%%%%%%%Hpb=fftshift(fftshift(Ha).*circ);pb=ifft2(Hpb);%figure (1)subplot (1,2,1), mesh (real(pb));subplot (1,2,2), image(abs(real(pb)));
Passa alta - resultado
Matlab
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Filtragem passa alta%%%%%%%%%%%%%%%%%%%%%%%%%%%%Hpa=fftshift(fftshift(Ha).*icirc);pa=ifft2(Hpa);%figure (2)subplot (1,2,1), mesh (real(pa));subplot (1,2,2), image(abs(real(pa))*10);
Passa banda - resultado
Matlab
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Filtragem passa freq.%%%%%%%%%%%%%%%%%%%%%%%%%%%%Hpf=fftshift(fftshift(Ha).*anel);pf=ifft2(Hpf);%figure (3)subplot (1,2,1), mesh (real(pf));subplot (1,2,2), image(abs(real(pf))*10);
Efeito oscilatório
Gaussian Filter
2
22
2 2exp
21,
yxyxG
2
22
2 211exp
21,
kjkijiH
array 1212 is , where kkjiH
Gaussiano x butterworth
Butterworth– corte mais abrupto– ainda apresenta ruído oscilatório
Gaussiano– corte suave - maior blur– não apresenta ruído oscilatório
Comparação passa baixa
ideal
butterworth
gaussian
Exemplo quadrado:
Passa baixa
Passa alta
Filtrando Ruído
Gaussiana
Importante filtro em FT
Análise multiescala
Filtros derivativos
Gaussian Filter
2
22
2 2exp
21,
yxyxG
2
22
2 211exp
21,
kjkijiH
array 1212 is , where kkjiH
Filtro de Marr-Hildreth
Prova biológica– campos receptivos da retina de primatas
origem da cibernética
Livro -> Vision, David Marr
Marr-Hildreth2
22
22
22
32 2
21
yx
eyxG
0.0008 0.0066 0.0215 0.031 0.0215 0.0066 0.00080.0066 0.0438 0.0982 0.108 0.0982 0.0438 0.00660.0215 0.0982 0 -0.242 0 0.0982 0.0215
0.031 0.108 -0.242 -0.7979 -0.242 0.108 0.0310.0215 0.0982 0 -0.242 0 0.0982 0.02150.0066 0.0438 0.0982 0.108 0.0982 0.0438 0.00660.0008 0.0066 0.0215 0.031 0.0215 0.0066 0.0008
X
Y
Marr-Hildreth
Zero CrossingsDetection
I ImageG2*
IG *2 Edge Image
IG *2 Zero Crossings
Convolução
A propriedade mais importante da FT Muitos filtros digitais são
implementados em FT através desta propriedade
Conv. No espaço versus freqüência– Depende do tamanho da máscara o custo
computacional
h(t) H( f ) e g(t) G( f )
(h*g)(t) H( f )G( f )
Spectral Filtering: Radially Symmetric Filter
Low-pass Filterdemos/demo4freq_filtering/lowpass.m
u=-N/2 u=0 u=N/2v=
N/2
v=0
v
=-N
/2
D0
D(u,v)