二維灰度圖象的統(tǒng)計分析及fft變換處理課程設(shè)計_第1頁
已閱讀1頁,還剩17頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、<p>  《基礎(chǔ)強化訓(xùn)練》報告</p><p>  題 目:二維灰度圖象的統(tǒng)計分析及FFT變換處理 </p><p>  專業(yè)班級: </p><p>  學(xué)生姓名: </p><p>  指

2、導(dǎo)教師: </p><p><b>  目 錄</b></p><p><b>  摘 要1</b></p><p>  Abstract2</p><p><b>  1 數(shù)據(jù)采集3</b></p

3、><p>  1.1 圖像的選取3</p><p>  1.2 MATLAB讀取方法3</p><p>  1.2.1 編輯M文件4</p><p>  1.2.2 圖像的讀取4</p><p>  1.2.3查看圖像的屬性5</p><p>  1.2.4 灰度值的獲取7</p&

4、gt;<p>  2 數(shù)據(jù)統(tǒng)計處理8</p><p>  2.1 均值計算8</p><p>  2.1.1 原理介紹8</p><p>  2.1.2 仿真結(jié)果8</p><p>  2.2 標(biāo)準(zhǔn)差計算8</p><p>  2.3 方差計算9</p><p>  2

5、.4 灰度直方圖10</p><p>  3 快速傅立葉變換12</p><p>  3.1 原理介紹12</p><p>  3.2 仿真結(jié)果12</p><p>  4 總結(jié)(心得體會)14</p><p><b>  參考文獻15</b></p><p>

6、<b>  摘 要</b></p><p>  MATLAB是集數(shù)值計算,符號運算及圖形處理等強大功能于一體的科學(xué)計算語言。作為強大的科學(xué)計算平臺,它幾乎能夠滿足所有的計算需求。MATLAB 本身就是功能強大的數(shù)據(jù)可視化工具,可以通過各種形式顯示分析數(shù)據(jù),例如灰度直方圖、等高線、蒙太奇混合、像素分析、圖層變換以及材質(zhì)貼圖等。利用可視化的圖形,不僅能夠評估圖形圖像的特性,還能夠分析圖像中的色彩

7、分布等情況。</p><p>  本次練習(xí)介紹的就是Matlab環(huán)境下的一些最基本的圖像處理操作,如讀圖像、寫圖像、查看圖像信息和格式、尺寸和灰度的伸縮等等;通過實驗掌握圖像直方圖的描繪方法,加深直方圖形狀與圖像特征間關(guān)系間的理解;加深對直方圖均衡算法的理解。</p><p><b>  Abstract</b></p><p>  MATLA

8、B is a scientific computing language that adds the function of numerical computing and graphics processing, symbols together. As a powerful scientific computing platforms, it can almost satisfy all the calculations that

9、needs. MATLAB itself is a powerful tool of data visualization that can display data through various forms, such as graylevel histogram, contours, montage mixing, pixel analysis, the layer texture and transformation. With

10、 visual graphics, it can not only evaluate image charac</p><p>  The purpose of the practice of introducing Matlab environment is the most basic of some image processing operations, such as read, write, imag

11、e information and image format, size and gray telescopic; etc. Through the experiment mastery of image histograms depicts method, deepen the histogram image feature and the relationship between the shape of understanding

12、,and to deepen the understanding of histogram equalization algorithm.</p><p><b>  1 數(shù)據(jù)采集</b></p><p>  Matlab軟件的圖像采集工具箱提供了大量的函數(shù)用于采集圖像和視頻信號,該工具箱支持的硬件設(shè)備包括工業(yè)標(biāo)準(zhǔn)的PC圖像采集卡和相應(yīng)的設(shè)備。所支持的硬件包括:Mat

13、rox和Data Translation公司提供的視頻采集設(shè)備,同時還支持Windows平臺下支持USB或者火線(IEEE-1394)的視頻攝像頭等設(shè)備。</p><p>  MATLAB可以支持很多很多圖片的文件格式,例如*cur、*bmp、*hdf、*ico、*jpg、*tif、*gif、*pcx等。用于讀寫圖像數(shù)據(jù)的函數(shù)有imread(從圖像格式的文件中讀取數(shù)據(jù))和imwrite(將數(shù)據(jù)寫入圖像格式的文件)

14、。這里我用到的是imread,主要是用到圖像文件的讀取。</p><p><b>  1.1 圖像的選取</b></p><p>  本次研究對象為圖片來自于網(wǎng)絡(luò),名稱和格式為qie.png,為了便于在MATLAB中對之進行操作,將此圖像放在E:\program files\MATLAB7\work目錄下,所選圖像如下所示:</p><p>&

15、lt;b>  圖1 原始圖片</b></p><p>  1.2 MATLAB讀取方法</p><p>  Matlab是解釋型語言,就是說Matlab命令行中敲入的命令在當(dāng)前Matlab進程中被解釋運行,但是,每次執(zhí)行一個任務(wù)時敲入過于冗長的命令序列是非常不方便的,因此,有兩種方法可以使Matlab的力量得到擴展------腳本和函數(shù)。這兩種方法都用像emacs一樣的文

16、本編輯器中編寫的m文件(因為擴展名是.m,m文件還稱為點m文件)。m文件的好處在于它可以保存命令,還可以輕易地修改命令而無需敲入整個命令行。</p><p>  新建一個m文件的方法為File\New\M-File.</p><p>  1.2.1 編輯M文件</p><p>  新建完成一個m文件后,就可以在彈出的m文件的工作區(qū)編輯命令了。</p>

17、<p>  圖2 M文件的編輯界面</p><p>  1.2.2 圖像的讀取</p><p>  圖像的讀取一般用imread函數(shù),imread的一般調(diào)用格式為:            [X,MAP]=imread(‘filename’,‘fmt’);</

18、p><p>  亦可直接寫為imread(‘’);其中,X,MAP分別為讀出的圖象數(shù)據(jù)和顏色表數(shù)據(jù),fmt為圖象的格式,filename為讀取的圖象文件(可以加上文件的路徑)。</p><p>  例如本次練習(xí)中: i = imread(’qie.png’);</p><p>  利用函數(shù)imread函數(shù)實現(xiàn)圖像文件的讀取,然后運用imshow函數(shù)顯示圖像。如果采集圖像

19、為彩色圖像,可以先將彩色圖像轉(zhuǎn)換為灰度圖像,再進行計算分析。</p><p>  操作如下,將存在E:\Program Files\MATLAB7\work里的圖片“qie.png”寫入MATLAB中。需要先打開運行MATLAB,然后在File里面新建M-File文件,再將讀寫圖片數(shù)據(jù)的程序輸進去即可。具體指令如下:</p><p>  i=imread('qie.png'

20、);</p><p>  g=rgb2gray(i); %將彩色圖像轉(zhuǎn)換為灰白圖</p><p><b>  figure</b></p><p>  imshow(i); %顯示彩圖</p><p>  title('yuantu');</p><p><b>  

21、figure</b></p><p>  imshow(g); %顯示灰白圖</p><p>  title('huibaitu');</p><p>  檢查程序無誤之后,就可以直接在command window窗口運行。如果運行之后在MATLAB主頁面里顯示有錯誤的話就需要重新回到M-File的頁面里面對程序進行修改然后才可以運行;

22、如果運行之后在MATLAB主頁面里面沒有錯誤顯示就可以看到圖3。</p><p>  圖3 原圖與灰白圖</p><p>  1.2.3查看圖像的屬性</p><p>  Matlab中可以使用imfinfo函數(shù)查看文件信息,圖像的查看及讀寫。在Matlab中要查詢一個圖像文件的信息,只要用imfinfo指令加上文件及其完整路徑名即可。函數(shù)調(diào)用格式為:</p

23、><p>  info=imfinfo(filename,fmt)</p><p>  info=imfinfo(filename)</p><p>  參數(shù)fmt對應(yīng)于所有圖像處理工具中所有支持的圖像文件格式。</p><p>  imfinfo E:\MATLAB7\work\qie.png </p><p><

24、b>  ans = </b></p><p>  Filename: 'E:\MATLAB7\work\qie.png'</p><p>  FileModDate: '04-Jul-2010 15:54:13'</p><p>  FileSize: 212292</p><p>  Fo

25、rmat: 'png'</p><p>  FormatVersion: []</p><p>  Width: 415</p><p>  Height: 311</p><p>  BitDepth: 24</p><p>  ColorType: 'truecolor'</p

26、><p>  FormatSignature: [137 80 78 71 13 10 26 10]</p><p>  Colormap: []</p><p>  Histogram: []</p><p>  InterlaceType: 'none'</p><p>  Transparency:

27、'none'</p><p>  SimpleTransparencyData: []</p><p>  BackgroundColor: [1 1 1]</p><p>  RenderingIntent: []</p><p>  Chromaticities: []</p><p><b&

28、gt;  Gamma: []</b></p><p>  XResolution: 3780</p><p>  YResolution: 3780</p><p>  ResolutionUnit: 'meter'</p><p>  XOffset: []</p><p>  YOffs

29、et: []</p><p>  OffsetUnit: []</p><p>  SignificantBits: []</p><p>  ImageModTime: []</p><p><b>  Title: []</b></p><p>  Author: []</p>

30、<p>  Description: []</p><p>  Copyright: []</p><p>  CreationTime: []</p><p>  Software: []</p><p>  Source: []</p><p>  Comment: []</p><p

31、>  OtherText: []</p><p><b>  >></b></p><p>  1.2.4 灰度值的獲取</p><p>  從上面的文件信息可以看出,這個png格式的圖像的色彩類型為“truecolor”真彩類型,因此要獲取這個圖像的灰度值,首先需要將這副真彩圖轉(zhuǎn)換為灰度圖。</p><p

32、>  使用rgb2gray函數(shù)轉(zhuǎn)換為灰度圖后,最后結(jié)果保存在一個unit8(8位)矩陣中,由于此矩陣為415*311大小,限于篇幅只截取其中一部分如圖所示,每個單元的數(shù)值就是原來圖像中對應(yīng)的灰度值。</p><p>  打開workplace中的g矩陣文件后,彈出如下對話框,顯示圖像的灰度值如下:</p><p>  圖4 圖像的灰度值</p><p>&l

33、t;b>  2 數(shù)據(jù)統(tǒng)計處理</b></p><p><b>  2.1 均值計算</b></p><p>  2.1.1 原理介紹</p><p>  均值計算的原理較簡單,在MATLAB的函數(shù)庫中表示均值的函數(shù)是mean2,其調(diào)用格式是mean2(),括號里面就是待處理分析的信號。</p><p>

34、  均值計算的程序如下:</p><p>  i=imread('qie.png');</p><p>  g=rgb2gray(i);</p><p><b>  mean2(g) </b></p><p>  上面的程序同樣也是在新建的M-File文件里面編寫運行的,檢查程序沒有錯誤之后,就可以在co

35、mmand window窗口直接運行。</p><p>  2.1.2 仿真結(jié)果</p><p>  運行以上的程序以后,如果程序有錯誤的話,會在MATLAB的主頁面里顯示出來;如果沒有錯誤也可以在MATLAB的主頁面查看顯示的結(jié)果。上圖程序運行的結(jié)果如下圖6所示。</p><p>  圖5 均值的結(jié)果顯示</p><p><b>

36、  2.2 標(biāo)準(zhǔn)差計算</b></p><p>  標(biāo)準(zhǔn)差(Standard Deviation)也稱均方差(mean square),簡單來說,標(biāo)準(zhǔn)差是一組數(shù)值自平均值分散開來的程度的一種測量觀念。一個較大的標(biāo)準(zhǔn)差,代表大部分的數(shù)值和其平均值之間差異較大;一個較小的標(biāo)準(zhǔn)差,代表這些數(shù)值較接近平均值。</p><p><b>  標(biāo)準(zhǔn)差計算公式:</b>&

37、lt;/p><p>  假設(shè)有一組數(shù)值X1,X2,……,Xn(皆為實數(shù)),其平均值為:</p><p>  那么,此組數(shù)值的標(biāo)準(zhǔn)差為:</p><p>  在MATLAB的函數(shù)庫中表示標(biāo)準(zhǔn)差的函數(shù)為std2,其格式是std2(),括號里面就是待處理分析的信號。由于標(biāo)準(zhǔn)差反映的是偏離灰度均值的程度,如果標(biāo)準(zhǔn)差越大,則說明灰度級越大,則圖像包含的信息就越多。</p&g

38、t;<p>  標(biāo)準(zhǔn)差計算的程序如下:</p><p>  i=imread('qie.png');</p><p>  g=rgb2gray(i);</p><p>  c=std2(g) %計算矩陣g的標(biāo)準(zhǔn)差并將值賦給c</p><p>  檢查程序沒有錯誤之后,就可以在command window窗口直接

39、運行。運行結(jié)果如下:</p><p>  圖6 標(biāo)準(zhǔn)差的結(jié)果顯示</p><p><b>  2.3 方差計算</b></p><p>  在MATLAB中使用求方差函數(shù)var時:</p><p>  樣本中各數(shù)據(jù)與樣本平均數(shù)的差的平方和的平均數(shù)叫做樣本方差;樣本方差的算術(shù)平均值叫做樣本標(biāo)準(zhǔn)差。樣本方差和樣本標(biāo)準(zhǔn)差都是

40、衡量一個樣本波動大小的量,樣本方差或樣本標(biāo)準(zhǔn)差越大,樣本數(shù)據(jù)的波動就越大。</p><p><b>  執(zhí)行下列命令:</b></p><p>  i=imread('qie.png');</p><p>  g=rgb2gray(i);</p><p>  h=double(g);</p>

41、<p>  Var=var(h(:))</p><p><b>  即可求得方差。</b></p><p>  另外,在求標(biāo)準(zhǔn)差的基礎(chǔ)上,方差是標(biāo)準(zhǔn)差的平方。這里對圖像的方差進行計算指令也可如下所示:</p><p>  i=imread('qie.png');</p><p>  g=rgb

42、2gray(i);</p><p>  c=std2(g) </p><p><b>  d=c.^2</b></p><p>  檢查程序沒有錯誤之后,就可以在command window窗口直接運行。運行結(jié)果如下:</p><p>  圖7 方差的結(jié)果顯示</p><p><b&g

43、t;  2.4 灰度直方圖</b></p><p>  直方圖是一個顯示灰度或索引圖像亮度分布情況的圖表,它是圖像分析中用來說明圖像灰度分布的圖形。直方圖的每一個分支表示對應(yīng)灰度級出現(xiàn)的頻數(shù)(處于該灰度級的像素的數(shù)目)間的統(tǒng)計關(guān)系,用橫坐標(biāo)表示灰度級,縱坐標(biāo)表示頻數(shù)(或相對頻數(shù)=頻數(shù)/總像素數(shù)目)。</p><p>  這里對圖像的直方圖的繪制用的函數(shù)是imhist,下面為具體

44、繪制圖像直方圖的程序,直方圖繪制的程序如下:</p><p>  i=imread('qie.png');</p><p>  g=rgb2gray(i);</p><p>  imhist(g); %繪制矩陣g的灰度直方圖</p><p>  title('huibaizhifangtu');</p

45、><p>  檢查程序沒有錯誤之后,就可以在command window窗口直接運行。運行結(jié)果如下:</p><p><b>  圖8 直方圖的顯示</b></p><p><b>  3 快速傅立葉變換</b></p><p><b>  3.1 原理介紹</b></p&g

46、t;<p>  在圖象處理的廣泛應(yīng)用領(lǐng)域中,傅立葉變換起著非常重要的作用,具體表現(xiàn)在包括圖象分析、圖象增強及圖象壓縮等方面。</p><p>  假設(shè)f(x,y)是一個離散空間中的二維函數(shù),則該函數(shù)的二維傅立葉變換及其逆變換的定義如下:</p><p>  圖像的傅里葉變換與一維信號的傅里葉變換一樣,有快速算法。在實際生產(chǎn)研究中,有專門實現(xiàn)傅里葉變換的芯片,可以實現(xiàn)實時的傅里

47、葉變換??焖俑道锶~變換雖然沒有對傅氏變換理論做一步補充,但是對于在計算機系統(tǒng)或者說數(shù)字系統(tǒng)中應(yīng)用離散傅里葉變換,可以說是進了一大步。對任何想在工作中用數(shù)字圖像處理的人來說,F(xiàn)FT變換技術(shù)是必須要學(xué)習(xí)和掌握的技術(shù)。</p><p>  這里是對圖像快速傅里葉變化,用到的是fft2函數(shù)。對圖像快速傅里葉變化后,可以對圖像進行反傅里葉變換,應(yīng)用函數(shù)ifft2(),如果得到的圖像與傅里葉變換前的圖像相同,則傅里葉變換正確

48、。</p><p>  快速傅里葉變換與反變換的程序:</p><p>  i=imread('qie.png');</p><p>  g=rgb2gray(i);</p><p>  FFT=fft2(double(g)); %對圖像g進行快速傅里葉變換</p><p>  FFTS=fftsh

49、ift(FFT); %把快速傅里葉變換的DC組件移到光譜中心</p><p>  IFFT=ifft2(FFTS); %對得到的頻譜圖進行傅里葉反變換</p><p>  subplot(2,2,1),imshow(g);</p><p>  subplot(2,2,2),imshow(log(abs(FFTS)+1),[]),colorbar;</

50、p><p>  subplot(2,2,3),imshow(abs(IFFT),[]);</p><p>  subplot(2,2,4),imshow(FFT),colorbar;</p><p><b>  3.2 仿真結(jié)果</b></p><p>  以上程序的原始圖片qie.png放在matlab安裝目錄下work文

51、件夾里。 打開matlab后將本程序段直接復(fù)制到matlab 的“command window”里面的“>>”后即可進行圖片的傅立葉變換。</p><p>  檢查無誤后,運行以上快速傅里葉變換與反變換的程序,觀察程序運行結(jié)果。如下圖示:</p><p>  圖9 快速傅里葉變換與反變換結(jié)果</p><p>  運行結(jié)果中第一幅圖為原始的灰度圖像

52、,第二幅為變換后的FFT頻譜圖,第三幅為傅里葉反變換圖,第四幅為快速傅里葉變換圖。4 總結(jié)(心得體會)</p><p>  通過這一個星期的MATLAB基礎(chǔ)強化訓(xùn)練,使我對MATLAB軟件及其功能有了更深一層的認(rèn)識,較好地達到了強化訓(xùn)練的目的。</p><p>  MATLAB擁有數(shù)百個內(nèi)部函數(shù),使用戶在調(diào)用時較為方便簡潔,不用自己再去重新定義相對常用的函數(shù)。但是,由于平時操練較少,我對一

53、些常用函數(shù)的用法也只是一知半解。在設(shè)計時編輯M文件的時候,由于輸入法必須全部用半角的,而我在中英文之間切換時,有時就將這個細(xì)節(jié)忽略了,而導(dǎo)致軟件因為輸入命令的格式無法識別出現(xiàn)錯誤的提示,另外,在編程方面,由于有時需要加引號或者括號而我沒有加上,也導(dǎo)致最后出現(xiàn)不了相應(yīng)的結(jié)果。好在這些細(xì)小的錯誤都在不斷使實踐過程中被發(fā)現(xiàn)并解決了,所以在設(shè)計完成之后我也感到很欣慰。</p><p>  經(jīng)過這次基礎(chǔ)強化訓(xùn)練,也反映出了

54、在之前學(xué)習(xí)中的諸多不足之處。但也正是因為這些不足之處,也使得這次的基礎(chǔ)強化訓(xùn)練更加有意義,讓我從中糾正了很多以往沒有注意到的細(xì)節(jié),也使我對MATLAB操作的認(rèn)識更加深刻,也達到了這次強化訓(xùn)練的目的。使我在數(shù)學(xué)基礎(chǔ)知識,基礎(chǔ)能力方面得到了提升,另外使我較為全面的了解了常用的數(shù)據(jù)分析與處理原理及方法,并通過MATLAB軟件進行了模擬分析;也使我進一步提高了自己的文獻檢索與文獻閱讀能力,同時也鍛煉了我的論文撰寫能力。</p>&

55、lt;p>  總之,這次基礎(chǔ)強化訓(xùn)練讓我學(xué)會了很多,收獲了很多。</p><p><b>  參考文獻</b></p><p>  [1] 王華等. MATLAB電子仿真與應(yīng)用教程. 國防工業(yè)出版社.2001.</p><p>  [2] 李文鋒. 圖形圖像處理與應(yīng)用. 中國標(biāo)準(zhǔn)出版社.2006.</p><p&g

56、t;  [4] 劉文耀. 數(shù)字圖像采集與處理. 電子工業(yè)出版社. 2007.</p><p>  [5] 賀興華. MATLAB7.X圖像處理. 人民郵電出版社.2006.</p><p>  [5] 章毓晉. 圖像工程(上冊) . 清華大學(xué)出版社.1999.</p><p>  [6] 王慧琴. 數(shù)字圖像處理. 北京郵電大學(xué)出版社.2006</p&g

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論