對於圖像頻率域的處理是在傅立葉變換基礎上的。為了能更好地理解頻域濾波等,一定要搞懂傅立葉變換。花了幾天時間覺得懂的差不多了,特地用大白話記下來。尤其是我在學習過程中,網上各種博客里抽象的,剛開始看不懂,后來理解的,都用大白話記下來。
以下是個人理解,若有不對之處,煩請各位指正!感謝!
1.傅立葉變換是什么?
傅立葉變換是將時間域轉換為頻率域的工具。對傅立葉變換詳細、簡明的說明,強推這篇文章 韓昊-傅里葉分析之掐死教程(完整版)更新於2014.06.06
2.二維圖像的傅立葉變換
首先要知道一幅數字圖像的兩個域:空間域和頻率域。空間域說白了就是一個一個的格子,之前的圖像處理方法都是在空間域上完成的(單個像元,相鄰像元)。
頻率對於聲音、光等這種波很好理解,但對於圖像這樣一個二維信號該怎么理解頻率呢?物理上,頻率描述的是信號變化的速度。那么圖像的頻率描述的當然是圖像灰度值(像元值,在DEM中是高程值,在遙感影像中是DN值,或者反射率等)變化的速度。
“圖像的頻率是表征灰度變化劇烈程度的指標,是灰度在平面空間上的梯度”。舉個例子,就像平原高度變化平緩,頻率低;丘陵高度變化劇烈,一會兒高一會兒低,頻率高。在圖像上,邊緣、噪聲等灰度變化劇烈,是高頻分量;圖像內部灰度變化平緩,低頻分量。
因此,在頻率域,可以去除噪聲,識別邊緣。傅立葉變換就是將空間域轉換為頻率域的工具。利用傅立葉變換可以將圖像灰度矩陣變為頻度矩陣。頻度矩陣中,高頻表示細節,低頻表示概貌,如果我們只想要概貌,可以過濾掉高頻細節。如果想要壓縮存儲,也可以去除高頻分量。
一馬平川(低頻) 高低不平(高頻)
2.1 二維傅立葉變換公式
二維傅立葉變換實際上是:
將二維圖形f(x,y)分解成一系列平面波的和,其中在x方向角頻率是u、在y方向角頻率是v的平面波的幅度和相位用F(u,v)表示 靈劍
變換完,中心是兩個頻率(x,y)都為0(直流分量),越靠近中心,兩個方向的頻率越低,合成的頻率與到中心的距離成正比,所以中心是低頻分量,外部是高頻分量
我的理解:一個圖像大概就像丘陵一樣,像元值看作高度。這個‘丘陵’可以由一系列平面波的和組成,平面波有兩個頻率(x方向,y方向)。(不知道我這樣理解准不准確?
越亮(灰度值越高)的位置代表該頻率的信號振幅越大
2.2 二維離散傅立葉變換公式
f(x,y)是大小為M*N的圖像
此處推薦《數字圖像處理的MATLAB》——岡薩勒斯。這本書里有詳細介紹
原點兩個頻率都為0,越靠近原點,頻率越低
變換后的結果是復數,為了直觀分析,要計算頻譜(即幅度,復數的模)。
另外,DFT在u,v方向上是無窮周期的,周期由M和N決定。計算時,僅計算一個周期,即僅處理尺寸為M*N的數組。
二維DFT得到下圖的結果
虛線矩形表示周期循環,陰影區域F(u,v)的值包括了4個背靠背的四分之一周期。
在這幅圖中陰影部分就代表了,DFT后的頻率矩陣。4個點的模(幅度)比中間黑點的模(幅度)大,即四周比中間大。為什么這樣我還沒搞明白,但是matlab實驗后的結果是這樣的。可以自己動手選個行列數小的圖像試試看。
頻譜中心化就是要將四周(低頻高幅度)移到中間。如果a = [1 2;3 4],中心化后為[4, 3;2 1]
頻譜邊緣化就是反過來
正弦波,三角函數除了一般的表達形式外,還可以用復數形式(唯一的)表達。參考一,參考二
所以,DFT的結果為復數形式,該形式保留的波的所有信息,所以逆DFT可以還原圖像信息。
了解到的知識差不多就這些,夠理解二維圖像的傅立葉變換了。下篇寫頻域濾波。