任鴻鵬
摘 ?要:作為一項重要的技術手段,數(shù)字圖像處理已經廣泛地應用于當今社會的眾多領域,其中最常用到的方法就是傅里葉變換。該文在MATLAB的軟件環(huán)境下,簡要闡述了基于傅里葉變換的圖像處理原理,并給出了相關圖像的處理結果。這些將有助于增加初學者對傅里葉變換的理解,提升其處理實際問題的能力。
關鍵詞:圖像變換 ?傅里葉變換 ?MATLAB
中圖分類號:TP391 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 文獻標識碼:A ? ? ? ? ? ? ? ? ? ? ? ? 文章編號:1672-3791(2019)06(a)-0011-03
圖像是世界萬物的直觀反映,是人類認識世界的重要源泉。當今世界,人類不僅可以通過特定的手段觀測世界來獲取圖像,更可以在計算機的幫助下制造出各式各樣的圖像,因此,圖像的制作、變換等成為了熱門研究方向。
圖像的變換,就是在計算機的支撐下,對圖像進行有目的的處理的過程?,F(xiàn)代社會,隨著科技水平的提高,人們對圖像的要求也越來越高,二維碼的掃描、人臉識別、網絡連接以及醫(yī)學界的X光[1]技術等無一不體現(xiàn)了對圖像的高度要求,因此掌握圖像變換技術也變得越來越重要。
在圖像變換的諸多方法中,傅里葉變換是最為常見的一種方法。傅里葉變換是由法國數(shù)學家傅里葉提出的一種線性積分變換,其核心思想是任何連續(xù)的周期函數(shù)都可以由一組相應的正弦函數(shù)疊加而成[2]。傅里葉變換的物理效果是將圖像從空間域轉化到頻率域,逆變換是將圖像從頻率域轉化到空間域。而圖像的頻率決定了圖像的基本灰度等級、基本結構與邊緣細節(jié),正是傅里葉變換與圖像頻率之間的密切關系,因此被廣泛應用于圖像變換操作中。
利用傅里葉變換對圖像進行相關操作時,最常用的就是MATLAB軟件。MATLAB軟件是由美國MathWorks公司出品的商業(yè)數(shù)學軟件,在圖像處理、工程計算、信號檢測、金融分析等方面有著十分廣泛的應用。利用MATLAB軟件的強大功能對圖像進行幾何操作、變換、拉伸、增強處理,可以方便、快捷地達到預期效果[3]。
該文正是以介紹3種傅里葉變換及其對應的一些實例來展開說明的,實例對應的軟件環(huán)境,即MATLAB軟件環(huán)境。
1 ?傅里葉變換
傅里葉變換就是以時間為自變量的信號和以頻率為自變量的頻譜函數(shù)之間的某種變換關系。這種變換同樣可以用在其他有關數(shù)學和物理的各種問題之中,并可以采用其他形式的變量。當自變量時間或頻率取連續(xù)時間和離散時間形式的不同組合,就可以形成各種形式的傅里葉變換對。
傅里葉變換是信號處理中最重要、應用最廣泛的變換。從某種意義上來說,傅里葉變換就是函數(shù)的第二種描述語言。
傅里葉變換理論及其物理解釋的結合對圖像處理領域諸多問題的解決提供了有利的思路和行之有效的方法,它讓人們從事物的另一方面來考慮問題,這樣在分析某一問題時就會從空域和頻域兩個角度來考慮問題并來回切換,使圖像處理過程更簡單、有效,對于迂回解決圖像處理中的難題非常有幫助,被廣泛應用于圖像處理中。
而傅里葉變換又有多種分類情況。
1.1 連續(xù)傅里葉變換
要得到每一個頻率分量,需進行N次乘法和N-1次加法運算。要完成整個變換需要N2次乘法和N(N-1)次加法運算。當序列較長時,必然花費較長的時間。
2 ?圖像傅里葉變換的一些實例
在MATLAB中,函數(shù)fft、fft2和fftn可以分別實現(xiàn)一維、二維和N維DFT算法;函數(shù)ifft、ifft2和ifftn用來計算反DFT;而函數(shù)ffishift可以把傅里葉操作(fft、fft2、fftn)所得結果中的零頻率成分轉移到矩陣的中心,從而可以方便地觀察頻譜。
運用MATLAB軟件實現(xiàn)對創(chuàng)建的圖像進行傅里葉變換的程序[7]如下,圖像實現(xiàn)效果如圖1所示。
f = zeros(60,60);
f(10:48,26:34) = 1;
F0 = fft2(f);
F2 = log(abs(F0));
F = fft2(f,256,256);
F1 = fftshift(F);
figure;
subplot(221);
imshow(f,'InitialMagnification','fit');
title('原像');
subplot(222);
imshow(F2,[-1 5],'InitialMagnification','fit');
title('確定像素值的范圍');
subplot(223);
imshow(log(abs(F)),[-1 5]);
title('對數(shù)顯示補零變換后的圖像');
subplot(224);
imshow(log(abs(F1)),[-1 5]);
title('對數(shù)顯示頻移后的圖像');
利用MATLAB實現(xiàn)對一個圖像進行二維傅里葉變換的程序如下,圖像實現(xiàn)效果如圖2所示。
clear all;
I = checkerboard(40);
F = fft2(I);
subplot(1,2,1);
imshow(I);
title('原始圖像');
subplot(1,2,2);
imshow(F);
title('二維傅里葉變換');
3 ?結語
綜上,利用傅里葉變換可以對圖像進行許多方便、快捷的處理。隨著科技的進步,數(shù)字圖像處理技術受到了越來越多的重視,因此傅里葉變換也將獲得越來越廣闊的應用空間。學習好傅里葉變換,不僅會提升使用者的知識水平,也會讓使用者的數(shù)字圖像處理能力得到極大提升。
實現(xiàn)圖像的傅里葉變換,必然離不開MATLAB這款軟件,基于MATLAB這款軟件的數(shù)字圖像處理技術與常規(guī)技術相比,不僅功能性更強,而且操作也更加簡單,在一定程度上推動了數(shù)字圖像處理技術的發(fā)展。故加深使用者對MATLAB在數(shù)字圖像處理中應用原理的理解,提升使用者對MATLAB在圖像處理中的熟練程度,對個人、對整個社會都有著十分重大的意義。
參考文獻
[1] 張嘯劍,付聰聰,孟小峰.面向人臉圖像發(fā)布的差分隱私保護[J].中國圖象圖形學報,2018,23(9):1305-1315.
[2] 郭士龍.巧用傅里葉變換優(yōu)化攝影圖像[J].電腦與信息技術,2018,26(4):44-45.
[3] 江鐵成.基于MATLAB的數(shù)字圖像處理技術研究[J].合肥師范學院學報,2017,35(6):25-27.
[4] 樓紅衛(wèi).傅里葉變換與處處連續(xù)無處可微函數(shù)[J].高等數(shù)學研究,2017,20(4):7-9.
[5] 朱兆梁,馬朝翰,李健,等.基于傅里葉變換的碎片拼接復原技術[J].科技傳播,2014,6(5):173-174.
[6] 陳晉.快速傅里葉變換的研究[J].黑龍江科學,2018,9(24):62-63.
[7] 王波.傅里葉變換時移性質的MATLAB輔助教學初探[J].電腦知識與技術,2018,14(33):140-141.