7 4 DFT n Matlab conv function a1
第七章 傅利葉轉換 7. 4 一維DFT的特性 n 旋積:Matlab conv function >> a=[1 2 3 4]; >> b=[5 6 7 8]; >> conv(a, b) n ans = 5 n >> cconv(a, b) n ans = n n n 16 66 34 68 60 66 61 60 52 32
第七章 傅利葉轉換 7. 4 一維DFT的特性 n 旋積定理 >> fft(cconv(a, b)')=fft(a’). *fft(b’); ans = 1. 0 e+002 *2. 6000 0 - 0. 0800 i 0. 0400 0 + 0. 0800 i
第七章 傅利葉轉換 7. 7 影像之傅利葉轉換 n n >> a=[zeros(256, 128) ones(256, 128)]; >> imshow(im 2 uint 8(a/max(a(: )))); n >> af=fftshift(fft 2(a)); >> af 1=log(1+abs(af)); >> imshow(af 1/af 1(129, 129)); n >> imshow(mat 2 gray(log(1+abs(af)))) n n
第七章 傅利葉轉換 7. 7 影像之傅利葉轉換 n n n >> a(78: 178, 78: 178)=1; >> imshow(a); >> af=fftshift(fft 2(a)); log abs n n >> figure, fftshow(af, 'abs') >> figure, fftshow(af, 'log')
第七章 傅利葉轉換 7. 7 影像之傅利葉轉換 n n n >> [x, y]=meshgrid(1: 256, 1: 256); >> b=(x+y<329)&(x+y>182)&(x-y>-67)&(xy<73); >> imshow(b); >> bf=fftshift(fft 2(b)); >> figure, fftshow(bf)
第七章 傅利葉轉換 7. 7 影像之傅利葉轉換 n n meshgrid: Generate F and G matrices for three-dimensional plots >> [F, G] = meshgrid(1: 3, 1: 3)
第七章 傅利葉轉換 7. 7 影像之傅利葉轉換 n n n >> [x, y]=meshgrid(-128: 127, -128: 127); >> z=sqrt(x. ^2+y. ^2); >> c=(z<15); >> cf=fftshift(fft 2(c)); >> fftshow(cf, 'log') >> imshow(c);
第七章 傅利葉轉換 7. 8頻率域的濾波 n n >> cm=imread('cameraman. tif'); >> cf=fftshift(fft 2(double(cm))); >> figure, fftshow(cf, 'log') >> figure; imshow(cm); >> [x, y]=meshgrid(-128: 127, -128: 127); >> z=sqrt(x. ^2+y. ^2); >> c=(z<15); >> imshow(c) D =14
第七章 傅利葉轉換 7. 8頻率域的濾波 n n >> cf 1=cf. *c; >> figure, fftshow(cf 1, 'log') >> cfli=ifft 2(cf 1); >> figure, fftshow(cfli, 'abs')
第七章 傅利葉轉換 7. 8頻率域的濾波 n Butterworth 濾波:n 為濾波函數的階數 Butterworth Low-pass Filter Butterworth High-pass Filter n n n >> [x, y]=meshgrid(-128: 127, -128: 127); >> b 1=1. /(1+((x. ^2+y. ^2)/15). ^2); >> imshow(b 1);
- Slides: 46