版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 摘 要</b></p><p> 數(shù)字圖像處理是一門新興技術(shù),隨著計(jì)算機(jī)硬件的發(fā)展,數(shù)字圖像的實(shí)時(shí)處理已經(jīng)成為可能,由于數(shù)字圖像處理的各種算法的出現(xiàn),使得其處理速度越來越快,能更好的為人們服務(wù)。數(shù)字圖像處理是一種通過計(jì)算機(jī)采用一定的算法對(duì)圖形圖像進(jìn)行處理的技術(shù)。數(shù)字圖像處理技術(shù)已經(jīng)在各個(gè)領(lǐng)域上都有了比較廣泛的應(yīng)用。圖像處理的信息量很大,對(duì)處理速度的要求也
2、比較高。MATLAB強(qiáng)大的運(yùn)算和圖形展示功能,使圖像處理變得更加的簡單和直觀。本文介紹了MATLAB 語言的特點(diǎn),基于MATLAB的數(shù)字圖像處理環(huán)境,介紹了如何利用MATLAB及其圖像處理工具箱進(jìn)行數(shù)字圖像處理,并通過一些例子來說明利用MATLAB圖像處理工具箱進(jìn)行圖像處理的方法。主要論述了利用MATLAB實(shí)現(xiàn)圖像增強(qiáng)、二值圖像分析等圖像處理。</p><p> 關(guān)鍵詞:MATLAB,數(shù)字圖像處理,圖像增強(qiáng),二
3、值圖像</p><p><b> Abstract</b></p><p> Digital image processing is an emerging technology, with the development of computer hardware, real-time digital image processing has become po
4、ssible due to digital image processing algorithms to appear, making it faster and faster processing speed, better for People services .Digital image processing is used by some algorithms computer graphics image processin
5、g technology. Digital image processing technology has been in various areas have a relatively wide range of applications. Image processin</p><p> Key words:MATLAB, digital image processing,
6、image enhancement,</p><p> 2-numeric image</p><p><b> 目 錄</b></p><p><b> 摘 要I</b></p><p><b> 1 緒論1</b></p>
7、<p> 1.1 課題研究目的及意義1</p><p> 1.2 國內(nèi)外研究現(xiàn)狀2</p><p> 1.3 本課題研究工作與結(jié)構(gòu)安排3</p><p> 2 數(shù)字圖像增強(qiáng)處理方法簡介5</p><p> 2.1 基本概念6</p><p> 2.2 圖像增強(qiáng)處理方法7</p&g
8、t;<p> 3 MATLAB基本知識(shí)介紹7</p><p> 3.1 MATLAB的概述7</p><p> 3.2 MATLAB產(chǎn)生的歷史背景7</p><p> 3.3MATLAB語言的特點(diǎn)........................................................................
9、...</p><p> 3.4MATLAB 在圖像處理中的應(yīng)用...........................................................</p><p><b> 4 圖像增強(qiáng)9</b></p><p> 4.1 空域變換增強(qiáng)9</p><p> 4.1.1增強(qiáng)對(duì)
10、比度</p><p> 4.1.2 圖像求反</p><p> 4.2 空域?yàn)V波增強(qiáng)9</p><p> 4.2.1 基本原理</p><p> 4.2.2 線性平滑濾波器</p><p> 4.2.3 非線性平滑濾波器</p><p> 4.2.4 線性銳化濾波器</p&g
11、t;<p><b> 4.3 頻域增強(qiáng)</b></p><p> 4.3.1 基本原理</p><p> 4.3.2 低通濾波</p><p> 4.3.3 高通濾波</p><p><b> 5 二值圖像分析</b></p><p><b>
12、; 5.1 引言</b></p><p> 5.2 二值形態(tài)學(xué)的基本運(yùn)算</p><p><b> 5.2.1 膨脹</b></p><p><b> 5.2.2 腐蝕</b></p><p> 5.3 二值分析進(jìn)行圖像處理綜合應(yīng)用</p><p>
13、5.3.1 噪聲濾除</p><p> 5.3.2 邊界提取</p><p><b> 6 總結(jié)與展望</b></p><p><b> 6.1 總結(jié)</b></p><p><b> 6.2 展望</b></p><p><b>
14、致 謝14</b></p><p><b> 參考文獻(xiàn)15</b></p><p><b> 附 錄16</b></p><p><b> 1 緒論</b></p><p> 本章簡略介紹課題的研究目的及意義,該課題國內(nèi)外研究現(xiàn)狀以及論文內(nèi)
15、容安排等。</p><p> 1.1 課題研究目的及意義</p><p> 數(shù)字圖像處理(Digital Image Processing),就是利用數(shù)字計(jì)算機(jī)或者其他數(shù)字硬件,對(duì)從圖像信息轉(zhuǎn)換而得到的電信號(hào)進(jìn)行某些數(shù)學(xué)運(yùn)算,以提高圖像的實(shí)用性。例如從衛(wèi)星圖片中提取目標(biāo)物的特征參數(shù),三維立體斷層圖像的重建等??偟膩碚f,數(shù)字圖像處理包括點(diǎn)運(yùn)算、幾何處理、圖像增強(qiáng)、圖像復(fù)原、圖像形態(tài)學(xué)處理
16、、圖像編碼、圖像重建、模式識(shí)別等。</p><p> 由于計(jì)算機(jī)處理能力的不斷增強(qiáng),數(shù)字圖像處理學(xué)科在飛速發(fā)展的同時(shí),也越來越廣泛地向許多其他學(xué)科快速交叉滲透,使得圖像作為信息獲取以及信息的利用等方面也變得越來越重要。目前數(shù)字圖像處理的應(yīng)用越來越廣泛,已經(jīng)滲透到工業(yè)、醫(yī)療保健、航空航天、軍事等各個(gè)領(lǐng)域,在國民經(jīng)濟(jì)中發(fā)揮越來越大的作用。</p><p> MathWorks公司推出的MA
17、TLAB軟件是學(xué)習(xí)數(shù)理知識(shí)的好幫手。應(yīng)用MATLAB友好的界面和豐富、實(shí)用、高效的指令及模塊,可以使人較快地認(rèn)識(shí)、理解圖像處理的相關(guān)概念,逐步掌握?qǐng)D像信號(hào)處理的基本方法,進(jìn)而能夠解決相關(guān)的工程和科研中的問題。</p><p> 圖像是人類獲取和交換信息的主要來源,因此,圖像處理的應(yīng)用領(lǐng)域必然涉及到人類生活和工作的方方面面。隨著人類活動(dòng)范圍的不斷擴(kuò)大,圖像處理的應(yīng)用領(lǐng)域也將隨之不斷擴(kuò)大,已在國家安全、經(jīng)濟(jì)發(fā)展、日
18、常生活中充當(dāng)越來越重要的角色,對(duì)國計(jì)民生的作用不可低估。</p><p> 1.2 國內(nèi)外研究現(xiàn)狀</p><p> 數(shù)字圖像處理最早出現(xiàn)于20世紀(jì)50年代,當(dāng)時(shí)的電子計(jì)算機(jī)已經(jīng)發(fā)展到一定水平,人們開始利用計(jì)算機(jī)來處理圖形和圖像信息。數(shù)字圖像處理作為一門學(xué)科大約形成于20世紀(jì)60年代初期。</p><p> 早期的圖像處理的目的是改善圖像的質(zhì)量,它以人為對(duì)象,
19、以改善人的視覺效果為目的。圖像處理中,輸入的是質(zhì)量低的圖像,輸出的是改善質(zhì)量后的圖像,常用的圖像處理方法有圖像增強(qiáng)、復(fù)原、編碼、壓縮等。首次獲得實(shí)際成功應(yīng)用的是美國噴氣推進(jìn)實(shí)驗(yàn)室(JPL)。他們對(duì)航天探測(cè)器徘徊者7號(hào)在1964年發(fā)回的幾千張?jiān)虑蛘掌褂昧藞D像處理技術(shù),如幾何校正、灰度變換、去除噪聲等方法進(jìn)行處理,并考慮了太陽位置和月球環(huán)境的影響,由計(jì)算機(jī)成功地繪制出月球表面地圖,獲得了巨大的成功。隨后又對(duì)探測(cè)飛船發(fā)回的近十萬張照片進(jìn)行更
20、為復(fù)雜的圖像處理,以致獲得了月球的地形圖、彩色圖及全景鑲嵌圖,獲得了非凡的成果,為人類登月創(chuàng)舉奠定了堅(jiān)實(shí)的基礎(chǔ),也推動(dòng)了數(shù)字圖像處理這門學(xué)科的誕生。在以后的宇航空間技術(shù),如對(duì)火星、土星等星球的探測(cè)研究中,數(shù)字圖像處理技術(shù)都發(fā)揮了巨大的作用。數(shù)字圖像處理取得的另一個(gè)巨大成就是在醫(yī)學(xué)上獲得的成果。1972年英國EMI公司工程師Housfield發(fā)明了用于頭顱診斷的X射線計(jì)算機(jī)斷層攝影裝置,也就是我們通常所說的CT(Computer Tomo
21、graph)。CT的基本方法是根據(jù)人的頭部截面的投影,經(jīng)計(jì)算機(jī)處理來</p><p> 與此同時(shí),圖像處理技術(shù)在許多應(yīng)用領(lǐng)域受到廣泛重視并取得了重大的開拓性成就,屬于這些領(lǐng)域的有航空航天、生物醫(yī)學(xué)工程、工業(yè)檢測(cè)、機(jī)器人視覺、公安司法、軍事制導(dǎo)、文化藝術(shù)等,使圖像處理成為一門引人注目、前景遠(yuǎn)大的新型學(xué)科。隨著圖像處理技術(shù)的深入發(fā)展,從70年代中期開始,隨著計(jì)算機(jī)技術(shù)和人工智能、思維科學(xué)研究的迅速發(fā)展,數(shù)字圖像處理
22、向更高、更深層次發(fā)展。人們已開始研究如何用計(jì)算機(jī)系統(tǒng)解釋圖像,實(shí)現(xiàn)類似人類視覺系統(tǒng)理解外部世界,這被稱為圖像理解或計(jì)算機(jī)視覺。很多國家,特別是發(fā)達(dá)國家投入更多的人力、物力到這項(xiàng)研究,取得了不少重要的研究成果。其中代表性的成果是70年代末MIT的Marr提出的視覺計(jì)算理論,這個(gè)理論成為計(jì)算機(jī)視覺領(lǐng)域其后十多年的主導(dǎo)思想。圖像理解雖然在理論方法研究上已取得不小的進(jìn)展,但它本身是一個(gè)比較難的研究領(lǐng)域,存在不少困難,因人類本身對(duì)自己的視覺過程還
23、了解甚少,因此計(jì)算機(jī)視覺是一個(gè)有待人們進(jìn)一步探索新的領(lǐng)域。</p><p> 1.3 本課題研究工作與結(jié)構(gòu)安排</p><p> 本文主要以MATLAB為工具來實(shí)現(xiàn)數(shù)字圖像的處理。全文共分6章,結(jié)構(gòu)安排如下:</p><p> 第一章 緒論,介紹了課題研究目的及意義和國內(nèi)外研究現(xiàn)狀。</p><p> 第二章 介紹了數(shù)字圖像增強(qiáng)處理的
24、基本簡介。</p><p> 第三章 介紹了Matlab基本知識(shí)的介紹。</p><p> 第四章 介紹了圖像增強(qiáng)的原理及利用MATLAB 來實(shí)現(xiàn)圖像增強(qiáng)。</p><p> 第五章 介紹了二值圖像操作原理及利用MATLAB實(shí)現(xiàn)二值圖像操作。</p><p> 第六章 總結(jié)與展望。</p><p> 2 數(shù)字
25、圖像增強(qiáng)處理基本簡介</p><p><b> 2.1 基本概念</b></p><p> 圖像增強(qiáng)是一類基本的圖像處理技術(shù),其目的是對(duì)圖像進(jìn)行加工,以得到對(duì)具體應(yīng)用來說視覺效果更好、更有用的圖像。這里的好和有用要因具體的應(yīng)用目的和要求而異,并且所需的具體增強(qiáng)技術(shù)也可不同。</p><p> 目前常用的增強(qiáng)技術(shù)根據(jù)其處理所進(jìn)行的空間不同,
26、可分為基于圖像域的方法和基于變化域的方法。第一類,直接在圖像所在的空間進(jìn)行處理,也就是在像素組成的空間里直接對(duì)像素進(jìn)行操作;第二類,在圖像的變化域?qū)D像進(jìn)行間接處理。</p><p> 2.2 圖像增強(qiáng)處理的方法簡介</p><p> 2.1.1空間變換增強(qiáng)</p><p> 空間變換增強(qiáng)又包含了增強(qiáng)對(duì)比度和圖像求反。</p><p>
27、 增強(qiáng)對(duì)比度實(shí)際是增強(qiáng)原圖像的各部分的反差。實(shí)際中往往是通過原圖中某兩個(gè)灰度值之間的動(dòng)態(tài)范圍來實(shí)現(xiàn)的。</p><p> 對(duì)圖像求反是將原來的灰度值翻轉(zhuǎn),簡單的說就是使黑變白,使白變黑。</p><p> 普通的黑白底片和照片就是這樣的關(guān)系。具體的變換就是將圖像中每個(gè)像素的灰度值根據(jù)變換曲線進(jìn)行映射。</p><p> 2.1.2空域?yàn)V波增強(qiáng)</p&g
28、t;<p> 空域?yàn)V波可分為線形濾波和非線形濾波兩類。</p><p> 線形濾波器的設(shè)計(jì)?;趯?duì)傅立葉變換的分析。</p><p> 非線形空域?yàn)V波器則一般直接對(duì)鄰域進(jìn)行操作。</p><p> 另外各種濾波器根據(jù)功能又主要分成平滑濾波和銳化濾波。平滑可用低通來實(shí)現(xiàn),銳化可用高通來實(shí)現(xiàn)</p><p> 平滑濾波器:
29、它能減弱或消除傅立葉空間的高頻分量,但不影響在低頻分量。因?yàn)楦哳l分量對(duì)應(yīng)圖像中的區(qū)域邊緣等灰度值具有較大較快變化的部分,濾波器將這些分量濾去可使圖像平滑。</p><p> 銳化濾波器:它能減弱或消除傅立葉空間的高頻分量</p><p><b> 2.1.3頻域增強(qiáng)</b></p><p> 頻域增強(qiáng)的基本原理是:卷積理論是頻域技術(shù)的基礎(chǔ)
30、。設(shè)函數(shù)f(x,y)與線性位不變算子h(x,y)的卷積結(jié)果是g(x,y),即g(x,y)=h(x,y)*f(x,y)</p><p> 那么根據(jù)卷積定理在頻域有:</p><p> G(x,y)=H(u,v)F(u,v)</p><p> 其中G(x,y)、 H(u,v)、F(u,v)分別是g(x,y)、h(x,y)、f(x,y)的傅立葉變換。</p&g
31、t;<p> 頻域增強(qiáng)的兩個(gè)關(guān)鍵步驟:</p><p> ?。?)將圖像從空域轉(zhuǎn)換到頻域所需的變換及將圖像從頻域空間轉(zhuǎn)換回空域所需的變換;</p><p> ?。?)在頻域空間對(duì)圖像進(jìn)行增強(qiáng)加工操作。</p><p> 常用的頻域增強(qiáng)方法有低通濾波和高通濾波。</p><p> 低通濾波也稱低頻濾波器。圖像的能量大部分集中
32、在幅度譜的低頻和中頻度,而圖像的邊緣和噪聲對(duì)應(yīng)于高頻部分。因此能降低高頻成分幅度的濾波器就能減弱噪聲的影響。</p><p> 高通濾波也稱高頻濾波器,它的頻值在0頻率處單位為1,隨著頻率的增長,傳遞函數(shù)的值逐漸增加;當(dāng)頻率增加到一定值之后傳遞函數(shù)的值通常又回到0值或者降低到某個(gè)大于1的值。在前一種情況下,高頻增強(qiáng)濾波器實(shí)際上是依照能夠帶通濾波器,只不過規(guī)定0頻率處的增益為單位1。</p><
33、;p> 實(shí)際應(yīng)用中,為了減少圖像中面積大且緩慢變化的成分的對(duì)比度,有時(shí)讓0頻率處的增益小于單位1更合適。如果傳遞函數(shù)通過原點(diǎn),則可以稱為laplacian濾波器。</p><p> 3 MATLAB基本知識(shí)介紹</p><p> 3.1 MATLAB的概述</p><p> MATLAB 是MATrix LABoratory(“矩陣實(shí)驗(yàn)室”)的縮寫,
34、是由美國MathWorks 公司開發(fā)的集數(shù)值計(jì)算、符號(hào)計(jì)算和圖形可視化三大基本功能于一體的,功能強(qiáng)大、操作簡單的語言。是國際公認(rèn)的優(yōu)秀數(shù)學(xué)應(yīng)用軟件之一。</p><p> MATLAB的基本數(shù)據(jù)單位是矩陣,它的指令表達(dá)式與數(shù)學(xué),工程中常用的形式十分相似,故用MATLAB來解算問題要比用C,FORTRAN等語言完相同的事情簡捷得多。</p><p> MATLAB包括擁有數(shù)百個(gè)內(nèi)部函數(shù)的
35、主包和三十幾種工具包(Toolbox).工具包又可以分為功能性工具包和學(xué)科工具包.功能工具包用來擴(kuò)充MATLAB的符號(hào)計(jì)算,可視化建模仿真,文字處理及實(shí)時(shí)控制等功能.學(xué)科工具包是專業(yè)性比較強(qiáng)的工具包,控制工具包,信號(hào)處理工具包,通信工具包等都屬于此類.</p><p> 開放性使MATLAB廣受用戶歡迎.除內(nèi)部函數(shù)外,所有MATLAB主包文件和各種工具包都是可讀可修改的文件,用戶通過對(duì)源程序的修改或加入自己編寫
36、程序構(gòu)造新的專用工具包.</p><p> 3.2 MATLAB產(chǎn)生的歷史背景</p><p> 在70年代中期,Cleve Moler博士和其同事在美國國家科學(xué)基金的資助下開發(fā)了調(diào)用EISPACK和LINPACK的FORTRAN子程序庫.EISPACK是特征值求解的FOETRAN程序庫,LINPACK是解線性方程的程序庫.在當(dāng)時(shí),這兩個(gè)程序庫代表矩陣運(yùn)算的最高水平.</p>
37、;<p> 到70年代后期,身為美國New Mexico大學(xué)計(jì)算機(jī)系系主任的Cleve Moler,在給學(xué)生講授線性代數(shù)課程時(shí),想教學(xué)生使用EISPACK和LINPACK程序庫,但他發(fā)現(xiàn)學(xué)生用FORTRAN編寫接口程序很費(fèi)時(shí)間,于是他開始自己動(dòng)手,利用業(yè)余時(shí)間為學(xué)生編寫EISPACK和LINPACK的接口程序.Cleve Moler給這個(gè)接口程序取名為MATLAB,該名為矩陣(matrix)和實(shí)驗(yàn)室(labotatory
38、)兩個(gè)英文單詞的前三個(gè)字母的組合.在以后的數(shù)年里,MATLAB在多所大學(xué)里作為教學(xué)輔助軟件使用,并作為面向大眾的免費(fèi)軟件廣為流傳.</p><p> 1983年春天,Cleve Moler到Standford大學(xué)講學(xué),MATLAB深深地吸引了工程師John Little.John Little敏銳地覺察到MATLAB在工程領(lǐng)域的廣闊前景.同年,他和Cleve Moler,Steve Bangert一起,用C語言
39、開發(fā)了第二代專業(yè)版.這一代的MATLAB語言同時(shí)具備了數(shù)值計(jì)算和數(shù)據(jù)圖示化的功能.</p><p> 1984年,Cleve Moler和John Little成立了Math Works公司,正式把MATLAB推向市場(chǎng),并繼續(xù)進(jìn)行MATLAB的研究和開發(fā).</p><p> 在當(dāng)今30多個(gè)數(shù)學(xué)類科技應(yīng)用軟件中,就軟件數(shù)學(xué)處理的原始內(nèi)核而言,可分為兩大類.一類是數(shù)值計(jì)算型軟件,如MATL
40、AB,Xmath,Gauss等,這類軟件長于數(shù)值計(jì)算,對(duì)處理大批數(shù)據(jù)效率高;另一類是數(shù)學(xué)分析型軟件,Mathematica,Maple等,這類軟件以符號(hào)計(jì)算見長,能給出解析解和任意精確解,其缺點(diǎn)是處理大量數(shù)據(jù)時(shí)效率較低.MathWorks公司順應(yīng)多功能需求之潮流,在其卓越數(shù)值計(jì)算和圖示能力的基礎(chǔ)上,又率先在專業(yè)水平上開拓了其符號(hào)計(jì)算,文字處理,可視化建模和實(shí)時(shí)控制能力,開發(fā)了適合多學(xué)科,多部門要求的新一代科技應(yīng)用軟件MATLAB.經(jīng)過多
41、年的國際競(jìng)爭(zhēng),MATLAB以經(jīng)占據(jù)了數(shù)值軟件市場(chǎng)的主導(dǎo)地位.</p><p> 在MATLAB進(jìn)入市場(chǎng)前,國際上的許多軟件包都是直接以FORTRANC語言等編程語言開發(fā)的。這種軟件的缺點(diǎn)是使用面窄,接口簡陋,程序結(jié)構(gòu)不開放以及沒有標(biāo)準(zhǔn)的基庫,很難適應(yīng)各學(xué)科的最新發(fā)展,因而很難推廣。MATLAB的出現(xiàn),為各國科學(xué)家開發(fā)學(xué)科軟件提供了新的基礎(chǔ)。在MATLAB問世不久的80年代中期,原先控制領(lǐng)域里的一些軟件包紛紛被淘
42、汰或在MATLAB上重建。</p><p> 時(shí)至今日,經(jīng)過MathWorks公司的不斷完善,MATLAB已經(jīng)發(fā)展成為適合多學(xué)科,多種工作平臺(tái)的功能強(qiáng)大大大型軟件。在國外,MATLAB已經(jīng)經(jīng)受了多年考驗(yàn)。在歐美等高校,MATLAB已經(jīng)成為線性代數(shù),自動(dòng)控制理論,數(shù)理統(tǒng)計(jì),數(shù)字信號(hào)處理,時(shí)間序列分析,動(dòng)態(tài)系統(tǒng)仿真等高級(jí)課程的基本教學(xué)工具;成為攻讀學(xué)位的大學(xué)生,碩士生,博士生必須掌握的基本技能。在設(shè)計(jì)研究單位和工業(yè)
43、部門,MATLAB被廣泛用于科學(xué)研究和解決各種具體問題。在國內(nèi),特別是工程界,MATLAB一定會(huì)盛行起來??梢哉f,無論你從事工程方面的哪個(gè)學(xué)科,都能在MATLAB里找到合適的功能。</p><p> 3.3 MATLAB語言的特點(diǎn)</p><p> 一種語言之所以能如此迅速地普及,顯示出如此旺盛的生命力,是由于它有著不同于其他語言的特點(diǎn),正如同F(xiàn)ORTRAN和C等高級(jí)語言使人們擺脫了需
44、要直接對(duì)計(jì)算機(jī)硬件資源進(jìn)行操作一樣,被稱作為第四代計(jì)算機(jī)語言的MATLAB,利用其豐富的函數(shù)資源,使編程人員從繁瑣的程序代碼中解放出來。MATLAB最突出的特點(diǎn)就是簡潔。MATLAB用更直觀的,符合人們思維習(xí)慣的代碼,代替了C和FORTRAN語言的冗長代碼。MATLAB給用戶帶來的是最直觀,最簡潔的程序開發(fā)環(huán)境。以下簡單介紹一下MATLAB的主要特點(diǎn)。</p><p> ?。?)語言簡潔緊湊,使用方便靈活,庫函數(shù)
45、極其豐富。MATLAB程序書寫形式自由,利用起豐富的庫函數(shù)避開繁雜的子程序編程任務(wù),壓縮了一切不必要的編程工作。由于庫函數(shù)都由本領(lǐng)域的專家編寫,用戶不必?fù)?dān)心函數(shù)的可靠性??梢哉f,用MATLAB進(jìn)行科技開發(fā)是站在專家的肩膀上。</p><p> ?。?)運(yùn)算符豐富。由于MATLAB是用C語言編寫的,MATLAB提供了和C語言幾乎一樣多的運(yùn)算符,靈活使用MATLAB的運(yùn)算符將使程序變得極為簡短。 </p>
46、;<p> ?。?)MATLAB既具有結(jié)構(gòu)化的控制語句(如for循環(huán),while循環(huán),break語句和if語句),又有面向?qū)ο缶幊痰奶匦浴?lt;/p><p> ?。?)程序限制不嚴(yán)格,程序設(shè)計(jì)自由度大。例如,在MATLAB里,用戶無需對(duì)矩陣預(yù)定義就可使用。</p><p> ?。?)程序的可移植性很好,基本上不做修改就可以在各種型號(hào)的計(jì)算機(jī)和操作系統(tǒng)上運(yùn)行。</p>
47、<p> ?。?)MATLAB的圖形功能強(qiáng)大。在FORTRAN和C語言里,繪圖都很不容易,但在MATLAB里,數(shù)據(jù)的可視化非常簡單。MATLAB還具有較強(qiáng)的編輯圖形界面的能力。</p><p> ?。?)MATLAB的缺點(diǎn)是,它和其他高級(jí)程序相比,程序的執(zhí)行速度較慢。由于MATLAB的程序不用編譯等預(yù)處理,也不生成可執(zhí)行文件,程序?yàn)榻忉寛?zhí)行,所以速度較慢。</p><p>
48、?。?)功能強(qiáng)大的工具箱是MATLAB的另一特色。MATLAB包含兩個(gè)部分:核心部分和各種可選的工具箱。核心部分中有數(shù)百個(gè)核心內(nèi)部函數(shù)。其工具箱又分為兩類:功能性工具箱和學(xué)科性工具箱。功能性工具箱主要用來擴(kuò)充其符號(hào)計(jì)算功能,圖示建模仿真功能,文字處理功能以及與硬件實(shí)時(shí)交互功能。功能性工具箱用于多種學(xué)科。而學(xué)科性工具箱是專業(yè)性比較強(qiáng)的,如control,toolbox, signl processing toolbox,</p>
49、;<p> commumnication toolbox等。這些工具箱都是由該領(lǐng)域內(nèi)學(xué)術(shù)水平很高的專家編寫的,所以用戶無需編寫自己學(xué)科范圍內(nèi)的基礎(chǔ)程序,而直接進(jìn)行高、精、尖的研究。</p><p> 源程序的開放性。開放性也許是MATLAB最受人們歡迎的特點(diǎn)。除內(nèi)部函數(shù)以外,所有MATLAB的核心文件和工具箱文件都是可讀可改的源文件,用戶可通過對(duì)源文件的修改以及加入自己的文件構(gòu)成新的工具箱。&l
50、t;/p><p> 3.4 MATLAB在圖像處理中的應(yīng)用</p><p> 圖像處理工具包是由一系列支持圖像處理操作的函數(shù)組成的。所支持的圖像處理操作有:圖像的幾何操作、鄰域和區(qū)域操作、圖像變換、圖像恢復(fù)與增強(qiáng)、線性濾波和濾波器設(shè)計(jì)、變換(DCT變換等) 、圖像分析和統(tǒng)計(jì)、二值圖像操作等。下面就MATLAB 在圖像處理中各方面的應(yīng)用分別進(jìn)行介紹。</p><p>
51、 ?。?) 圖像文件格式的讀寫和顯示。MATLAB 提供了圖像文件讀入函數(shù) imread(),用來讀取如:bmp、tif、tiffpcx 、jpg 、gpeg 、hdf、xwd等格式圖像文;圖像寫出函數(shù) imwrite() ,還有圖像顯示函數(shù) image()、imshow()等等。</p><p> ?。?) 圖像處理的基本運(yùn)算。MATLAB 提供了圖像的和、差等線性運(yùn)算 ,以及卷積、相關(guān)、濾波等非線性算。例如,
52、conv2(I,J)實(shí)現(xiàn)了I,J兩幅圖像的卷積。</p><p> ?。?) 圖像變換。MATLAB 提供了一維和二維離散傅立葉變換(DFT) 、快速傅立葉變換(FFT) 、離散余弦變換 (DCT) 及其反變換函數(shù),以及連續(xù)小波變換(CWT)、離散小波變換(DWT)及其反變換。</p><p> ?。?) 圖像的分析和增強(qiáng)。針對(duì)圖像的統(tǒng)計(jì)計(jì)算MATLAB 提供了校正、直方圖均衡、中值濾波、
53、對(duì)比度調(diào)整、自適應(yīng)濾波等對(duì)圖像進(jìn)行的處理。</p><p> ?。?) 圖像的數(shù)學(xué)形態(tài)學(xué)處理。針對(duì)二值圖像,MATLAB 提供了數(shù)學(xué)形態(tài)學(xué)運(yùn)算函數(shù);腐蝕(Erode)、膨脹(Dilate)算子,以及在此基礎(chǔ)上的開 (Open)、閉(Close)算子、厚化 (Thicken) 、薄化 (Thin) 算子等豐富的數(shù)學(xué)形態(tài)學(xué)運(yùn)算。</p><p> 以上所提到的 MATLAB在圖像中的應(yīng)用都是
54、由相應(yīng)的MATLAB函數(shù)來實(shí)現(xiàn)的,使用時(shí),只需按照函數(shù)的調(diào)用語法正確輸入?yún)?shù)即可。具體的用法可參考MATLAB豐富的幫助文檔。圖像邊緣對(duì)圖像識(shí)別和計(jì)算機(jī)分析十分有用,在MATLAB中,函數(shù) edge()用于灰度圖像邊緣的提取,它支持六種不同的邊緣提取方法,即Sobel方法、Prewitt 方法、Robert 方法,Laplacian2Gaussian方法、過零點(diǎn)方法和Canny方法。</p><p><b&
55、gt; 4 圖像增強(qiáng)</b></p><p> 圖像增強(qiáng)是一類基本的圖像處理技術(shù),其目的是對(duì)圖像進(jìn)行加工,以得到對(duì)具體應(yīng)用來說視覺效果更好、更有用的圖像。這里的好和有用要因具體的應(yīng)用目的和要求而異,并且所需的具體增強(qiáng)技術(shù)也可不同。</p><p> 目前常用的增強(qiáng)技術(shù)根據(jù)其處理所進(jìn)行的空間不同,可分為基于圖像域的方法和基于變化域的方法。第一類,直接在圖像所在的空間進(jìn)行處理
56、,也就是在像素組成的空間里直接對(duì)像素進(jìn)行操作;第二類,在圖像的變化域?qū)D像進(jìn)行間接處理。</p><p> 空域增強(qiáng)方法可表示為:g(x,y)=EH[f(x,y)]</p><p> 其中f(x,y)和g(x,y)分別為增強(qiáng)前后的圖像,EH代表增強(qiáng)操作。</p><p> 4.1 空域變換增強(qiáng)</p><p> 4.1.1 增強(qiáng)對(duì)比度
57、</p><p> 增強(qiáng)對(duì)比度實(shí)際是增強(qiáng)原圖像的各部分的反差。實(shí)際中往往是通過原圖中某兩個(gè)灰度值之間的動(dòng)態(tài)范圍來實(shí)現(xiàn)的(如圖4-1)。</p><p> 圖4-1 增強(qiáng)對(duì)比度</p><p> 在圖4.1.1中可以看出,通過變換可以使原圖的較高的和較低的灰度值的動(dòng)態(tài)范圍減小了,而原圖在二者之間的動(dòng)態(tài)范圍增加了,從而其范圍的對(duì)比度增加了。</p>
58、<p> MATLAB代碼所示:</p><p> X1=imread('pout.tif');</p><p> figure,imshow(X1)</p><p> f0=0;g0=0;</p><p> f1=70;g1=30;</p><p> f2=180;g2=230;
59、</p><p> f3=255;g3=255;</p><p> r1=(g1-g0)/(f1-f0);</p><p> b1=g0-r1*f0;</p><p> r2=(g2-g1)/(f2-f1);</p><p> b2=g1-r2*f1;</p><p> r3=(g3
60、-g2)/(f3-f2);</p><p> b3=g2-r3*f2;</p><p> [m,n]=size(X1);</p><p> X2=double(X1);</p><p><b> for i=1:m</b></p><p><b> for j=1:n</
61、b></p><p> f=X2(i,j);</p><p><b> g(i,j)=0;</b></p><p> if(f>=0)&(f<=f1)</p><p> g(i,j)=r1*f+b1;</p><p> elseif (f>=f1)&
62、;(f<=f2)</p><p> g(i,j)=r2*f+b2;</p><p> elseif (f>=f2)&(f<=f3)</p><p> g(i,j)=r3*f+b3;</p><p><b> end</b></p><p><b> e
63、nd</b></p><p><b> end</b></p><p> figure,imshow(mat2gray(g))</p><p> 圖像處理圖示(如圖4-2和圖4-3)</p><p> 圖4-2 原圖 圖4-3增強(qiáng)對(duì)比度所得圖像</
64、p><p> 4.1.2 圖像求反</p><p> 對(duì)圖像求反是將原來的灰度值翻轉(zhuǎn),簡單的說就是使黑變白,使白變黑。</p><p> 普通的黑白底片和照片就是這樣的關(guān)系。具體的變換就是將圖像中每個(gè)像素的灰度值根據(jù)變換曲線進(jìn)行映射。</p><p> MATLAB代碼所示:</p><p> X1=imread
65、('pout.tif');</p><p><b> f1=200;</b></p><p><b> g1=256;</b></p><p><b> k=g1/f1;</b></p><p> [m,n]=size(X1);</p>&
66、lt;p> X2=double(X1);</p><p> for i=1:m </p><p><b> for j=1:n</b></p><p> f=X2(i,j);</p><p><b> g(i,j)=0;</b></p><p> if(f&
67、gt;=0)&(f<=f1)</p><p> g(i,j)=g1-k*f;</p><p><b> else</b></p><p><b> g(i,j)=0;</b></p><p><b> end</b></p><p>
68、;<b> end</b></p><p><b> end</b></p><p> figure,imshow(mat2gray(g))</p><p> 圖像處理圖如圖4-4所示:</p><p> 圖4-4 圖像求反后</p><p> 4.2 空域?yàn)V波增
69、強(qiáng)</p><p> 一般情況下,像素的鄰域比該像素要大,也就是說這個(gè)像素的鄰域中除了本身以外還包括其他像素。在這種情況下,g(x,y)在(x,y)位置處的值不僅取決于f(x,y)在以(x,y)為中心的鄰域內(nèi)所有的像素的值。如仍以s和t分別表示f(x,y)在(x,y)位置處的灰度值,并以n(s)代表f(x,y)在(x,y)鄰域內(nèi)像素的灰度值,則 t=EA[s,n(s)]</p><p>
70、 為在鄰域內(nèi)實(shí)現(xiàn)增強(qiáng)操作,??衫媚0迮c圖像進(jìn)行卷積。每個(gè)模板實(shí)際上是一個(gè)二維數(shù)組,其中各個(gè)元素的取值定了模板的功能,這種模板操作也稱為空域?yàn)V波。</p><p> 4.2.1 基本原理</p><p> 空域?yàn)V波可分為線形濾波和非線形濾波兩類。</p><p> 線形濾波器的設(shè)計(jì)?;趯?duì)傅立葉變換的分析。</p><p> 非線形
71、空域?yàn)V波器則一般直接對(duì)鄰域進(jìn)行操作。</p><p> 另外各種濾波器根據(jù)功能又主要分成平滑濾波和銳化濾波。平滑可用低通來實(shí)現(xiàn),銳化可用高通來實(shí)現(xiàn)</p><p> 平滑濾波器:它能減弱或消除傅立葉空間的高頻分量,但不影響在低頻分量。因?yàn)楦哳l分量對(duì)應(yīng)圖像中的區(qū)域邊緣等灰度值具有較大較快變化的部分,濾波器將這些分量濾去可使圖像平滑。</p><p> 銳化濾波器
72、:它能減弱或消除傅立葉空間的高頻分量</p><p> 空域?yàn)V波器都是利用模板卷積,主要步驟如下:</p><p> (1)將模板在圖中漫游,并將模板中心與圖中某個(gè)像素位置重合;</p><p> (2)將模板上的系數(shù)與模板下對(duì)應(yīng)的像素相乘;</p><p> ?。?)將所有的乘積相加;</p><p> (4
73、)將和(模板的輸出響應(yīng))賦給圖中對(duì)應(yīng)的模板中心位置像素。</p><p> 下面分別介紹在MATLAB中如何應(yīng)用平滑和銳化濾波器。</p><p> 4.2.2 線性平滑濾波器</p><p> 線性低通濾波器是最常用的線性平滑濾波器。這種濾波器的所有系數(shù)都是正的。對(duì)3*3的模板來說,最簡單的操作是取所有系數(shù)都為1。為保證輸出圖像仍在原來的灰度范圍內(nèi),在計(jì)算R
74、后要將其除以9再進(jìn)行賦值。這種方法稱為鄰域平均法。</p><p> MATLAB實(shí)現(xiàn)均值過濾器的代碼所示:</p><p> I=imread('saturn.tif');</p><p> J=imnoise(I,'salt & pepper',0.02);</p><p><b>
75、 imshow(I)</b></p><p> figure,imshow(J)</p><p> K1=filter2(fspecial('average',3),J)/255;</p><p> figure,imshow(K1)</p><p> title('3*3的均值濾波器')
76、</p><p> 原圖像,加入椒鹽噪聲的圖像和均值濾波的圖像分別如圖4-5、圖4-6和圖4-7所示。</p><p> 圖4-5 原圖 圖4-6加入椒鹽噪聲圖像</p><p> 圖4-7 3*3的均值濾波器處理結(jié)果</p><p> 4.2.3 非線性平滑濾波器</p>
77、<p> 中值濾波器是最常用的非線性平滑濾波器。它是一種臨域運(yùn)算,類似于卷積,但計(jì)算的不是加權(quán)求和,而是把鄰域中的像素按灰度級(jí)進(jìn)行排序,然后選擇改組的中間值作為輸出的像素值。具體步驟:</p><p> ?。?)將模板在圖像中漫游,并將模板中心和圖像某個(gè)像素的位置重合;</p><p> ?。?)讀取模板下對(duì)應(yīng)像素的灰度值;</p><p> (3
78、)將這些灰度值從小到大排成一列;</p><p> ?。?)找出這些值排在中間的一個(gè);</p><p> ?。?)將這個(gè)中間值賦給對(duì)應(yīng)模板中心位置的像素。</p><p> MATLAB實(shí)現(xiàn)中值濾波器代碼所示:</p><p> I=imread('saturn.tif');</p><p> J
79、=imnoise(I,'salt & pepper',0.02);</p><p> K1=medfilt2(J,[3,3]);</p><p> figure,imshow(K1)</p><p> 中值濾波的結(jié)果如圖4-8所示。</p><p> 圖4-8 中值濾波結(jié)果</p><p&
80、gt; 4.2.4 線性銳化濾波器</p><p> 線性高通濾波器是最常用的線性銳化濾波器。這種濾波器的中心系數(shù)都是正的,而周圍的系數(shù)都是負(fù)的。對(duì)3*3的模板來說,典型的系數(shù)取值是:</p><p> [-1 –1 –1;-1 8 –1;-1 –1 -1]</p><p> 事實(shí)上這是拉普拉斯算子,所有的系數(shù)之和為0。當(dāng)這樣的模板放在圖像中灰度值是常數(shù)或
81、變化很小的區(qū)域時(shí),其輸出為0或很小。這個(gè)濾波器將原來的圖像中的零頻域分量去除了,也就是將輸出的圖像的平均值變?yōu)?,這樣就會(huì)有一部分像素的灰度值小于0。在圖像處理中我們一般只考慮正的灰度值,所以還有將輸出圖像的灰度值范圍通過尺度變回到所要求的范圍。</p><p> MATLAB代碼所示:</p><p> I=imread('saturn.tif');</p>
82、;<p> m=fspecial('laplacian')</p><p> I1=filter2(m,I)</p><p> h=fspecial('unsharp',0.5);</p><p> I2=filter2(h,I)/255;</p><p> subplot(1,2,1)
83、;</p><p> imshow(I1);</p><p> title('高通濾波laplacian算子')</p><p> subplot(1,2,2);</p><p> imshow(I2);</p><p> title('高通濾波unsharp')</p&
84、gt;<p> 處理結(jié)果如圖4-9所示:</p><p> 圖4-9空域高通濾波</p><p><b> 4.3 頻域增強(qiáng)</b></p><p> 4.3.1 基本原理</p><p> 卷積理論是頻域技術(shù)的基礎(chǔ)。設(shè)函數(shù)f(x,y)與線性位不變算子h(x,y)的卷積結(jié)果是g(x,y),即g(x
85、,y)=h(x,y)*f(x,y)</p><p> 那么根據(jù)卷積定理在頻域有:</p><p> G(x,y)=H(u,v)F(u,v)</p><p> 其中G(x,y)、 H(u,v)、F(u,v)分別是g(x,y)、h(x,y)、f(x,y)的傅立葉變換。</p><p> 頻域增強(qiáng)的主要步驟是:</p><
86、;p> ?。?)技術(shù)所需增強(qiáng)圖的傅立葉變換;</p><p> ?。?)將其與一個(gè)(根據(jù)需要設(shè)計(jì)的)轉(zhuǎn)移函數(shù)相乘;</p><p> ?。?)再將結(jié)果進(jìn)行傅立葉反變換以得到增強(qiáng)的圖。</p><p> 頻域增強(qiáng)的兩個(gè)關(guān)鍵步驟:</p><p> (1)將圖像從空域轉(zhuǎn)換到頻域所需的變換及將圖像從頻域空間轉(zhuǎn)換回空域所需的變換;</
87、p><p> ?。?)在頻域空間對(duì)圖像進(jìn)行增強(qiáng)加工操作。</p><p> 常用的頻域增強(qiáng)方法有低通濾波和高通濾波。以下分別介紹在MATLAB中如何實(shí)現(xiàn)。</p><p> 4.3.2 低通濾波</p><p> 圖像的能量大部分集中在幅度譜的低頻和中頻度,而圖像的邊緣和噪聲對(duì)應(yīng)于高頻部分。因此能降低高頻成分幅度的濾波器就能減弱噪聲的影響。
88、</p><p> Butterworth 低通濾波器是一種物理上可以實(shí)現(xiàn)的低通濾波器,n階,截?cái)囝l率為d0的Butterworth低通濾波器的轉(zhuǎn)移函數(shù)為:</p><p><b> H(u,v)=</b></p><p> 用MATLAB實(shí)現(xiàn)Butterworth低通濾波器的代碼所示:</p><p> I1=
89、imread('Saturn.tif');</p><p> figure,imshow(I1)</p><p> I2=imnoise(I1,'salt');</p><p> figure,imshow(I2)</p><p> f=double(I2);</p><p>
90、 g=fft2(f);</p><p> g=fftshift(g);</p><p> [N1,N2]=size(g);</p><p><b> n=2;</b></p><p><b> d0=50;</b></p><p> n1=fix(N1/2);<
91、;/p><p> n2=fix(N2/2);</p><p> for i=1:N1</p><p> for j=1:N2</p><p> d=sqrt((i-n1)^2+(j-n2)^2);</p><p> h=1/(1+0.414*(d/d0)^(2*n));</p><p>
92、 result(i,j)=h*g(i,j);</p><p><b> end</b></p><p><b> end</b></p><p> result=ifftshift(result);</p><p> X2=ifft2(result);</p><p>
93、; X3=uint8(real(X2));</p><p> figure,imshow(X3)</p><p> 原圖和處理結(jié)果如圖4-10和圖4-11所示</p><p> 圖4-10 加噪 圖4-11 去噪</p><p> 4.3.3 高通濾波</p>&l
94、t;p> 高通濾波也稱高頻濾波器,它的頻值在0頻率處單位為1,隨著頻率的增長,傳遞函數(shù)的值逐漸增加;當(dāng)頻率增加到一定值之后傳遞函數(shù)的值通常又回到0值或者降低到某個(gè)大于1的值。在前一種情況下,高頻增強(qiáng)濾波器實(shí)際上是依照能夠帶通濾波器,只不過規(guī)定0頻率處的增益為單位1。</p><p> 實(shí)際應(yīng)用中,為了減少圖像中面積大且緩慢變化的成分的對(duì)比度,有時(shí)讓0頻率處的增益小于單位1更合適。如果傳遞函數(shù)通過原點(diǎn),則
95、可以稱為laplacian濾波器。</p><p> n階截?cái)囝l率為d0的Butterworth高通濾波器的轉(zhuǎn)移函數(shù)為:</p><p><b> H(u,v)=</b></p><p> MATLAB實(shí)現(xiàn)Butterworth高通濾波器代碼所示:</p><p> I1=imread('blood1.t
96、if');</p><p> figure,imshow(I1)</p><p> f=double(I1);</p><p> g=fft2(f);</p><p> g=fftshift(g);</p><p> [N1,N2]=size(g);</p><p><b
97、> n=2;</b></p><p><b> d0=5;</b></p><p> n1=fix(N1/2);</p><p> n2=fix(N2/2);</p><p> for i=1:N1</p><p> for j=1:N2</p><
98、;p> d=sqrt((i-n1)^2+(j-n2)^2);</p><p><b> if d==0</b></p><p><b> h=0;</b></p><p><b> else</b></p><p> h=1/(1+(d0/d)^(2*n));&
99、lt;/p><p><b> end</b></p><p> result(i,j)=h*g(i,j);</p><p><b> end</b></p><p><b> end</b></p><p> result=ifftshift(re
100、sult);</p><p> X2=ifft2(result);</p><p> X3=uint8(real(X2));</p><p> figure,imshow(X3)</p><p> 原圖和處理結(jié)果如圖4-12和4-13所示。</p><p> 圖4-12原圖
101、 圖4-13高通濾波</p><p><b> 5 二值圖像分析</b></p><p> 二值圖像中所有的像素只能從0和1這兩個(gè)值中取,因此在MATLAB中,二值圖像用一個(gè)由0和1組成的二維矩陣表示。這兩個(gè)可取的值分別對(duì)應(yīng)于關(guān)閉和打開,關(guān)閉表征該像素處于背景,而打開表征該像素處于前景。以這種方式來操作圖像可以更容易識(shí)別出圖像的結(jié)構(gòu)特征。</
102、p><p><b> 5.1 引言</b></p><p> 二值圖像操作只返回與二值圖像的形式或結(jié)構(gòu)有關(guān)的信息,如果希望對(duì)其他類型的圖像進(jìn)行同樣的操作,則首先要將其轉(zhuǎn)換為二進(jìn)制的圖像格式,可以通過調(diào)用MATLAB提供的im2bw()來實(shí)現(xiàn),方法如下:</p><p> I=imread('cameraman.tif');&l
103、t;/p><p> figure,imshow(I)</p><p> J=im2bw(I);</p><p> figure,imshow(J)</p><p> title('二值化處理')</p><p> 原圖和二值化的結(jié)果分別如圖5-1和圖5-2所示</p><p&g
104、t; 圖5-1原圖 圖5-2 二值化的結(jié)果</p><p> 5.2 二值形態(tài)學(xué)的基本運(yùn)算</p><p> 數(shù)學(xué)形態(tài)學(xué)的基礎(chǔ)是集合運(yùn)算,我們把二值圖像A看作是二維坐標(biāo)點(diǎn)的集合,包含圖像里為1的點(diǎn),B通常是一個(gè)小的集合,作用類似于模板。</p><p> 膨脹(Dilation)運(yùn)算A⊕B </p>
105、;<p> 腐蝕(Erosion)運(yùn)算AB </p><p><b> 開(Open)運(yùn)算</b></p><p> 閉(Close)運(yùn)算</p><p><b> 5.2.1 膨脹</b></p><p> 膨脹的算符為,A用B來膨脹寫作AB,這里先將A和B看作是所有取值為
106、1的像素點(diǎn)的集合。其定義為:AB=}</p><p> B膨脹A的過程是:先對(duì)B做關(guān)于中心像素的映射,再將其映像平移x,換句話說,用B來膨脹A得到的集是B平移后與A至少有一個(gè)非零元素相交時(shí)B的中心像素的位置的集合。 </p><p> 在MATLAB中運(yùn)用dilate()函數(shù)來實(shí)現(xiàn)膨脹操作。</p><p> 此外,MATLA
107、B中還提供了預(yù)定義的形態(tài)函數(shù)bwmorph。</p><p> MATLAB的代碼:</p><p> I=imread('cameraman.tif');</p><p> J=im2bw(I);</p><p> BW1=bwmorph(J,'dilate');</p><p&g
108、t; subplot(1,2,1);</p><p> subimage(J);</p><p> title('二值處理的圖像');</p><p> subplot(1,2,2);</p><p> subimage(BW1);</p><p> title('使用bwmorph
109、函數(shù)膨脹')</p><p> 圖像處理結(jié)果如圖5-3所示</p><p><b> 圖5-3膨脹處理后</b></p><p><b> 5.2.2 腐蝕</b></p><p> 腐蝕的算符為,A用B來腐蝕寫作AB。其定義為</p><p> 用B來腐蝕
110、A得到集合是B完全包括在A中時(shí)B的中心像素位置的集合。MATLAB中用erode函數(shù)來實(shí)現(xiàn)腐蝕操作。</p><p> MATLAB代碼如下:</p><p> I=imread('cameraman.tif');</p><p> J=im2bw(I);</p><p> SE=eye(5);</p>
111、<p> BW1=erode(J,SE);</p><p> subplot(1,2,1);</p><p> subimage(J);</p><p> title('二值處理的圖像');</p><p> subplot(1,2,2);</p><p> subimage(BW
112、1);</p><p> title('使用erode函數(shù)腐蝕')</p><p> 圖像處理結(jié)果如圖5-4所示</p><p><b> 圖5-4腐蝕處理后</b></p><p> 5.3 二值分析進(jìn)行圖像處理綜合應(yīng)用</p><p> 5.3.1 噪聲濾除</
113、p><p> 將開啟和閉合結(jié)合起來可構(gòu)成噪聲濾除器。開啟就是先對(duì)圖像進(jìn)行腐蝕后膨脹其結(jié)果。閉合就是先對(duì)圖像進(jìn)行膨脹后腐蝕其結(jié)果。</p><p> 開啟和閉合這兩種運(yùn)算都可以除去比結(jié)構(gòu)元素小特定圖像細(xì)節(jié),同時(shí)保證不產(chǎn)生全局幾何失真。開啟運(yùn)算可以把結(jié)構(gòu)元素小的突刺濾掉,切斷細(xì)長搭接而起到分離作用。閉合運(yùn)算可以把比結(jié)構(gòu)元素小的缺口或孔填充上,搭接短的間斷而起到連通的作用。</p>
114、<p> 將開啟和閉合結(jié)合起來可構(gòu)成形態(tài)學(xué)噪聲濾除器。開啟結(jié)果將背景上的噪聲去除了;再進(jìn)行閉合則將噪聲去掉。</p><p><b> MATLAB代碼:</b></p><p> I1=imread('saturn.tif');</p><p> I2=im2bw(I1);</p><p
115、> I2=double(I2);</p><p> I3=imnoise(I2,'salt & pepper');</p><p> I4=bwmorph(I3,'open');</p><p> I5=bwmorph(I4,'close');</p><p> subp
116、lot(2,2,1);</p><p> subimage(I2);</p><p> title('二值處理的圖像');</p><p> subplot(2,2,2);</p><p> subimage(I3);</p><p> title('加入椒鹽噪聲的圖像')&l
117、t;/p><p> subplot(2,2,3);</p><p> subimage(I4);</p><p> title('開啟操作所得的圖像');</p><p> subplot(2,2,4);</p><p> subimage(I5);</p><p> t
118、itle('再關(guān)閉操作所得的圖像')</p><p> 圖像處理如圖5-5所示</p><p> 圖5-5 噪聲濾除處理</p><p> 5.3.2 邊界提取</p><p> 二值圖像中,所謂的對(duì)像就是值為1的連接在一起的像素的集合。例如以下的代表了一個(gè)簡單的3*3的方形對(duì)像</p><p>
119、; 0 0 0 0 0 </p><p> 1 1 1 0 0</p><p> 1 1 1 0 0 </p><p> 1 1 1 0 0</p><p> 0 0 0 0 0 </p><p> 有4-連接和8-連接邊沿</p><p>
120、 對(duì)于大多數(shù)操作來說,二值圖像中對(duì)像的識(shí)別依賴于確定圖像中相鄰像素是否連接的約定方式。</p><p> 邊界提取實(shí)際上就是掏空內(nèi)部點(diǎn):如果原圖中有一點(diǎn)為黑,且它的8個(gè)相鄰點(diǎn)都是黑色時(shí)(此時(shí)該點(diǎn)是內(nèi)部點(diǎn)),則將該點(diǎn)刪除。</p><p> 在MATLAB中提供了bwperim(I,n)函數(shù)來提取二值圖像中對(duì)像的邊界像素。其中n表示采用何種連接,默認(rèn)為4-連接。</p>&
121、lt;p> MATLAB代碼所示:</p><p> I1=imread('blood1.tif');</p><p> I2=im2bw(I1);</p><p> I3=bwperim(I2);</p><p> subplot(1,2,1);</p><p> subimage(
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)論文——基于matlab數(shù)字圖像增強(qiáng)處理
- 基于matlab數(shù)字圖像增強(qiáng)處理-畢業(yè)論文
- 基于matlab的數(shù)字圖像處理畢業(yè)論文
- 基于matlab數(shù)字圖像增強(qiáng)處理
- 基于matlab數(shù)字圖像增強(qiáng)處理
- 基于matlab的數(shù)字圖像處理畢業(yè)論文
- 基于matlab的數(shù)字圖像預(yù)處理畢業(yè)論文
- 畢業(yè)論文---數(shù)字圖像處理
- 數(shù)字圖像處理畢業(yè)論文
- 數(shù)字圖像處理畢業(yè)論文
- 數(shù)字圖像處理畢業(yè)論文
- 數(shù)字圖像處理課程設(shè)計(jì)--基于matlab的數(shù)字圖像處理
- 基于matlab的數(shù)字圖像與邊緣檢測(cè)畢業(yè)論文
- 基于matlab的數(shù)字圖像與邊緣檢測(cè)畢業(yè)論文
- 畢業(yè)設(shè)計(jì)----基于matlab的數(shù)字圖像處理
- 畢業(yè)論文數(shù)字圖像處理論文
- 數(shù)字圖像處理課程設(shè)計(jì)--基于matlab的數(shù)字圖像處理
- 基于matlab圖像增強(qiáng)技術(shù)畢業(yè)論文
- 基于matlab數(shù)字圖像處理平臺(tái)設(shè)計(jì)
- 基于bayer的數(shù)字圖像還原及matlab實(shí)現(xiàn)畢業(yè)論文
評(píng)論
0/150
提交評(píng)論