版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、精品文檔實驗MATLAB數(shù)字圖像處理初步一、實驗目的與要求1熟悉及掌握在MATLAB中能夠處理哪些格式圖像。2.熟練掌握在MATLAB中如何讀取圖像。3掌握如何利用MATLAB來獲取圖像的大小、顏色、高度、寬度等等相關(guān)信息。4掌握如何在MATLAB中按照指定要求存儲一幅圖像的方法。5圖像間如何轉(zhuǎn)化。6.了解圖像的算術(shù)運算在數(shù)字圖像處理中的初步應(yīng)用。7體會圖像算術(shù)運算處理的過程和處理前后圖像的變化。二、實驗原理及知識點1、數(shù)字圖像的表示和類別一幅圖像可以被定義為一個二維函數(shù)f(x,y),其中x和y是空間(平面)坐標,在任何坐標處(x,y)處的振幅稱為圖像在該點的亮度?;叶仁怯脕肀硎竞诎讏D像亮度的
2、一個術(shù)語,而彩色圖像是由單個二維圖像組合形成的。例如,在RGB彩色系統(tǒng)中,一幅彩色圖像是由三幅獨立的分量圖像(紅、綠、藍)組成的。因此,許多為黑白圖像處理開發(fā)的技術(shù)適用于彩色圖像處理,方法是分別處理三副獨立的分量圖像即可。圖像關(guān)于x和y坐標以及振幅連續(xù)。要將這樣的一幅圖像轉(zhuǎn)化為數(shù)字形式,就要求數(shù)字化坐標和振幅。將坐標值數(shù)字化成為取樣;將振幅數(shù)字化成為量化。采樣和量化的過程如圖1所示。因此,當f的x、y分量和振幅都是有限且離散的量時,稱該圖像為數(shù)字圖像。作為MATLAB基本數(shù)據(jù)類型的數(shù)值數(shù)組本身十分適于表達圖像,矩陣的元素和圖像的像素之間有著十分自然的對應(yīng)關(guān)系。11944911198891158
3、558611(58568611685491158416611483166119611111圖1圖像的采樣和量化根據(jù)圖像數(shù)據(jù)矩陣解釋方法的不同,MATLAB把其處理為4類:亮度圖像(Intensityimages)二值圖像(Binaryimages)索引圖像(Indexedimages)RGB圖像(RGBimages)亮度圖像一幅亮度圖像是一個數(shù)據(jù)矩陣,其歸一化的取值表示亮度。若亮度圖像的像素都是uint8類或uint16類,則它們的整數(shù)值范圍分別是0,255和0,65536。若圖像是double類,則像素取值就是浮點數(shù)。規(guī)定雙精度型歸一化亮度圖像的取值范圍是0,1二值圖像一幅二值圖像是一個取值
4、只有0和1的邏輯數(shù)組。而一幅取值只包含0和1的uint8類數(shù)組,在MATLAB中并不認為是二值圖像。使用logical函數(shù)可以把數(shù)值數(shù)組轉(zhuǎn)化為二值數(shù)組或邏輯數(shù)組。創(chuàng)建一個邏輯圖像,其語法為:B=logical(A)其中,B是由0和1構(gòu)成的數(shù)值數(shù)組。要測試一個數(shù)組是否為邏輯數(shù)組,可以使用函數(shù):islogical(c)若C是邏輯數(shù)組,則該函數(shù)返回1;否則,返回0。索引圖像索引顏色通常也稱為映射顏色,在這種模式下,顏色都是預先定義的,并且可供選用的一組顏色也很有限,索引顏色的圖像最多只能顯示256種顏色。一幅索引顏色圖像在圖像文件里定義,當打開該文件時,構(gòu)成該圖像具體顏色的索引值就被讀入程序里,然后
5、根據(jù)索引值找到最終的顏色。RGB圖像一幅RGB圖像就是彩色像素的一個MxNx3數(shù)組,其中每一個彩色相似點都是在特定空間位置的彩色圖像相對應(yīng)的紅、綠、藍三個分量。按照慣例,形成一幅RGB彩色圖像的三個圖像常稱為紅、綠或藍分量圖像。令fR,fG和fB分別代表三種RGB分量圖像。一幅RGB圖像就利用cat(級聯(lián))操作將這些分量圖像組合成彩色圖像:rgb_image=cat(3,fR,fG,fB)在操作中,圖像按順序放置。2、數(shù)據(jù)類和圖像類型間的轉(zhuǎn)化表1中列出了MATLAB和IPT為表示像素所支持的各種數(shù)據(jù)類。表中的前8項稱為數(shù)值數(shù)據(jù)類,第9項稱為字符類,最后一項稱為邏輯數(shù)據(jù)類。工具箱中提供了執(zhí)行必要
6、縮放的函數(shù)(見表2)。以在圖像類和類型間進行轉(zhuǎn)化。表1-1MATLAB和IPT支持數(shù)據(jù)類型名稱描述double雙精度浮點數(shù)范圍為1030810308uint8無符號8比特整數(shù),范圍為0255uintl6無符號16比特整數(shù),范圍為065536uint32無符號32比特整數(shù),范圍為04294967295int8有符號8比特整數(shù),范圍為-128127int16有符號16比特整數(shù),范圍為-3276832767int32有符號32比特整數(shù),范圍為-21474836482147483647single單精度浮點數(shù),范圍為1030810308char字符logical值為0或1表1-2格式轉(zhuǎn)換函數(shù)名稱將輸入
7、轉(zhuǎn)化為有效的輸入圖像數(shù)據(jù)類im2uint8uint8logical,uint8,uint16和doulbeim2uint16uint16logical,uint8,uint16和doulbemat2graydouble,范圍為01doubleim2doubledoublelogical,uint8,uint16和doulbeim2bwlogicaluint8,uint16和double下面給出讀取、壓縮、顯示一幅圖像的程序(%后面的語句屬于標記語句,編程時可不用輸入)I=imread(源圖像名.tif5);%讀入原圖像,tif格式whosI%顯示圖像I的基本信息imshow(I)%顯示圖像%這
8、種格式只適用于jpg格式,壓縮存儲圖像,q是0-100之間的整數(shù)imfinfofilenameimwrite(I,filename.jpg,quality,q);imwrite(I,filename.bmp);%以位圖(BMP)的格式存儲圖像%顯示多幅圖像,其中n為圖形窗口的號數(shù)figure(n),imshow(filename);gg=im2bw(filename);%將圖像轉(zhuǎn)為二值圖像figure,imshow(gg)%顯示二值圖像3、圖像的代數(shù)運算代數(shù)運算是圖像的標準算術(shù)操作的實現(xiàn)方法,是兩幅輸入圖像之間進行的點對點的加減、乘、除運算后得到輸出圖像的過程。如果輸入圖像為A(x,y)和B(
9、x,y),輸出圖像為C(x,y),則圖像的代數(shù)運算有如下四種形式:C(x,y)=A(x,y)+B(x,y)C(x,y)=A(x,y)-B(x,y)C(x,y)=A(x,y)*B(x,y)C(x,y)=A(x,y)/B(x,y)圖像的代數(shù)運算在圖像處理中有著廣泛的應(yīng)用,它除了可以實現(xiàn)自身所需的算術(shù)操作,還能為許多復雜的圖像處理提供準備。例如,圖像減法就可以用來檢測同一場景或物體生產(chǎn)的兩幅或多幅圖像的誤差。使用MATLAB的基本算術(shù)符(+、-、*、/等)可以執(zhí)行圖像的算術(shù)操作,但是在此之前必須將圖像轉(zhuǎn)換為適合進行基本操作的雙精度類型。為了更方便地對圖像進行操作,MATLAB圖像處理工具箱包含了一個
10、能夠?qū)崿F(xiàn)所有非稀疏數(shù)值數(shù)據(jù)的算術(shù)操作的函數(shù)集合。下表列舉了所有圖像處理工具箱中的圖像代數(shù)運算函數(shù)。表1-3圖像處理工具箱中的代數(shù)運算函數(shù)函數(shù)名功能描述Imabsdiff兩幅圖像的絕對差值Imadd兩幅圖像的加法Imcomplement補足一幅圖像Imdivide兩幅圖像的除法Imlincomb計算兩幅圖像的線性組合Immultiply兩幅圖像的乘法imsubtract兩幅圖像的減法使用圖像處理工具箱中的圖像代數(shù)運算函數(shù)無需再進行數(shù)據(jù)類型間的轉(zhuǎn)換,這些函數(shù)能夠接受uint8和uintl6數(shù)據(jù),并返回相同格式的圖像結(jié)果。雖然在函數(shù)執(zhí)行過程中元素是以雙精度進行計算的,但是MATLAB工作平臺并不會將
11、圖像轉(zhuǎn)換為雙精度類型。代數(shù)運算的結(jié)果很容易超出數(shù)據(jù)類型允許的范圍。例如,uint8數(shù)據(jù)能夠存儲的最大數(shù)值是255,各種代數(shù)運算尤其是乘法運算的結(jié)果很容易超過這個數(shù)值,有時代數(shù)操作(主要是除法運算)也會產(chǎn)生不能用整數(shù)描述的分數(shù)結(jié)果。圖像的代數(shù)運算函數(shù)使用以下截取規(guī)則使運算結(jié)果符合數(shù)據(jù)范圍的要求:超出數(shù)據(jù)范圍的整型數(shù)據(jù)將被截取為數(shù)據(jù)范圍的極值,分數(shù)結(jié)果將被四舍五入。例如,如果數(shù)據(jù)類型是uint8,那么大于255的結(jié)果(包括無窮大inf)將被設(shè)置為255。注意:無論進行哪一種代數(shù)運算都要保證兩幅輸入圖像的大小相等,且類型相同。圖像的加法運算圖像相加一般用于對同一場景的多幅圖像求平均效果,以便有效地降
12、低具有疊加性質(zhì)的隨機噪聲。直接采集的圖像品質(zhì)一般都較好,不需要進行加法運算處理,但是對于那些經(jīng)過長距離模擬通訊方式傳送的圖像(如衛(wèi)星圖像),這種處理是必不可少的。在MATLAB中,如果要進行兩幅圖像的加法,或者給一幅圖像加上一個常數(shù),可以調(diào)用imadd函數(shù)來實現(xiàn)。imadd函數(shù)將某一幅輸入圖像的每一個像素值與另一幅圖像相應(yīng)的像素值相加,返回相應(yīng)的像素值之和作為輸出圖像。imadd函數(shù)的調(diào)用格式如下:Z=imadd(X,Y)其中,X和Y表示需要相加的兩幅圖像,返回值Z表示得到的加法操作結(jié)果。圖像加法在圖像處理中應(yīng)用非常廣泛。例如,以下代碼使用加法操作將圖2.1中的(a)、(b)兩幅圖像疊加在一起
13、:I=imread(rice.tif);J=imread(cameraman.tif);K=imadd(I,J);imshow(K);疊加結(jié)果如圖2.2所示。圖2.1待疊加的兩幅圖像圖2.2疊加后的圖像效果圖像的減法運算圖像減法也稱為差分方法,是一種常用于檢測圖像變化及運動物體的圖像處理方法。圖像減法可以作為許多圖像處理工作的準備步驟。例如,可以使用圖像減法來檢測一系列相同場景圖像的差異。圖像減法與閾值化處理的綜合使用往往是建立機器視覺系統(tǒng)最有效的方法之一。在利用圖像減法處理圖像時往往需要考慮背景的更新機制,盡量補償由于天氣、光照等因素對圖像顯示效果造成的影響。在MATLAB中,使用imsub
14、tract函數(shù)可以將一幅圖像從另一幅圖像中減去,或者從一幅圖像中減去一個常數(shù)。imsubtract函數(shù)將一幅輸入圖像的像素值從另一幅輸入圖像相應(yīng)的像素值中減去,再將這個結(jié)果作為輸出圖像相應(yīng)的像素值。imsubtract函數(shù)的調(diào)用格式如下:Z=imsubtract(X,Y);其中,Z是X-Y操作的結(jié)果。以下代碼首先根據(jù)原始圖像(如圖2.4(a)所示)生成其背景亮度圖像,然后再從原始圖像中將背景亮度圖像減去,從而生成圖2.4(b)所示的圖像:rice=imread(rice.tif);background=(rice,strel(disk,15);rice2=imsubtract(rice,bac
15、kground);subplot(1,2,1);imshow(rice);subplot(1,2,2);imshow(rice2);圖2.4原始圖像、減去背景圖像如果希望從圖像數(shù)據(jù)I的每一個像素減去一個常數(shù),可以將上述調(diào)用格式中的Y替換為一個指定的常數(shù)值,例如:Z=imsubtract(I,50);減法操作有時會導致某些像素值變?yōu)橐粋€負數(shù),對于uint8或uintl6類型的數(shù)據(jù),如果發(fā)生這種情況,那么imsubtract函數(shù)自動將這些負數(shù)截取為0。為了避免差值產(chǎn)生負值,同時避免像素值運算結(jié)果之間產(chǎn)生差異,可以調(diào)用函數(shù)imabsdiff。imabsdiff將計算兩幅圖像相應(yīng)像素差值的絕對值,因而
16、返回結(jié)果不會產(chǎn)生負數(shù)。該函數(shù)的調(diào)用格式與imsubtract函數(shù)類似。圖像的乘法運算兩幅圖像進行乘法運算可以實現(xiàn)掩模操作,即屏蔽掉圖像的某些部分。一幅圖像乘以一個常數(shù)通常被稱為縮放,這是一種常見的圖像處理操作。如果使用的縮放因子大于1,那么將增強圖像的亮度,如果因子小于1則會使圖像變暗??s放通常將產(chǎn)生比簡單添加像素偏移量自然得多的明暗效果,這是因為這種操作能夠更好地維持圖像的相關(guān)對比度。此外,由于時域的卷積或相關(guān)運算與頻域的乘積運算對應(yīng),因此乘法運算有時也被作為一種技巧來實現(xiàn)卷積或相關(guān)處理。在MATLAB中,使用immultiply函數(shù)實現(xiàn)兩幅圖像的乘法。immultiply函數(shù)將兩幅圖像相應(yīng)
17、的像素值進行元素對元素的乘法操作(MATLAB點乘),并將乘法的運算結(jié)果作為輸出圖形相應(yīng)的像素值。immulitply函數(shù)的調(diào)用格式如下:Z=immulitply(X,Y)其中,Z=X*Y。例如,以下代碼將使用給定的縮放因子對圖2.5(a)所示的圖像進行縮放,從而得到如圖2.5(b)所示的較為明亮的圖像:I=imread(moon.;tif)J=immultiply(I,1.2);subplot(1,2,1);imshow(I);subplot(1,2,2);imshow(J);uint8圖像的乘法操作一般都會發(fā)生溢出現(xiàn)象。Immultiply函數(shù)將溢出的數(shù)據(jù)截取為數(shù)據(jù)類型的最大值。為了避免產(chǎn)
18、生溢出現(xiàn)象,可以在執(zhí)行乘法操作之前將uint8圖像轉(zhuǎn)換為一種數(shù)據(jù)范圍較大的圖像類型,例如uintl6。4)圖像的除法運算除法運算可用于校正成像設(shè)備的非線性影響,這在特殊形態(tài)的圖像(如斷層掃描等醫(yī)學圖像)處理中常常用到。圖像除法也可以用來檢測兩幅圖像間的區(qū)別,但是除法操作給出的是相應(yīng)像素值的變化比率,而不是每個像素的絕對差異,因而圖像除法也稱為比率變換在MATLAB中使用imdivide函數(shù)進行兩幅圖像的除法。imdivide函數(shù)對兩幅輸入圖像的所有相應(yīng)像素執(zhí)行元素對元素的除法操作(點除),并將得到的結(jié)果作為輸出圖像的相應(yīng)像素值。imdivide函數(shù)的調(diào)用格式如下:Z=imdivide(X,Y)
19、其中,Z=X/Y。例如,以下代碼將圖4所示的兩幅圖像進行除法運算,請將這個結(jié)果和減法操作的結(jié)果相比較,對比它們之間的不同之處:Rice=imread(rice.tif);I=double(rice);J=I*0.43+90;Rice2=uint8(J);Ip=imdivide(rice,rice2);Imshow(Ip,);除法操作的結(jié)果如圖2.6所示。圖2.6原圖和減背景后的圖像相除的圖像效果三、實驗內(nèi)容及步驟利用imread()函數(shù)讀取一幅圖像,假設(shè)其名為strawberry.tif,存入一個數(shù)組中;利用whos命令提取該讀入圖像strawberry.tif的基本信息;利用imshow()
20、函數(shù)來顯示這幅圖像;利用imfinfo函數(shù)來獲取圖像文件的壓縮,顏色等等其他的詳細信息;利用imwrite()函數(shù)來壓縮這幅圖象,將其保存為一幅壓縮了像素的jpg文件,設(shè)為strawberry.jpg;語法:imwrite(原圖像,新圖像,quality,q),q取0-100。6.同樣利用imwrite()函數(shù)將最初讀入的tif圖象另存為一幅bmp圖像,設(shè)為strawberry.bmp。7.用imread()讀入圖像:Lenna.jpg和camema.jpg;8.用imfinfo()獲取圖像Lenna.jpg和camema.jpg的大??;9.用figure,imshow()分別將Lenna.jpg和camema.jpg顯示出來,觀察兩幅圖像的質(zhì)量。10用im2bw將一
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 板簧課程設(shè)計論文
- 2024年青海省安全員C證考試題庫
- 我媽媽課程設(shè)計
- 2024年股權(quán)轉(zhuǎn)讓協(xié)議:第五節(jié)股權(quán)擔保與保全流程
- 2024年第六章交易磋商與合同簽訂環(huán)境保護責任合同3篇
- 精餾塔課程設(shè)計目錄
- 系統(tǒng)舞蹈課程設(shè)計
- 統(tǒng)計專業(yè)課程設(shè)計
- 學校防溺水培訓課程設(shè)計
- 移動互聯(lián)應(yīng)用課程設(shè)計
- 幼兒園園長的園里園外融合教育
- 新型電力系統(tǒng)簡介
- 海裝風機故障培訓課件
- 施工安全管理體系及安全保證措施樣本
- 磁異法探測海底纜線分解課件
- 304焊接工藝參數(shù)
- 交感神經(jīng)相關(guān)性疼痛及其治療通用課件
- 中小學生研學旅行 投標方案(技術(shù)方案)
- 文創(chuàng)產(chǎn)品市場營銷策略
- 社區(qū)生鮮可行性報告
- 6款課堂活動隨機點名-抽獎模板(可編輯)兩套
評論
0/150
提交評論