第七章 傅利葉轉換 7.1 前言

56
1 第第第 第第第第第 7.1 第第 • 傅傅傅傅傅傅傅傅傅傅傅傅傅傅傅傅 傅傅傅傅傅傅傅傅傅傅傅傅傅傅傅傅 傅傅 傅傅傅傅傅傅傅傅傅傅傅傅 ,。 • 傅傅傅傅傅傅傅傅傅傅傅傅傅傅傅傅傅 傅傅傅傅傅傅 一。 • 傅傅傅傅傅傅傅傅傅傅傅傅傅傅傅傅傅傅傅傅傅 傅傅傅傅傅傅傅傅傅傅傅 傅傅傅傅傅傅傅傅傅

description

第七章 傅利葉轉換 7.1 前言. 傅利葉轉換是影像處理中重要的基礎,不但可以做到用其他方式無法得到的結果,也比其他方式來得有效率。 傅利葉轉換還是執行線性空間濾波的另一種有效方式。 傅利葉轉換還可以用於擷取或處理特定影像頻率,在執行低通和高通濾波時能得到更精確的結果。. 7.2 背景. 圖 7.2. 週期性函數可以寫成不同振幅和頻率的正弦波和餘弦波之總和。. 7.2 背景. 傅利葉級數 ( Fourier series ) 其中. - PowerPoint PPT Presentation

Transcript of 第七章 傅利葉轉換 7.1 前言

Page 1: 第七章 傅利葉轉換 7.1   前言

1

第七章 傅利葉轉換7.1 前言

• 傅利葉轉換是影像處理中重要的基礎,不但可以做到用其他方式無法得到的結果,也比其他方式來得有效率。

• 傅利葉轉換還是執行線性空間濾波的另一種有效方式。

• 傅利葉轉換還可以用於擷取或處理特定影像頻率,在執行低通和高通濾波時能得到更精確的結果。

Page 2: 第七章 傅利葉轉換 7.1   前言

2

7.2 背景

Page 3: 第七章 傅利葉轉換 7.1   前言

3

圖 7.2

• 週期性函數可以寫成不同振幅和頻率的正弦波和餘弦波之總和。

Page 4: 第七章 傅利葉轉換 7.1   前言

4

7.2 背景

• 傅利葉級數( Fourier series )

其中

• f 這就是 (x) 的傅利葉級數展開( Fourier series expansion ),也可用複數形式表示。

Page 5: 第七章 傅利葉轉換 7.1   前言

5

7.2 背景

• 若函數為非週期性,則可設 T → ∞ 類似結果,則:

• 傅利葉轉換對組( Fourier transform pair )。

Page 6: 第七章 傅利葉轉換 7.1   前言

6

7.3 一維離散傅利葉轉換

Page 7: 第七章 傅利葉轉換 7.1   前言

7

7.3 一維離散傅利葉轉換

• 7.3.1 一維 DFT 的定義

此定義也可以矩陣乘積來表示:

其中 F 是一個 N×N 的矩陣,定義如下:

Page 8: 第七章 傅利葉轉換 7.1   前言

8

7.3 一維離散傅利葉轉換

當 N 給定後,我們可以定義:

範例 7.3.1 假設 f = [1, 2, 3, 4] ,因此 N = 4 。然後

Page 9: 第七章 傅利葉轉換 7.1   前言

9

7.3 一維離散傅利葉轉換

Page 10: 第七章 傅利葉轉換 7.1   前言

10

7.3 一維離散傅利葉轉換

• 反 DFT

– 若比較方程式 (7.3) 與方程式 (7.2) ,就會發現其實只有三點不同:1. 沒有縮放係數 1/N 。2. 指數函數中的符號改為正號。3. 總和索引變數為 u ,而非 x 。

Page 11: 第七章 傅利葉轉換 7.1   前言

11

7.3 一維離散傅利葉轉換

Page 12: 第七章 傅利葉轉換 7.1   前言

12

7.3 一維離散傅利葉轉換

Page 13: 第七章 傅利葉轉換 7.1   前言

13

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相等。

Page 14: 第七章 傅利葉轉換 7.1   前言

14

7.4 一維離散傅利葉轉換的特性

• 例子

Page 15: 第七章 傅利葉轉換 7.1   前言

15

7.4 一維離散傅利葉轉換的特性

注意: X的前四個元素是 X1的末四個元素,反之亦然。

Page 16: 第七章 傅利葉轉換 7.1   前言

16

• 縮放– 公式中 k 為純量,且 F = f 。– 此性質意味如果你將一個函數在 x 方向上放大,則其頻譜在 x 方向上便會縮小。

– 強度也會改變。

7.4 一維離散傅利葉轉換的特性

• 共軛對稱• 旋積

Page 17: 第七章 傅利葉轉換 7.1   前言

17

7.4 一維離散傅利葉轉換的特性

• 快速傅利葉轉換

Page 18: 第七章 傅利葉轉換 7.1   前言

18

7.5 二維離散傅利葉轉換

• 在二維下, DFT 的輸入為矩陣,輸出為同樣大小的另一個矩陣。

Page 19: 第七章 傅利葉轉換 7.1   前言

19

7.5.1 二維傅利葉轉換的一些特性

• 相似性• DFT 當成空間濾波器使用• 分離性

Page 20: 第七章 傅利葉轉換 7.1   前言

20

7.5.1 二維傅利葉轉換的一些特性

• 線性• 旋積定理

– 要使用空間濾波器 S 對影像 M 進行旋積計算1. 將 S 補零至與 M 同大小,補零的結果記為 S' 。2. 計算 M 和 S' 的 DFT ,得到 (M) 和 (S') 。3. 將兩個轉換的元素一個個相乘:4. 將結果帶入反轉轉換:

– 簡單地說,旋積定理可寫成: 或

Page 21: 第七章 傅利葉轉換 7.1   前言

21

7.5.1 二維傅利葉轉換的一些特性

• DC 係數

• 平移DC 係數

DC 係數

Page 22: 第七章 傅利葉轉換 7.1   前言

22

7.5.1 二維傅利葉轉換的一些特性

• 共軛對稱

• 顯示 DFT 轉換的結果

fft,計算向量的 DFT 。ifft,計算向量的反 DFT 。fft2,計算矩陣的 DFT 。ifft2,計算矩陣的反 DFT 。fftshift,如圖 7.7 所示,平移轉換。

Page 23: 第七章 傅利葉轉換 7.1   前言

23

7.6 MATLAB中的傅利葉轉換

• 範例 7.6.1

DC 係數正是所有矩陣值的總和。

Page 24: 第七章 傅利葉轉換 7.1   前言

24

7.6 MATLAB中的傅利葉轉換

• 範例 7.6.2

Page 25: 第七章 傅利葉轉換 7.1   前言

25

7.6 MATLAB中的傅利葉轉換

• 範例 7.6.3

Page 26: 第七章 傅利葉轉換 7.1   前言

26

7.7 影像之傅利葉轉換

Page 27: 第七章 傅利葉轉換 7.1   前言

27

圖 7.10

Page 28: 第七章 傅利葉轉換 7.1   前言

28

圖 7.11

Page 29: 第七章 傅利葉轉換 7.1   前言

29

圖 7.12

Page 30: 第七章 傅利葉轉換 7.1   前言

30

圖 7.13

• 範例 7.7.2

Page 31: 第七章 傅利葉轉換 7.1   前言

31

圖 7.14

• 範例 7.7.3

Page 32: 第七章 傅利葉轉換 7.1   前言

32

圖 7.15

• 範例 7.7.4

Page 33: 第七章 傅利葉轉換 7.1   前言

33

7.7 影像之傅利葉轉換

Page 34: 第七章 傅利葉轉換 7.1   前言

34

7.8 頻率域的濾波

• 7.8.1 理想濾波– 低通濾波

Page 35: 第七章 傅利葉轉換 7.1   前言

35

圖 7.16

Page 36: 第七章 傅利葉轉換 7.1   前言

36

圖 7.17

D = 15

Page 37: 第七章 傅利葉轉換 7.1   前言

37

圖 7.18

D = 5 D = 30

Page 38: 第七章 傅利葉轉換 7.1   前言

38

7.8 頻率域的濾波

– 高通濾波

Page 39: 第七章 傅利葉轉換 7.1   前言

39

圖 7.19

Page 40: 第七章 傅利葉轉換 7.1   前言

40

圖 7.20

Page 41: 第七章 傅利葉轉換 7.1   前言

41

7.8.2 Butterworth 濾波

– 理想濾波器直接切除傅利葉轉換距中心某個距離外的部分。

– 這種截頻點的使用十分方便,但缺點是結果會產生不必要的瑕疵(波紋)。

– 要避免這種現象,可使用截頻點較不銳利的圓形當作濾波矩陣。

Page 42: 第七章 傅利葉轉換 7.1   前言

42

圖 7.21

Page 43: 第七章 傅利葉轉換 7.1   前言

43

圖 7.22 & 7.23

Page 44: 第七章 傅利葉轉換 7.1   前言

44

圖 7.24

Page 45: 第七章 傅利葉轉換 7.1   前言

45

圖 7.25

Page 46: 第七章 傅利葉轉換 7.1   前言

46

圖 7.26

>> cfbli = ifft2(cfbl);>> figure, fftshow(cfbli, ’abs’)

>> bl = lbutter(c,15,1);>> cfbl = cf.*bl;>> figure, fftshow(cfbl, ’log’);

Page 47: 第七章 傅利葉轉換 7.1   前言

47

圖 7.27

Page 48: 第七章 傅利葉轉換 7.1   前言

48

7.8.3 高斯濾波

• 較寬的高斯函數、即較大的標準差,其最大值會比較小。

Page 49: 第七章 傅利葉轉換 7.1   前言

49

圖 7.28

Page 50: 第七章 傅利葉轉換 7.1   前言

50

圖 7.29

Page 51: 第七章 傅利葉轉換 7.1   前言

51

7.9 同態濾波

i (x, y) 為照明 (illumination), r(x, y) 為反射 (reflectance)

Page 52: 第七章 傅利葉轉換 7.1   前言

52

7.9 同態濾波

Page 53: 第七章 傅利葉轉換 7.1   前言

53

圖 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);

Page 54: 第七章 傅利葉轉換 7.1   前言

54

圖 7.33

>>i=imread(‘newborn.tif’);

>>r=[1:256]’*ones(1,256);

>>x=double(i).*(0.5+0.4*sin((r-32)/16));

>>imshow(i);figure;imshow(x/256);

Page 55: 第七章 傅利葉轉換 7.1   前言

55

圖 7.34

>>xh=homfilt(x,10,2,0.5,2);

>>imshow(xh/16);

Page 56: 第七章 傅利葉轉換 7.1   前言

56

圖 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);