Download presentation
Presentation is loading. Please wait.
1
第七章 傅利葉轉換 7.1 前言 傅利葉轉換是影像處理中重要的基礎,不但可以做到用其他方式無法得到的結果,也比其他方式來得有效率。
第七章 傅利葉轉換 7.1 前言 傅利葉轉換是影像處理中重要的基礎,不但可以做到用其他方式無法得到的結果,也比其他方式來得有效率。 傅利葉轉換還是執行線性空間濾波的另一種有效方式。 傅利葉轉換還可以用於擷取或處理特定影像頻率,在執行低通和高通濾波時能得到更精確的結果。
2
7.2 背景
3
圖 7.2 週期性函數可以寫成不同振幅和頻率的正弦波和餘弦波之總和。
4
7.2 背景 傅利葉級數(Fourier series) 其中
7.2 背景 傅利葉級數(Fourier series) 其中 f這就是(x) 的傅利葉級數展開(Fourier series expansion),也可用複數形式表示。
5
7.2 背景 若函數為非週期性,則可設T → ∞ 類似結果,則: 傅利葉轉換對組(Fourier transform pair)。
6
7.3 一維離散傅利葉轉換
7
7.3 一維離散傅利葉轉換 7.3.1 一維DFT 的定義 此定義也可以矩陣乘積來表示: 其中F 是一個N×N 的矩陣,定義如下:
8
7.3 一維離散傅利葉轉換 當N 給定後,我們可以定義: 範例 假設f = [1, 2, 3, 4],因此 N = 4。然後
9
7.3 一維離散傅利葉轉換
10
7.3 一維離散傅利葉轉換 反 DFT 若比較方程式(7.3) 與方程式(7.2),就會發現其實只有三點不同: 沒有縮放係數1/N。
7.3 一維離散傅利葉轉換 反 DFT 若比較方程式(7.3) 與方程式(7.2),就會發現其實只有三點不同: 沒有縮放係數1/N。 指數函數中的符號改為正號。 總和索引變數為u,而非x。
11
7.3 一維離散傅利葉轉換
12
7.3 一維離散傅利葉轉換
13
7.4 一維離散傅利葉轉換的特性 線性 平移 由DFT矩陣乘積的定義便可推論出此特性。
7.4 一維離散傅利葉轉換的特性 線性 由DFT矩陣乘積的定義便可推論出此特性。 假設 f 和g是相同長度的兩個向量,p和q為純量,令h = pf + qg 若F、G 及H 分別為f、g 與h 的DFT,則: 平移 將向量x的各個元素xn 乘以(−1)n,也就是每隔兩個元素改變其正負號。 假設這樣產生的向量為x‘,x’的DFT X‘若將左右兩邊互換,就和x的DFT x相等。
14
7.4 一維離散傅利葉轉換的特性 例子
15
7.4 一維離散傅利葉轉換的特性 注意:X的前四個元素是X1的末四個元素,反之亦然。
16
7.4 一維離散傅利葉轉換的特性 縮放 共軛對稱 旋積 公式中 k 為純量,且 F = f。
7.4 一維離散傅利葉轉換的特性 縮放 公式中 k 為純量,且 F = f。 此性質意味如果你將一個函數在 x 方向上放大,則其頻譜在 x 方向上便會縮小。 強度也會改變。 共軛對稱 旋積
17
7.4 一維離散傅利葉轉換的特性 快速傅利葉轉換
18
7.5 二維離散傅利葉轉換 在二維下,DFT 的輸入為矩陣,輸出為同樣大小的另一個矩陣。
19
二維傅利葉轉換的一些特性 相似性 DFT 當成空間濾波器使用 分離性
20
7.5.1 二維傅利葉轉換的一些特性 線性 旋積定理 要使用空間濾波器S對影像M進行旋積計算 簡單地說,旋積定理可寫成: 或
二維傅利葉轉換的一些特性 線性 旋積定理 要使用空間濾波器S對影像M進行旋積計算 將S 補零至與M 同大小,補零的結果記為S'。 計算M 和S' 的DFT,得到 (M) 和 (S')。 將兩個轉換的元素一個個相乘: 將結果帶入反轉轉換: 簡單地說,旋積定理可寫成: 或
21
二維傅利葉轉換的一些特性 DC係數 平移 DC 係數 DC 係數
22
7.5.1 二維傅利葉轉換的一些特性 共軛對稱 顯示DFT轉換的結果 fft,計算向量的DFT。 ifft,計算向量的反DFT。
二維傅利葉轉換的一些特性 共軛對稱 顯示DFT轉換的結果 fft,計算向量的DFT。 ifft,計算向量的反DFT。 fft2,計算矩陣的DFT。 ifft2,計算矩陣的反DFT。 fftshift,如圖7.7 所示,平移轉換。
23
7.6 MATLAB中的傅利葉轉換 範例7.6.1 DC 係數正是所有矩陣值的總和。
24
7.6 MATLAB中的傅利葉轉換 範例7.6.2
25
7.6 MATLAB中的傅利葉轉換 範例7.6.3
26
7.7 影像之傅利葉轉換
27
圖 7.10
28
圖 7.11
29
圖 7.12
30
圖 7.13 範例7.7.2
31
圖 7.14 範例7.7.3
32
圖 7.15 範例7.7.4
33
7.7 影像之傅利葉轉換
34
7.8 頻率域的濾波 7.8.1 理想濾波 低通濾波
35
圖 7.16
36
圖 7.17 D = 15
37
圖 7.18 D = 5 D = 30
38
7.8 頻率域的濾波 高通濾波
39
圖 7.19
40
圖 7.20
41
7.8.2 Butterworth 濾波 理想濾波器直接切除傅利葉轉換距中心某個距離外的部分。
這種截頻點的使用十分方便,但缺點是結果會產生不必要的瑕疵(波紋)。 要避免這種現象,可使用截頻點較不銳利的圓形當作濾波矩陣。
42
圖 7.21
43
圖 & 7.23
44
圖 7.24
45
圖 7.25
46
圖 7.26 >> bl = lbutter(c,15,1); >> cfbl = cf.*bl;
圖 7.26 >> bl = lbutter(c,15,1); >> cfbl = cf.*bl; >> figure, fftshow(cfbl, ’log’); >> cfbli = ifft2(cfbl); >> figure, fftshow(cfbli, ’abs’)
47
圖 7.27
48
高斯濾波 較寬的高斯函數、即較大的標準差,其最大值會比較小。
49
圖 7.28
50
圖 7.29
51
7.9 同態濾波 i (x, y)為照明(illumination), r(x, y)為反射(reflectance)
52
7.9 同態濾波
53
圖 7.32 function res=homfilt(im,cutoff,order,lowgain,highgain)
圖 7.32 function res=homfilt(im,cutoff,order,lowgain,highgain) % HOMFILT(IMAGE,FILTER) applies homomorphic filtering % to the image IMAGE % with the given parameters u=im2uint8(im/256); u(find(u==0))=1; l=log(double(u)); ft=fftshift(fft2(l)); f=hb_butter(im,cutoff,order,lowgain,highgain); b=f.*ft; ib=abs(ifft2(b)); res=exp(ib);
54
圖 7.33 >>i=imread(‘newborn.tif’);
圖 7.33 >>i=imread(‘newborn.tif’); >>r=[1:256]’*ones(1,256); >>x=double(i).*( *sin((r-32)/16)); >>imshow(i);figure;imshow(x/256);
55
圖 7.34 >>xh=homfilt(x,10,2,0.5,2); >>imshow(xh/16);
56
圖 7.35 >> a=imread('arch.tif'); >> figure;imshow(a);
圖 7.35 >> a=imread('arch.tif'); >> figure;imshow(a); >> a1=a(:,:,1); >> figure;imshow(a1); >> a2=double(a1); >> ah=homfilt(a2,128,2,0.5,2); >> figure;imshow(ah/14);
Similar presentations