




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
緒論1.1選題依據(jù)和研究意義數(shù)字圖像作為當(dāng)今主流的圖像技術(shù),獲得人們廣泛的認(rèn)可。數(shù)字圖像的處理手段也是多種多樣,處理方法有圖像增強(qiáng),圖像復(fù)原,圖像退化,圖像重建,圖像圖像壓縮,圖像濾波,圖像描述等等。數(shù)字圖像的的處理是依據(jù)圖像灰度值作為基礎(chǔ)的,在此基礎(chǔ)上將圖像視為一個(gè)集合,對(duì)集合里全部或部分元素進(jìn)行某些處理,得到需要的圖像的一個(gè)過程。在此過程中要用到高等數(shù)學(xué),光學(xué),計(jì)算機(jī)技術(shù),概率論,線性代數(shù),英語(yǔ),圖形學(xué)等等學(xué)科,廣泛涉及,所以可以把數(shù)字圖像處理理解成一個(gè)大雜燴,而這一融合的最終目的,在于通過種種科學(xué)技術(shù)滿足人們所需。數(shù)字圖像處理也因其強(qiáng)大的通用性,便捷易操作而應(yīng)用于眾多領(lǐng)域之中。包括工程學(xué)、信息學(xué)、計(jì)算機(jī)科學(xué)、統(tǒng)計(jì)學(xué)等當(dāng)代科學(xué)發(fā)展的奠基學(xué)科,也包括了軍事,醫(yī)學(xué),物理學(xué),化學(xué),生物學(xué)等工學(xué)基礎(chǔ)學(xué)科。不得不認(rèn)識(shí)到數(shù)字圖像處理的重要性。更細(xì)致的劃分?jǐn)?shù)字圖像技術(shù)層次可以劃分成圖像處理,圖像分析以及圖像理解。圖像處理可以視為為圖像分析和圖像理解的預(yù)先準(zhǔn)備步驟,將圖像視為信號(hào)處理是數(shù)字圖像工作者們的工作準(zhǔn)則,圖像信號(hào)是作為二維,三維或更高維的信號(hào)而存在的。與普通信號(hào)相比,其處理的特殊性在于圖像信號(hào)處理的特殊性是著重考慮圖像變換,計(jì)算機(jī)圖像是否與人們的視覺需求相符,或者與設(shè)計(jì)需求相符。數(shù)字圖像處理的目標(biāo)是因需而定的。有改善圖像質(zhì)量,增強(qiáng)圖像定位精度,提高信息傳輸效率,減少信息存儲(chǔ)量,建立圖像信息庫(kù)等。在航空航天中,可用于衛(wèi)星遙感和圖像識(shí)別;在軍事領(lǐng)域中,可用于個(gè)軍事情景中偵查,判別乃至于指揮。例如戰(zhàn)況監(jiān)控,偵查照片預(yù)讀,導(dǎo)彈制導(dǎo)。生物醫(yī)學(xué)中,可用于圖像成像,顯微鏡技術(shù)處理,例如CT技術(shù),X光技術(shù)等;通信工程中,主要為多媒體工具間的傳輸,通過圖像壓縮與編碼,圖像轉(zhuǎn)換,完善多媒體系統(tǒng)的視覺功能;文化藝術(shù)方面,可用于含顯示屏的圖像編輯,像動(dòng)畫場(chǎng)景制作,服裝設(shè)計(jì),發(fā)型設(shè)計(jì),產(chǎn)品設(shè)計(jì)與開發(fā)等;電子商務(wù)中,為服務(wù)帶來了便捷和安全,例如物品圖像的分類與特征提取,支付前的人臉安全識(shí)別;宏觀國(guó)家乘次這個(gè)領(lǐng)域中,更為了災(zāi)害檢測(cè),農(nóng)業(yè)規(guī)劃,城市規(guī)劃,資源勘測(cè)等做出了重大貢獻(xiàn)??梢哉f現(xiàn)代人們的日常生活已經(jīng)離不開數(shù)字圖像處理了。1.2本文的內(nèi)容與安排:數(shù)字圖像處理的工具有很多,具有代表性MATLAB,opencv,opengl,Delphi,pythonPs,adobleflash等等。本文選取的工具是MATLAB,相比較而言,作為數(shù)字圖像處理的初學(xué)者使用MATLAB具有諸多優(yōu)越性。首先matlab的開發(fā)環(huán)境是基于C語(yǔ)言的,計(jì)算機(jī)領(lǐng)域的工作者,基本都有一定的c語(yǔ)言編程功底,所以容易上手。然后matlab作為編程類工具軟件,它強(qiáng)調(diào)將所需要的操作通過編程自己實(shí)現(xiàn)。這期間會(huì)對(duì)數(shù)字圖像處理技術(shù)的原理認(rèn)識(shí)的更加深刻,這是初學(xué)者所希望的。同時(shí),因?yàn)镸ATLAB強(qiáng)大的編程功能,使得用戶可以自己較大程度的發(fā)揮,追求個(gè)性化的功能,這一點(diǎn)上ps,flash等軟件則有了明顯的受限,它們只能執(zhí)行軟件開發(fā)者們預(yù)先定義的功能。MATLAB相比于其他軟件用來圖像處理的另一大優(yōu)勢(shì)是,它具有豐富的工具包,工具包內(nèi)含有大量實(shí)用的庫(kù)函數(shù),節(jié)省了用戶去編譯這些函數(shù)的時(shí)間。通過幫助界面,可以查看這些函數(shù)的功能,更方便使用這些函數(shù)。即使要使用的函數(shù)MATLAB里預(yù)先不存在,也可以讓用戶自定義來創(chuàng)建這些函數(shù)。為了用戶使用方便,本程序使用了圖形用戶界面(GUI)。圖形用戶界面是MATLAB里一個(gè)常用的功能,創(chuàng)建起來也極為簡(jiǎn)單。重要的是,創(chuàng)建出來的界面較大程度上自持自定義的創(chuàng)建,所以用戶創(chuàng)造時(shí)可以考慮到使用者的需求和感受,故而一個(gè)清晰且標(biāo)注分明的GUI不僅用戶自己可以使用,分享到其他使用者手里也容易被其他人使用。這樣的GUI的創(chuàng)建是極其容易的,繁冗且復(fù)雜的編程由創(chuàng)造者來完成,且如果不執(zhí)行回調(diào)查看控件的程序,是不不會(huì)出現(xiàn)在使用界面的,使用體驗(yàn)比較良好。但使用這個(gè)圖形用戶界面,或者說使用MATLAB來進(jìn)行數(shù)字圖像處理有一個(gè)明顯的弊端,MATLAB軟件運(yùn)行速度比其他軟件有明顯的遜色,尤其是用戶定義的函數(shù)稍顯復(fù)雜,執(zhí)行的時(shí)間就會(huì)較長(zhǎng),這一點(diǎn)常常令用戶們頭疼,然而本文程序針對(duì)初學(xué)者而言,無論是運(yùn)行速度,還是理解程度上都是容易實(shí)現(xiàn)的。全文內(nèi)容共分為主體部分4章,第1章,緒論。淺談數(shù)字圖像處理技術(shù)的發(fā)展應(yīng)用,MATLAB作為數(shù)字圖像處理工具的使用,以及GUI(圖形用戶界面)的便利性。第2章,設(shè)計(jì)基本原理。介紹了matlab環(huán)境下,GUIDE的設(shè)計(jì)原理,包括GUI的基本開發(fā),控件對(duì)象描述,數(shù)據(jù)接口等。第3章,程序總體設(shè)計(jì)。介紹了程序的總體功能,包括整體界面設(shè)計(jì)和具體設(shè)計(jì)步驟。第4章,具體操作與實(shí)現(xiàn)。細(xì)致講解每一步原理及其語(yǔ)言實(shí)現(xiàn)。最后,依次為結(jié)論,致謝,參考文獻(xiàn),附錄。第2章設(shè)計(jì)基本原理2.1GUI基本開發(fā)在matlab的命令窗口里輸入“guide”命令,即可開始創(chuàng)建圖形用戶界面,創(chuàng)建完成后,會(huì)隨之產(chǎn)生兩個(gè)子文件,一個(gè)叫做M文件(M.file),另一個(gè)文件是Fig.file。這兩個(gè)文件是GUI的必不可少的文件,其中M.file用于保存回調(diào)函數(shù)或者回調(diào)程序。對(duì)于常用的或很長(zhǎng)的程序,如果每次都從頭輸入,則非常費(fèi)時(shí)間,也容易出錯(cuò).將這些程序做成M文件就方便多了只要輸入自定義的命令,就可以方便的調(diào)用,編程的效率大大提高。Fig.file文件保存了用于構(gòu)建GUI的代碼,在matlab菜單里可以打開Fig.file文件,換句話說,除了M文件是在MATLAB命令行里編輯的代碼,其余的代碼都是儲(chǔ)存在Fig.file文件里的。產(chǎn)生GUI界面后,會(huì)進(jìn)入圖形用戶搭建的界面,在此界面中,所有的控件都能在右上側(cè)找到,通過拖拽控件,即可在Fig里生成對(duì)應(yīng)的預(yù)先設(shè)置的代碼,這段代碼可自動(dòng)調(diào)用三個(gè)函數(shù):outputFcn函數(shù),Callback函數(shù),openingFcn函數(shù),每個(gè)函數(shù)包含了函數(shù)體,函數(shù)名。函數(shù)名由三部分參數(shù)組成,其中hObject是當(dāng)前控件的句柄,注意和handles相區(qū)分,雖然同為句柄,但hObject只能儲(chǔ)存當(dāng)前控件下對(duì)象的信息,可handles中的對(duì)象信息在整個(gè)界面都是有效的。這一點(diǎn)在C語(yǔ)言中相當(dāng)于全局變量和局部變量的區(qū)別。eventdata為保留參數(shù),默認(rèn)值為空。Handles在前文中解釋過了,設(shè)置handles方便在不同控件下傳遞或改變對(duì)象信息。此段代碼會(huì)以綠色顯現(xiàn),和批注代碼相同的顏色。通常不需要用戶對(duì)代碼進(jìn)行編輯,但需要我們?cè)诙x相關(guān)功能時(shí),是callback函數(shù)下進(jìn)行編輯輸入代碼的,以防止功能上的混亂。鼠標(biāo)右鍵點(diǎn)擊控件,會(huì)出現(xiàn)幾個(gè)常用的選項(xiàng),其中常用的DeleteFcn代表在GUI界面中清除控件,但代碼依然保留。,ButtonDownFcn為鼠標(biāo)點(diǎn)擊時(shí),觸發(fā)該控件下代碼,KeyPressFcn為定義敲擊按鍵時(shí),觸發(fā)該控件下代碼。點(diǎn)擊callback可已查看回調(diào)函數(shù)或編輯回調(diào)函數(shù)。GUI的開發(fā)最重要的就是布局和編輯代碼這兩個(gè)步驟,布局是要讓自己建立的圖形用戶界面美觀大方,簡(jiǎn)單實(shí)用,方便用戶使用,不會(huì)產(chǎn)生錯(cuò)誤的理解,同時(shí)還要與功能上保持一致。編輯代碼則是要求GUI開發(fā)的核心,良好的程序要求代碼運(yùn)行時(shí)沒有錯(cuò)誤的基礎(chǔ)上,還要使得代碼簡(jiǎn)短,否則容易造成程序運(yùn)行時(shí)間過長(zhǎng)。2.2控件對(duì)象描述在MATLAB的GUI里加入控件有兩種方法,一種是在建立一個(gè)GUI時(shí),在它的伴隨文件M.file里面加入控件,這種方法,需要在M文件中輸入產(chǎn)生控件的代碼,稍顯復(fù)雜;另一種直接在可視化的界面中拖拽控件,就容易許多。該方法不需輸入產(chǎn)生控件的代碼,只要準(zhǔn)確的建立一個(gè)界面布局即可??丶姆N類可分為動(dòng)態(tài)控件和靜態(tài)控件兩種。動(dòng)態(tài)指需要人工操作或者輸出產(chǎn)生變化的控件,是一個(gè)GUI必不可少的部分。而靜態(tài)控件通常不需要在已建立完成的GUI界面里進(jìn)行操作,它起到的是一個(gè)提示操作的作用。需要編輯這些控件的操作,可以在GUI界面的上方或者右鍵點(diǎn)擊即可,操作分為常規(guī)屬性,常規(guī)信息,控制回調(diào)函數(shù)執(zhí)行。常規(guī)屬性值指設(shè)置控件的外觀顯示,包括BackgroundColor、Cdata、Visible、String。編輯常規(guī)屬性,可以定義控件顯示風(fēng)格。對(duì)象的常規(guī)信息及其解釋如下:Enable屬性:指是否操作此空間后使得控件發(fā)揮作用,設(shè)為on時(shí)可以發(fā)揮,off時(shí)不可發(fā)揮;Style:控件對(duì)象類型;Tag:控件表示(用戶定義);UserData:用戶指定數(shù)據(jù);Position:控件對(duì)象的尺寸和位置;Units:設(shè)置控件的位置及大小的單位,有關(guān)字體的屬性,如FontAngle,FontName等??刂苹卣{(diào)函數(shù)執(zhí)行的操作及解釋如下:BusyAction:判斷是否中斷,若cancel則不執(zhí)行中斷,若queue則執(zhí)行排隊(duì);ButtonDownFcn屬性:按鈕按下時(shí)的處理函數(shù);CallBack屬性:查看和輸入代碼的核心屬性。
2.3GUI數(shù)據(jù)接口MATLAB的fig有多種方法來傳遞數(shù)據(jù),比如常用的定義一個(gè)全局變量,只需在變量前加一個(gè)global即可;或者使用函數(shù)functiongui_OpeningFcn(hObjecteventdata.handles.varargin)的參數(shù)進(jìn)行傳遞。數(shù)據(jù)通過varargin傳到它的函數(shù)里面的。形式為functionvarargout=subGUI(varargin),其中varagin是輸入變量,這是指?jìng)魅氲臄?shù)據(jù),而varagout是輸出變量,是接收的數(shù)據(jù),數(shù)值是否發(fā)生改變?nèi)Q函數(shù)體的定義;然而在MATLAB的GUI里,最常用的還是handles函數(shù)。這里handles被稱為句柄,定義handles.a=a,guidata(hObject,handles),使得a中的數(shù)據(jù)作為傳入數(shù)據(jù),而其他控件處若想要接收a里面的數(shù)據(jù)可在callback函數(shù)下輸入命令x=handles.a,該命令使a中數(shù)據(jù)在x中接收到了,并儲(chǔ)存在x中;還用其他方法像使用setappdata函數(shù)作為句柄,往里面加入數(shù)據(jù),或者利用控件的userdata屬性來傳遞數(shù)據(jù),等等。后者的方法不常用,可以適當(dāng)了解一些,以方便閱讀不同的程序第3章程序總體設(shè)計(jì)本程序的主要功能是通過matlab的GUI界面編制一個(gè)簡(jiǎn)易的圖形界面以讀取bmp,jpg,jpeg格式的原始圖像數(shù)據(jù),并對(duì)它們進(jìn)行分析和處理,得到所需要的效果,并把處理后的相關(guān)信息用圖像顯示出來。本軟件的主要功能有:灰度變換,空間域和頻率域?yàn)V波,彩色圖像處理,噪聲處理,表示與描述。3.1整體界面設(shè)計(jì)用MATLAB對(duì)數(shù)字圖像進(jìn)行處理,是將數(shù)字圖像視為一個(gè)二維或者三維的矩陣,通常人為灰度圖像為二維矩陣,而C彩色圖像為三維矩陣,MATLAB對(duì)矩陣的運(yùn)算功能表現(xiàn)良好,基于此。設(shè)計(jì)出這個(gè)GUI界面,輸入輸出的圖像處理過程中,把對(duì)圖像的處理視作了一個(gè)矩陣的計(jì)算處理,這使得初學(xué)者可以掌握?qǐng)D像處理的物理意義,方便理解。3.1.1設(shè)計(jì)原則不同的人審美觀和價(jià)值理念都不同,所以也不苛求不同的人都作出一個(gè)相同界面的GUI出來。但是,畢竟作為一個(gè)以實(shí)用性為主,講究通用性和易理解性,這就要求創(chuàng)建出來的GUI必須要遵循一些原則,設(shè)計(jì)出來的GUI才有意義。(1)精簡(jiǎn)性:精簡(jiǎn)的含義在此包含多方面,首先要界面布局精簡(jiǎn),不能讓用戶感覺雜亂。然后要求操作精簡(jiǎn),每一步的操作都盡量花費(fèi)較少的時(shí)間和精力。最后要求代碼精簡(jiǎn),代碼如果過于復(fù)雜,會(huì)影響軟件運(yùn)行的速度,而且后期有需要更改的地方,操作起來也比較麻煩。(2)實(shí)用性:設(shè)計(jì)一個(gè)GUI一定要考慮到實(shí)用這一重要理念,為了追求實(shí)用的效果,GUI的功能上必須嚴(yán)格把控。功能操作一定要正確實(shí)現(xiàn)。比如說功能名稱和代碼一定要匹配,不能點(diǎn)擊一個(gè)按鈕,執(zhí)行的卻是其他或者錯(cuò)誤的功能。(3)通用性:設(shè)計(jì)時(shí)還需盡量滿足人們的通常使用習(xí)慣。菜單和分欄布局的合理,使人一目了然,可以快速找到需要執(zhí)行的操作。3.1.2窗口界面的實(shí)現(xiàn)首先就是要打開MATLAB軟件,進(jìn)入界面之后,可以看到默認(rèn)的工作界面,主要包括四個(gè)界面:當(dāng)前目錄窗口,命令窗口,命令歷史記錄窗口和工作空間窗口。這四個(gè)界面可以根據(jù)自己的習(xí)慣進(jìn)行關(guān)閉,調(diào)整位置進(jìn)行重新排列。當(dāng)然修改后的界面窗口也是可以恢復(fù)的。恢復(fù)的操作步驟也是很簡(jiǎn)單的:打開MATLAB,依次點(diǎn)擊:“Desktop”“DesktopLayout”“Default”,就可以恢復(fù)MATLAB初始界面窗口。啟動(dòng)GUI時(shí)只需在command命令行輸入guide,注意區(qū)分大小寫,如果輸入錯(cuò)誤會(huì)出現(xiàn)提示輸入guide,選擇即可。輸入后敲擊回車鍵,會(huì)彈出guide快速入門的窗口框,,彈出的窗口如圖3-1所示:圖3-1GUI啟動(dòng)界面Fig3-1GUIstarttheinterface先選擇新建GUI,在彈出的guidetemplates選項(xiàng)下選擇BlankGUI(Default)選項(xiàng),點(diǎn)擊確定,進(jìn)入圖形用戶界面來設(shè)計(jì)GUI系統(tǒng)靜態(tài)界面。圖3-2GUIDE界面Fig3-2GUIinterface圖3-2是GUI編輯界面下的各類控件陳列。進(jìn)入此界面后,即可選擇下一步的控件編輯。3.2具體設(shè)計(jì)步驟軟件的總體設(shè)計(jì)界面布局如圖3-3所示,主要分為2個(gè)區(qū)域:表示區(qū)域與操作區(qū)域。表示區(qū)域:用AXES控件來制作,顯示原圖像,以及效果圖,即處理前與處理后的圖像。操作區(qū)域:通過功能鍵實(shí)現(xiàn)對(duì)圖像的各種處理。拖動(dòng)若干單選按鈕,點(diǎn)擊即可激活回調(diào)程序,執(zhí)行相應(yīng)功能。注意區(qū)分普通按鈕和單選按鈕,他們?cè)谕庑紊嫌酗@著區(qū)別。圖3-3設(shè)計(jì)圖Fig3-3designdrawing設(shè)計(jì)完成后運(yùn)行的軟件界面如圖3-4,在此界面下為按鈕輸入代碼,完成GUI的創(chuàng)建。圖3-4程序成品圖Fig3-4programdiagram第4章具體操作與實(shí)現(xiàn)4.1灰度變換灰度變換是指根據(jù)需要按某種變換關(guān)系來改變?cè)瓐D像中每一點(diǎn)像素灰度值的方法。其目的是基于實(shí)際需要的。通過實(shí)際需要的目的來確定灰度變換函數(shù),就可以得到像素值發(fā)生改變的目的圖像。圖像的灰度變換處理可以視為數(shù)字圖像處理領(lǐng)域中的一種基礎(chǔ)性、廣泛性圖像處理方法,也是數(shù)字圖像處理軟件和顯示軟件的必不可少的部分。一個(gè)成像系統(tǒng)的灰度級(jí)輸出范圍是有限度的,灰度的最大值與最小值的比值稱為對(duì)比度。由于灰度范圍的限制,容易出現(xiàn)對(duì)比度不足的缺點(diǎn),不能滿足人眼的最佳視覺需求。所以這時(shí)應(yīng)用灰度變換就能很好的解決這一問題。根據(jù)灰度變換函數(shù)的斜率可分為線性和非線性灰度變換。而本文中提及的灰度變換包括兩大內(nèi)容,即常用灰度變換和直方圖處理。4.1.1常用灰度變換灰度變換可理解為圖像的點(diǎn)運(yùn)算,每個(gè)點(diǎn)的灰度值都要過灰度變換公式的處理,進(jìn)而形成輸入和輸出的關(guān)系。形式為s=T(r),其中,灰度變換函數(shù)是T;r是未經(jīng)處理的輸入的像素值;s是經(jīng)過灰度變換函數(shù)處理,輸出后的像素值?;叶茸儞Q函數(shù)就是原圖像和輸出圖像對(duì)應(yīng)的灰度值之間映射關(guān)系,也就是說,當(dāng)輸入圖像確定,灰度變換函數(shù)也確定時(shí),那么輸出圖像就可以得到,這一過程中,核心是要建立一個(gè)準(zhǔn)確的灰度變換函數(shù)。用于圖像灰度變換的函數(shù)主要有以下三種:線性函數(shù):s=a·r+b對(duì)數(shù)變換:s=clog(1+r)冪律函數(shù):s=c程序中的亮度變換按鈕使用了imadjust函數(shù),語(yǔ)法為g=imadjust(x,[li;hi],[lo;ho],gamma),只有當(dāng)參數(shù)gamma取為1時(shí)對(duì)應(yīng)了線性變換,輸入和輸出之間按照鍵入的參數(shù)進(jìn)行線性變換;對(duì)數(shù)變換按鈕按照上述對(duì)數(shù)變換公式編程,需要注意的是需要使用到mat2gray函數(shù),該函數(shù)的功能是將圖像矩陣的灰度值進(jìn)行歸一化。歸一化指將各個(gè)不同的灰度值同一變換歸入到[0,1]之內(nèi)。伽馬變換按鈕同樣也按照冪律函數(shù)公式編程,對(duì)r值進(jìn)行歸一化處理。如圖4-1,4-2,4-3,4-4,分別為亮度變換,對(duì)數(shù)變換,伽馬變換以及對(duì)比度拉伸后的結(jié)果。這里的對(duì)數(shù)變換和伽馬變換都是通過設(shè)置參數(shù)來進(jìn)行圖像對(duì)比度增強(qiáng)的處理。對(duì)數(shù)變換和冪率(伽馬)函數(shù)的公式中s指變換后的灰度值,r為變換前的灰度值,c為可調(diào)系數(shù)。γ的值可隨圖像而定,當(dāng)圖像過暗時(shí),使其值小于1,過亮?xí)r則大于1。兩者都可以提高圖像對(duì)比度。對(duì)數(shù)變換通過壓縮灰度級(jí)的顯示范圍,市低灰度級(jí)的灰度值被擴(kuò)展,而高灰度級(jí)的卻被壓縮,進(jìn)而可以突出顯示低灰度級(jí)的部分,達(dá)到提升對(duì)比度的目的。伽馬變換則用于增強(qiáng)圖像對(duì)的修正。使過暗的圖像的高灰度級(jí)被擴(kuò)展,低灰度級(jí)被壓縮,達(dá)到提升對(duì)比度,過亮圖像則相反,兩者的函數(shù)形式上的差別導(dǎo)致對(duì)于同一副圖像的處理結(jié)果自然不同。而對(duì)比度拉伸則使用了使用intrans函數(shù),這是一個(gè)常用函數(shù),需要掌握。圖4-1亮度變換Fig4-1brightnesstransform圖4-2對(duì)數(shù)變換Fig4-2logarithmictransform圖4-3伽馬變換Fig4-3gammatransform圖4-4對(duì)比度拉伸Fig4-4contraststretch4.1.2直方圖處理基于灰度直方圖的灰度變換是圖像處理中的常用處理方法?;叶戎狈綀D可以看出圖像總體灰度級(jí)的排列分布,橫軸坐標(biāo)為圖像的灰度值,縱軸坐標(biāo)為橫軸對(duì)應(yīng)值得個(gè)數(shù)或者頻率,依據(jù)需要而選定一個(gè)即可。依據(jù)灰度直方圖可以確立灰度級(jí)分布的這一特性,可以將其應(yīng)用到灰度變換??梢詫?duì)直接圖像的直方圖進(jìn)行處理,然后將處理后的直方圖映射到一個(gè)新的輸出圖像,這就是直方圖處理的原理。MATLAB的GUI中支持圖像直方圖的處理,有各種函數(shù)來對(duì)圖像的直方圖進(jìn)行顯示和處理,本程序選擇了以下幾個(gè)功能進(jìn)行闡述:直方圖顯示,直方圖均衡,自適應(yīng)直方圖均衡以及直方圖匹配。直方圖顯示(如圖4-5):基于當(dāng)前axes1中的圖像的灰度級(jí)分布,顯示出該圖像的灰度直方圖,使用imhist函數(shù)即可。直方圖均衡(如圖4-6):直方圖均衡是通過調(diào)整圖像的直方圖,來達(dá)到使輸出圖像灰度分布均衡化,提高圖像灰度顯示范圍的方法。首先需要利用原圖像的灰度直方圖,求出灰度變換函數(shù)的形式s=T(r)=j=0knjn自適應(yīng)直方圖均衡(如圖4-7):這種方法需要用到后面提到的直方圖匹配,先利用直方圖匹配對(duì)圖像中每個(gè)較小的區(qū)域進(jìn)行處理,然后通過插值法(一般為雙線性插值)將相鄰的較小區(qū)域重組,這種方法可以使圖像的人工邊界和局部噪聲得到改善。本程序使用的是adapthisteq函數(shù),語(yǔ)法為z=adapthisteq(x,param,val,…),param設(shè)置小區(qū)域,val為小區(qū)域參數(shù)值。直方圖匹配(如圖4-8,4-9,4-10):與直方圖均衡類似,,該方法可以生成具有特定直方圖的圖像。利用s=Tr=(L?1)0圖4-5直方圖顯示Fig4-5histogram圖4-6直方圖均衡Fig4-6histogramequalization圖4-7自適應(yīng)直方圖均衡Fig4-7adaptivehistogramequalization圖4-8直方圖匹配,高斯雙峰函數(shù)Fig4-8histogrammatching圖4-9輸入圖像累計(jì)直方圖Fig4-9histogrammatching圖4-10直方圖匹配結(jié)果Fig4-10histogrammatching4.2空間和頻率域?yàn)V波圖像濾波是研究數(shù)字圖像處理領(lǐng)域中,不可或缺的一步。濾波始于信號(hào)與系統(tǒng)領(lǐng)域中,而在數(shù)字圖像處理中,是將圖像視為信號(hào)進(jìn)行處理,才有了濾波這一說法。濾波操作可以強(qiáng)調(diào)顯示某些想要信息,弱化過濾某些不想要的信息,這一過程就好像用一個(gè)篩子在過濾一樣。圖像濾波是預(yù)處理中必備的操作,其結(jié)果好壞對(duì)后續(xù)操作影響較大,但需要注意的是通常設(shè)計(jì)的圖像濾波器,不能達(dá)到對(duì)圖像理想化的操作。另外濾波器的參數(shù)對(duì)不同圖像的設(shè)置也有所不同,一些無關(guān)信息的摻雜避免不了,只能通過科學(xué)的方法,盡可能的獲取有用的信息,同時(shí)刪掉無關(guān)信息。圖像濾波的實(shí)際意義有兩個(gè):一方面可以提取出圖像的特征信息,另一方面可以在一定程度上消減由數(shù)字化所引入的圖像噪聲。需要遵循的濾波的要求有:不能損壞破壞圖像內(nèi)特征邊界等關(guān)鍵信息;實(shí)現(xiàn)一定程度上的濾除無關(guān)量的操作。具體的圖像的濾波方法很多,按其作用范圍歸為頻率域和空間域兩大類。頻率域法的處理是先將圖像的灰度值進(jìn)行某一變換,然后對(duì)變換后的新灰度值進(jìn)行某些運(yùn)算,運(yùn)算后的結(jié)果再通過逆變換獲得濾波后的圖像。頻率域?yàn)V波是間接的濾波方法。空間域?yàn)V波卻是直接作用于圖像灰度值的濾波方法,在濾波時(shí),它對(duì)圖像的每一點(diǎn)像素值執(zhí)行運(yùn)算,得到新的圖像,而不需要在變換域內(nèi)進(jìn)行計(jì)算。4.2.1空間域?yàn)V波空間濾波由如下步驟組成:(1)先選取圖像中心坐標(biāo)(x,y);(2)對(duì)濾波器規(guī)定的點(diǎn)(x、y)的鄰域內(nèi)的灰度值進(jìn)行運(yùn)算;(3)選取操作結(jié)果為該點(diǎn)處的濾波值;(4)對(duì)圖像中的每一點(diǎn)的灰度值重復(fù)該濾波操作。線性空間濾波(如圖4-11):使用一個(gè)3*3的全1數(shù)組濾波模板,使用imfilter函數(shù)濾波,經(jīng)改濾波后圖像灰度值增加。拉普拉斯濾波(如圖4-12):該濾波模板拉普拉斯算子是二階導(dǎo)數(shù)算子,它與方向無關(guān),具有各向同性(旋轉(zhuǎn)軸對(duì)稱),可用于邊緣檢測(cè)。選取該算子進(jìn)行濾波可以檢測(cè)出邊緣點(diǎn)的位置,但有一個(gè)很大的弊端,該算子不會(huì)考慮到實(shí)際圖片的灰度差而引入噪聲點(diǎn)。常用拉普拉斯濾波模板為[010均值濾波(如圖4-13):均值指的是某一中心點(diǎn)(x,y)的領(lǐng)域內(nèi)的灰度值之和,與灰度值個(gè)數(shù)之比。然后用均值代替這個(gè)中心點(diǎn),即均值濾波之后的值。均值濾波會(huì)平滑圖像的灰度,使圖像的顯示灰度過渡平緩,進(jìn)而圖像的灰度值相對(duì)恒定的區(qū)域會(huì)擴(kuò)展,從頻域的觀點(diǎn)來看,低頻的區(qū)域會(huì)加強(qiáng),灰度過渡陡峭的區(qū)域即高頻區(qū)域?qū)?huì)受到抑制。本程序使用imfilter函數(shù),直接調(diào)用“average”模板。最小值濾波(如圖4-14):對(duì)是某一中心點(diǎn)(x,y)的領(lǐng)域內(nèi)的灰度值先進(jìn)行大小排序,選取排列中最小的點(diǎn)的灰度值,用來替代中心點(diǎn),作為最小值濾波后的值本程序使用ordfilt2函數(shù),即可完成最小值濾波,濾波后圖像的灰度值會(huì)減小。但注意該函數(shù)只能對(duì)彩色圖像進(jìn)行處理。中值濾波(如圖4-15):對(duì)是某一中心點(diǎn)(x,y)的領(lǐng)域內(nèi)的灰度值先進(jìn)行大小排序,注意選取奇數(shù)個(gè)點(diǎn),這樣可以調(diào)出序列中中間位置的點(diǎn)。本程序使用medfilt函數(shù)。該函數(shù)只能對(duì)彩色圖像進(jìn)行處理。圖4-11線性空間濾波Fig4-11linespacefiltering圖4-12拉普拉斯濾波Fig4-12laplacefiltering圖4-13均值濾波Fig4-13themeanfiltering圖4-14最小值濾波Fig4-14minvaluefiltering圖4-15中值濾波Fig4-15themedianfiltering4.2.2頻率域?yàn)V波頻率域?yàn)V波是對(duì)圖像的每一個(gè)灰度值進(jìn)行離散傅里葉變換,將灰度值由空間域映射到頻域。然后在頻域內(nèi)對(duì)頻率分量進(jìn)行處理,得到所需頻率特征的圖像。因?yàn)橛?jì)算機(jī)處理的是離散值,所以對(duì)圖像灰度值進(jìn)行快速離散傅里葉變換,即二維DFT:F(K,L)=n=0n?1傅里葉頻譜(如圖4-16):所謂的頻譜指傅里葉變換的幅值。頻譜也可稱為傅里葉譜。在頻譜圖中,可以通過分析出不同頻率的頻譜分量。Matlab顯示的頻譜圖中,灰度值不為0的部分,表示有灰度不恒定,越亮的區(qū)域其頻率分量相對(duì)來講越高。通過傅里葉變換可以觀察到不同頻率的信號(hào)分布。本程序中用fft2函數(shù)進(jìn)行傅里葉變換,然后fftshift函數(shù)將變換的原點(diǎn)移動(dòng)到頻率矩形中心,最后,通過對(duì)數(shù)變換來壓縮值的范圍。圖像頻域?yàn)V波(DFT)的基本步驟為:(1).使用函數(shù)tofloat把輸入圖像轉(zhuǎn)換為浮點(diǎn)圖像;(2).使用paddedsize函數(shù)求填充:P=paddedsize(size(x));%如果輸入是彩色圖像,必須要灰度化rgb2gray;(3).得到使用填充的傅里葉變化;(4)制作濾波函數(shù)H,其大小為P(1)*P(2)。如果該濾波函數(shù)已居中,使用前要令H=fftshift(H)。(5).求圖像的頻域?yàn)V波值。用圖像頻域變換與濾波函數(shù)作乘積:Z=H.*F;(6).求G的傅里葉逆變換的實(shí)部:z=real(ifft2(Z));(7).將圖像處理成原來的尺寸:z=z(1:size(x,1),1:size(x,2));(8)需要時(shí)將濾波后的圖像轉(zhuǎn)換為輸入類:x=revertclass(x);以下的三個(gè)操作都遵循以上步驟。低通高斯濾波(如圖4-17):傳遞函數(shù)為HL(u,v)=e?高斯高通濾波(如圖4-18):傳遞函數(shù)為HP=1-HL,將圖像通過高斯低通濾波后,會(huì)濾掉圖像中的低頻分量突出細(xì)節(jié)。本程序中的截止頻率D0設(shè)為原圖像寬度的0.05倍。高頻強(qiáng)調(diào)濾波(如圖4-19):傳遞函數(shù)為HH圖4-16傅里葉頻譜Fig4-16Fourierspectrum圖4-17高斯低通濾波Fig4-17gaussianlow-pass圖4-18高斯高通濾波Fig4-15gaussianhigh-pass圖4-19高頻強(qiáng)調(diào)濾波4.3彩色圖像處理4.3.1常用圖像類型及其轉(zhuǎn)化RGB圖像是最常用的彩色圖像??蓪GB圖像視為一個(gè)三維數(shù)組,其元素個(gè)數(shù)為3*M*N個(gè),其中每個(gè)值對(duì)應(yīng)一個(gè)紅,綠,藍(lán)的分量。經(jīng)過紅分量,綠分量,藍(lán)分量的圖像疊加在一起,形成一幅RGB圖像。將三個(gè)分量傳送到顯示器的紅、綠、藍(lán)處理端時(shí),會(huì)在顯示屏上形成RGB圖像。圖像灰度值的取值范圍由圖像的數(shù)據(jù)類型決定。當(dāng)數(shù)據(jù)類型是double或float型,其取值范圍就是[0,1],當(dāng)數(shù)據(jù)類型是uint8類,灰度取值范圍分別是[0,255],uint16類則是[0,65535]。RGB顏色標(biāo)準(zhǔn)是大多數(shù)顯示設(shè)備的通用標(biāo)準(zhǔn)。在顯示器上,內(nèi)部電子槍射擊電子于紅、綠、阿光極上形成色彩的,一般電腦可顯示32位或64位顏色,轉(zhuǎn)換成顏色數(shù)可達(dá)千萬種。以下RGB圖像類型的轉(zhuǎn)換都可以下直接調(diào)用所給庫(kù)函數(shù)實(shí)現(xiàn),除RGB轉(zhuǎn)HSI外。Rgb2ind(如圖4-20):ind為索引圖像縮寫。索引圖像的組成成分有:一個(gè)整數(shù)數(shù)據(jù)矩陣和一個(gè)名為map的彩色映射矩陣。Map為mx3型,其中m是rgb圖像的顏色數(shù),每行代表一個(gè)紅綠藍(lán)分量的疊加,每列元素分別為分量的值。索引圖像通過映射矩陣映射到RGB圖像。整數(shù)對(duì)應(yīng)矩陣值為彩色映射矩陣的索引,由此確定每點(diǎn)的彩色。索引圖像往往具有256種顏色。Rgb2NTSC(如圖4-21):NTSC彩色制式在電視技術(shù)中廣泛使用。特點(diǎn)是,灰度和彩色是隔開的,所以可以理解為該種類型的圖像可分別直接表示出灰度圖像和彩色圖像。NTSC格式中,圖像的組成有:亮度(Y),色調(diào)(I),飽和度(Q)。Y:Luminance,指亮度,可理解為灰度值(Grayvalue);I:In-phase和Q:Quadrature-phase,兩者形成不含亮度的顏色,I表示從橙色到青色,Quadrature-phase從紫色到黃綠色。轉(zhuǎn)換關(guān)系矩陣為YIQRgb2YCbCr(如圖4-22):YCbCr彩色空間,用于連續(xù)的數(shù)字影像獲取和播放中。通常會(huì)用于影片中的影像連續(xù)處理,或是數(shù)字?jǐn)z影系統(tǒng)中。Y(Luma):明亮度,“亮度”是與RGB分量均有關(guān)系,三者按固定的定義運(yùn)算。;Cb(ChrominanceBlue):表示了RGB圖像中藍(lán)色分量與亮度值之間的差別;Cr(ChrominanceRed):反映了RGB圖像紅色分量與亮度值之間的差別。轉(zhuǎn)換關(guān)系為:Y=0.257*R+0.564*G+0.098*B+16Cb=-0.148*R-0.291*G+0.439*B+128Cr=0.439*R-0.368*G-0.071*B+128Rgb2HSV(如圖4-23):HSV用倒圓錐體中的表示色彩。H:色相(Hue)、S:飽和度(Saturation)、V:明度(Value),H與人們?nèi)粘L岬降念伾窒嘟?,在這里也用它來表示顏色名稱。S用來顏色中的白色或白光的摻雜比,白色占比越高,則說圖像的飽和度越小,給人視覺沖擊效果會(huì)減弱一些,飽和度可用0-100%之間的百分比值來表示。V則是形成三維空間物體的一個(gè)坐標(biāo)軸,實(shí)際意義不明顯,但輔助H和S建立出HSI的彩色空間模型。本程序使用RGB2HSI函數(shù),注意這不是MATLAB工具箱的函數(shù),而需要用戶自建的M函數(shù)。圖4-26HSV模型Fig4-26HSVmodelRgb2HSI(如圖4-24):HSI彩色空間模型與上述的幾種模型,最大的差別是它充分考慮到了人的視覺系統(tǒng)對(duì)圖像的理解能力。字母縮寫分別為色調(diào)(Hue)、色飽和度(Saturation)和亮度(Intensity)HSI模型是個(gè)圓錐空間模型。該色彩模型比較復(fù)雜,可卻能從人眼角度,對(duì)亮度,飽和度,色調(diào)作出說明解釋。數(shù)字圖像處理,計(jì)算機(jī)視覺許多算法都是基于HSI中,運(yùn)算和模型是獨(dú)立且分開。所以,從運(yùn)算量的角度來看,從HIS中入手是最便捷的。HSI和RGB是同一圖像的色彩空間,它們之間轉(zhuǎn)換關(guān)系如下(如圖4-30):H=θ,B≤G360?θ,B>GS=1-3(R+G+B)I=13圖4-30HSI彩色空間模型Fig4-30hsimodelRgb2gray(如圖4-25):圖像灰度化也是彩色圖像處理中的常用手段。在本章的第一節(jié)提到的灰度變換中許多方法都是基于灰度圖像的。將彩色圖像轉(zhuǎn)換成灰度圖像,降維后,可以減少運(yùn)算量。圖像灰度化也是預(yù)處理的步驟之一。彩色圖像有三個(gè)彩色分量,且各個(gè)分量值不同,而灰度圖像則相反,紅,綠,藍(lán)分量都相等灰灰度圖像與彩色圖像在圖像的色度和亮度等級(jí)的有相同的分布表達(dá)。RGB圖像轉(zhuǎn)為灰度圖像有多種算法,本程序中采用的RGB2gray函數(shù),其基本原理是將每個(gè)三值分量中的各個(gè)分量用一個(gè)加權(quán)平均值來代替。表達(dá)式為:Gray=0.2989R+0.5870G+0.1140B圖4-20RGB2indFig4-20RGB2ind圖4-21RGB2NTSCFig4-21RGB2NTSC圖4-22RGB2YcbCrFig4-22RGB2YcbCr圖4-23RGB2HSVFig4-23RGB2HSV圖4-24RGB2HSIFig4-24RGB2HSI圖4-25RGB2grayFig4-25RGB2gray4.3.2常用彩色圖像處理比起灰度圖像,彩色圖像在數(shù)字圖像處理中更為常見,有時(shí)是把彩色圖像轉(zhuǎn)為灰度圖像處理,然后再變換為彩色圖像,也有時(shí)是直接對(duì)彩色圖像進(jìn)行處理。彩色圖像的處理與灰度圖像類似,所不同的是彩色圖像的分量至少為三個(gè),因此在與灰度圖像的灰度值處理上有所差別。常用的彩色圖像處理可從三種角度入手:(1)彩色變換:彩色映射是從一個(gè)點(diǎn)的灰度值映射到另一點(diǎn)的灰度值,空間坐標(biāo)不參與運(yùn)算;(2)彩色分量的空間:在各自的彩色分量空間處理,然后將處理后的分量空間進(jìn)行疊加;(3)彩色向量的處理:將彩色分量視為一個(gè)三維向量,對(duì)這個(gè)彩色向量處理,及同時(shí)對(duì)三個(gè)彩色分量進(jìn)行處理?;叶葓D像中經(jīng)常使用平滑,銳化,在彩色圖像中也很適用。彩色圖像的線性平滑和銳化通常采用以下步驟:(1)提取分量:X(R、G、B)三個(gè)彩色分量。fR=X(:,:,1);fG=X(:,:,2);fB=X(:,:,3);(2)單獨(dú)對(duì)相應(yīng)的顏色分量進(jìn)行某種濾波處理。fR_filtered=imfilter(fR,w,'replicate');fG_filtered=imfilter(fG,w,'replicate');fB_filtered=imfilter(fB,w,'replicate');也可以對(duì)(R、G、B)這三個(gè)圖像分量一起處理,不用進(jìn)行第三步。(3)利用cat函數(shù)將分量疊加,得到目的圖像。fc_filtered=cat(3,fR_filtered,fG_filtered,fB_filtered)。彩色圖像平滑(如圖4-32):本程序中先將RGB圖像轉(zhuǎn)換HSI圖像,然后使用一個(gè)均值濾波器來平滑HSI的圖像的I分量,濾波器模本為了可以足以模糊圖像,同時(shí)保留足夠的信息,所以選擇25*25的大小。濾波后的I分量與H和S分量經(jīng)cat函數(shù)疊加成新的HSI圖像,最后將HSI圖像轉(zhuǎn)換成RGB圖像即可完成彩色圖像的平滑。彩色圖像銳化(如圖4-33):本程序中為了起到銳化圖像的效果選用拉普拉斯作為濾波模板,大小為5*5,。先將圖像轉(zhuǎn)化為浮點(diǎn)圖像,然后直接將RGB圖像經(jīng)過拉普拉斯濾波,用原圖與濾波后的圖像求差即可得到銳化后的圖像。圖4-31彩色圖像平滑F(xiàn)ig4-31colorimagesmoothiing圖4-32彩色圖像銳化Fig4-32colorimagesharpening4.4圖像分割圖像分割(Segmentation)指的是將一幅圖像按某種方法分成若干個(gè)小部分,通常是以灰度值作為劃分基礎(chǔ)的,從而提取出目標(biāo)區(qū)域進(jìn)行下一步的處理過程。從圖像處理的階段想要跨越到圖像分析的階段,就不得不經(jīng)歷圖像分割這個(gè)處理步驟。通過圖像分割,使圖像的表現(xiàn)形式更加簡(jiǎn)化,符合處理需求。圖像分割用來尋找圖像中的物體的邊界最為方便。方法上,通過是對(duì)圖像中的每個(gè)灰度值進(jìn)行遍歷,將符合相同規(guī)定性質(zhì)的灰度值的區(qū)域進(jìn)行標(biāo)記,標(biāo)記后的標(biāo)簽相同的灰度在視覺特性上具有共同點(diǎn)。圖像分割可以提取出圖像上子區(qū)域的集合,或是圖像的輪廓線的集合。利用提取出具有相同視覺特征可以進(jìn)行圖像分析?,F(xiàn)有的圖像分割方法主要分以下幾類:基于閾值的分割、基于區(qū)域的處理、梯度和距離變換分水嶺算法、邊緣分割、小波變換等。4.4.1基于邊緣的分割方法使用邊緣檢測(cè)來進(jìn)行圖像分割是最常見的圖像分割方法之一,確定出邊緣像素的位置點(diǎn),將這些邊界點(diǎn)用線連在一起構(gòu)成邊界線。邊緣是指圖像中屬于不同區(qū)域的像素點(diǎn),但在圖像的空間位置上是相鄰的,串線后構(gòu)成的集合。它反映了圖像中發(fā)生突變的區(qū)域,可以使紋理,灰度,后者顏色產(chǎn)生突變。求出圖像邊緣可以獲取兩個(gè)重要信息:幅度和方向。邊緣線方向上的灰度變化平緩,但其垂直方向的灰度變化較大。依此,可以根據(jù)圖像灰度值的一階和二階導(dǎo)數(shù)來求出邊緣,表示出邊緣的特性。邊緣檢測(cè)往往都是基于灰度值進(jìn)行的,特性是邊緣灰度值的變化會(huì)呈現(xiàn)出階躍型和屋頂型,其中階躍型代表兩側(cè)會(huì)有不同的灰度值,屋頂型代表灰度值增加或減少的的趨勢(shì)轉(zhuǎn)折點(diǎn)。一階導(dǎo)數(shù)的極值和與二階導(dǎo)數(shù)的零點(diǎn)通過情況可以共同檢測(cè)出邊緣,實(shí)際操作可用模板進(jìn)行卷積實(shí)現(xiàn)。斜線(+45度)檢測(cè)(如圖4-35):線檢測(cè)模板(如圖4-33)在一幅圖像上移動(dòng),經(jīng)過所有灰度值的檢測(cè)后,會(huì)對(duì)+45度方向的斜線產(chǎn)生較強(qiáng)的響應(yīng),輸出這些響應(yīng)強(qiáng)烈的點(diǎn)模板中的所有的系數(shù)算術(shù)和為0,代表恒定灰度區(qū)域中不會(huì)對(duì)該模板響應(yīng)。本程序中先定義出濾波模板,然后將圖像轉(zhuǎn)化為浮點(diǎn)圖像后,再用定義后的模板濾波,即可得到檢測(cè)圖像,檢測(cè)后的圖像,越亮的點(diǎn)表示響應(yīng)越強(qiáng)烈。2-1-1-12-1-1-12圖4-33+45度斜線檢測(cè)模板Fig4-33+45degreeslashdetectionmodelsobel邊緣檢測(cè)(如圖4-36):該檢測(cè)方法也是用模板進(jìn)行檢測(cè)邊緣。Sobel算子的幾何意義決定了可用它來進(jìn)行邊緣檢測(cè),在數(shù)字圖像處理中,用離散型的差分算子來代替連續(xù)的微分運(yùn)算。經(jīng)sobel模板運(yùn)算后可求出圖像灰度函數(shù)的梯度,Sobel算子從集數(shù)學(xué)意義上說屬于一階導(dǎo)數(shù)算子,在該算子的系數(shù)中,可以發(fā)現(xiàn),它還具有加權(quán)平均運(yùn)算的性質(zhì),所以它對(duì)平滑噪聲還有一定的作用。本程序使用的橫向和縱向的兩個(gè)3x3的矩陣模板。通過與圖像的灰度值進(jìn)行卷積運(yùn)算,能夠求出對(duì)應(yīng)方向上的梯度值。對(duì)圖像上每點(diǎn)使用公式G=Gx2+圖4-34sobel橫向和縱向模板Fig4-34Sobelmodelcanny邊緣檢測(cè)(如圖4-37):edge函數(shù)中,canny的使用次數(shù)最多。檢測(cè)過程如下:(1)先將一幅圖像進(jìn)行平滑;(2)對(duì)圖像中每一點(diǎn)的灰度值使用[gx2+g圖4-35+45度線檢測(cè)Fig4-35+45degreeslashdetection圖4-36sobel邊緣檢測(cè)Fig4-36sobeledgedetection圖4-37canny邊緣檢測(cè)Fig4-37cannyedgedetection4.4.2基于閾值的圖像分割基于閾值的分割從物理意義上來講,是最容易理解的的圖像分割方法。該方法只需選定一個(gè)或若干固定的灰度值,充當(dāng)圖像灰度值劃分區(qū)域的界限,然后將圖像中的每個(gè)點(diǎn)的灰度值進(jìn)行分類,按照預(yù)先定義的方法對(duì)每一類進(jìn)行處理,即可得到分割后的圖像。閾值分割的定義涉及到了繁雜的集合表示,在此不多做敘述。對(duì)于閾值分割來講,最重要的就是閾值的選定。閾值大小的選取決定了分割后圖像的好壞程度。正確的選取閾值可以依據(jù)先驗(yàn)知識(shí),也可通過算法,自動(dòng)選擇,使用直方圖進(jìn)行閾值選取是一個(gè)合適的工具。一般來說,不同圖像的閾值往往不同。閾值分割法的種類劃分也是依據(jù)了閾值的選取進(jìn)行分類的,大致可分為全局閾值處理法,局部閾值處理法,多閾值處理法,可變閾值處理法等。根據(jù)需要和圖像的復(fù)雜程度不同,選擇合適的閾值分割法即可。全局閾值分割(如圖4-38):該方法的閾值是通過實(shí)驗(yàn)得來的,在確定這個(gè)灰度值的過程中,是通過迭代算法實(shí)現(xiàn)。可預(yù)先用初始化圖像的閾值,用圖像的灰度平均值T來代替。分割后形成的兩個(gè)區(qū)域,再分別用均值代替各自區(qū)域的閾值,如此反復(fù)迭代,當(dāng)結(jié)果差小于之前定義好的一個(gè)T1時(shí),確定出最終的閾值T,本程序T1設(shè)定為0.5,使用im2bw函數(shù)進(jìn)行圖像分割。求迭代時(shí)的循環(huán)語(yǔ)句按照c語(yǔ)言語(yǔ)法編程即可。Ostu閾值分割(如圖4-39):該方法的閾值屬于自適應(yīng)閾值。按照灰度值的分布,可把圖像分為目標(biāo)和非目標(biāo)兩個(gè)區(qū)域。區(qū)域間的類方差與兩部分差別正相關(guān)。因此可以通過求最大化類方差來確定閾值。但需要注意的是,在求最佳測(cè)度的過程中,要使用到圖像的灰度直方圖。這是灰度直方圖作為求閾值工具的一個(gè)體現(xiàn)。本程序用的graythresh函數(shù),語(yǔ)法為[T,S]=graythresh(X),其中T為輸出閾值,S為可分性測(cè)度,X為輸入圖像。局部閾值分割(如圖4-40):該方法可用于解決全局閾值分割時(shí),因?yàn)楣庹彰靼挡痪斐傻姆指罾щy的問題。這種方法不同于全局閾值處理,它使用到圖像中一點(diǎn)鄰域的局部均值和標(biāo)準(zhǔn)差。求局部標(biāo)準(zhǔn)差的函數(shù)可用stdfilt。求出局部均值mxy和σxy后,令局部閾值為T1=aσxy圖4-40全局閾值分割Fig4-40globalthresholdsegmentation圖4-41OSTU閾值分割Fig4-41ostuthresholdsegmentation圖4-42局部閾值分割Fig4-42localthresholdsegmentation4.4.3基于區(qū)域和分水嶺變換的圖像分割上文提到的兩種兩種分割原理都是基于灰度值而劃分圖像,將圖像分為不同的區(qū)域。這里用到的圖像分割方法是不再去關(guān)注圖像的灰度值,而是直接在區(qū)域上進(jìn)行操作。區(qū)域的通俗理解是將一幅圖像中的某些點(diǎn),用一個(gè)集合圈起來,形成一個(gè)區(qū)域,劃分區(qū)域時(shí)需要根據(jù)相似性準(zhǔn)則。但在數(shù)字圖像的處理中,區(qū)域的定義要滿足幾條性質(zhì):一幅圖像中的每一個(gè)點(diǎn)都必須被劃分到一個(gè)區(qū)域中;劃分后形成的一個(gè)區(qū)域內(nèi),所有點(diǎn)都滿足連通性,可以是4連接或8連接;各個(gè)區(qū)域不能重疊,在集合的觀點(diǎn)來看,就是集合不能相交;不同區(qū)域的定義屬性不同。滿足以上幾點(diǎn),這樣的區(qū)域處理起來才有意義。區(qū)域分割在工程中應(yīng)用較多,主要處理方法有區(qū)域生長(zhǎng),區(qū)域分離和聚合等。本文最后提到的一種圖像分割方法是基于分水嶺變換的圖像分割。在地理學(xué)中一種稱為分水嶺的地勢(shì)可以用來比作一幅圖像的灰度值。類似海拔分布圖一樣,將圖像中的灰度值大小看做該點(diǎn)所具有的空間高度。一個(gè)鄰域內(nèi)的極小值為中心,和在周邊灰度值較低的點(diǎn)相當(dāng)于地理上的集水盆地,集水盆最外層的一圈邊界就被稱為分水嶺。而使用這種方法來進(jìn)行圖像分割,就是將一幅圖像中的分水嶺檢測(cè)出來,作為區(qū)域分割的邊界。如果圖像的邊緣灰度與周圍灰度差值不明顯,使用分水嶺變換進(jìn)行圖像分割是一個(gè)較好的選擇。但選用此法最好對(duì)圖像進(jìn)行預(yù)處理,使用濾波器平滑一下噪聲,防止過分割現(xiàn)象的產(chǎn)生。梯度分水嶺分割(如圖4-43):梯度在這里起的作用是通過梯度的幅度,來求出分水嶺線的所在位置。對(duì)一幅圖像求梯度幅度,可以根據(jù)結(jié)果圖中灰度值較高的位置來確定邊緣所在,灰度值較低的部分則不是邊緣。本程序用sobel模板對(duì)圖像進(jìn)行預(yù)處理,可以有效平滑噪聲。利用上文提到的公式求出梯度幅度圖像,再幅度圖輸入到watershed函數(shù)中,即可得到分割后的圖像,為了區(qū)域邊界線更明顯,本程序?qū)⒎炙畮X線的灰度設(shè)置為0,使其在圖像中顯示出白色。距離變換分水嶺分割(如圖4-44):使用距離變換來找出分水嶺線也是常用的圖像分割方法。該算法先將圖像二值化,使得所有點(diǎn)的灰度值都用0或1來表示。距離變換的做法是將二值圖像中所有點(diǎn)的灰度值,都用一個(gè)距離值替代,這個(gè)距離是從該點(diǎn)到最近的灰度值為0點(diǎn)的距離。距離變換的結(jié)果圖中灰度值為0的點(diǎn)就是分水嶺線。本程序用im2bw函數(shù)和graythresh函數(shù)將圖像轉(zhuǎn)換為二值圖像。然后對(duì)圖像求反,求反圖像輸入到bwdist函數(shù)計(jì)算距離變換,最后用watershed函數(shù)求的分割后的圖像,將分水嶺線的灰度設(shè)置為0,使其在圖像中顯示出白色。圖4-43梯度分水嶺分割Fig4-43gradientwatershedsegmentation圖4-44距離變換分水嶺分割Fig4-44distancetransformwatershedsegmentation4.5噪聲分析噪聲一詞源于聲學(xué)中的觀點(diǎn),在聲學(xué)中定義凡是妨礙到人們正常生活的聲音信號(hào)都用噪聲來形容。將其引申到數(shù)字圖像中,妨礙人們對(duì)圖像信息獲取的圖像信號(hào)都可以用噪聲來形容。數(shù)字圖像中的噪聲信號(hào)是二維的,其產(chǎn)生途徑多樣,產(chǎn)生后的種類也多樣,為了能更好的獲取有用的圖像信息,使得圖像的噪聲研究很有必要。圖像在產(chǎn)生,傳輸,到顯示設(shè)備上進(jìn)行顯示,不論從圖像內(nèi)部,還是從圖像外部,都有噪聲的成因。依據(jù)噪聲的研究區(qū)域可分為空間域噪聲和頻率域噪聲,從噪聲產(chǎn)生途徑分為乘性和家性噪聲,有依據(jù)噪聲的統(tǒng)計(jì)學(xué)種類可分為高斯噪聲,泊松噪聲,椒鹽噪聲等等,本節(jié)探討一些常見噪聲種類和其去除方法。
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年鋼絲清潔擦項(xiàng)目投資可行性研究分析報(bào)告
- 氣動(dòng)液壓穩(wěn)流裝置行業(yè)行業(yè)發(fā)展趨勢(shì)及投資戰(zhàn)略研究分析報(bào)告
- 2021-2026年中國(guó)車用柴油發(fā)動(dòng)機(jī)行業(yè)投資分析及發(fā)展戰(zhàn)略咨詢報(bào)告
- 2025年家具座墊行業(yè)深度研究分析報(bào)告
- 2025年盤頭自攻螺絲行業(yè)深度研究分析報(bào)告
- 2025年外貿(mào)專用自封袋行業(yè)深度研究分析報(bào)告
- 漁場(chǎng)菜籃子建設(shè)項(xiàng)目可行性研究報(bào)告
- 年產(chǎn)6.66萬噸滌綸POY絲項(xiàng)目可行性研究報(bào)告
- 2025年螺母套行業(yè)深度研究分析報(bào)告
- 2025年塑鋼線行業(yè)深度研究分析報(bào)告
- PALL過濾器專題培訓(xùn)課件
- 林業(yè)基礎(chǔ)知識(shí)考試復(fù)習(xí)題庫(kù)(濃縮500題)
- 鐵路土工試驗(yàn)培訓(xùn)課件
- 雙膜法1500ta硫氰酸紅霉素項(xiàng)目可行性研究報(bào)告
- 信息化項(xiàng)目前期準(zhǔn)備
- 220kV升壓站工程施工組織設(shè)計(jì)
- 科技成果-企業(yè)污染物排放大數(shù)據(jù)監(jiān)控及知識(shí)圖譜構(gòu)建
- 花籃拉桿懸挑架培訓(xùn)課件
- 后印象派繪畫
- GB/T 9441-1988球墨鑄鐵金相檢驗(yàn)
- GB/T 37862-2019非開挖修復(fù)用塑料管道總則
評(píng)論
0/150
提交評(píng)論