版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、評分實驗報告 課程名稱 醫(yī)學(xué)圖像處理 實驗名稱 圖像運算 專業(yè)班級 姓 名 學(xué) 號 實驗日期 實驗地點 20152016學(xué)年度第 2 學(xué)期一、 實驗?zāi)康腗ATLAB的圖像處理工具箱提供了圖像運算函數(shù)。本實驗將具體介紹Matlab中的圖像點運算、代數(shù)運算、幾何和鄰域操作運算。二、實驗環(huán)境 1、硬件配置:處理器:Intel(R) Core(TM) i7-3770 CPU 3.40GHz 3.40GHz 安裝內(nèi)存(RAM):4.00GB 系統(tǒng)類型:64位操作系統(tǒng)2、 軟件環(huán)境:MATLAB R2013b軟件三、實驗內(nèi)容利用Matlab對圖像進行點運算、加法運算、減法運算、乘法運算、除法運算、改變圖像
2、的大小、旋轉(zhuǎn)圖像、圖像的剪切、圖像的鄰域操作。四、實驗結(jié)果與分析 (包括實驗原理、數(shù)據(jù)的準備、運行過程分析、源程序(代碼)、圖形圖象界面等)注:本項可以增加頁數(shù)例1 圖像點運算skull=imread(skull.tif); %讀取圖像 subplot(131),imshow(skull) %生成一行三列三塊區(qū)域,并在第一塊區(qū)域繪制圖像 I=double(skull); %轉(zhuǎn)換為雙精度類型 J=I*0.43+60; %利用該函數(shù)對輸出圖像進行壓縮,使其對比度減小,圖像變暗skull2=uint8(J); %轉(zhuǎn)換為uint8 subplot(132),imshow(skull2) %在第二塊區(qū)域
3、繪制圖像 J=I*1.5-60; %利用該函數(shù)對輸出圖像進行對比度級數(shù)拓展,使其對比度增強,圖像變亮 skull3=uint8(J); %轉(zhuǎn)換為uint8 subplot(133),imshow(skull3) %在第三塊區(qū)域繪制圖像運行結(jié)果: 圖1 原圖像 圖2 對比度減小的圖像 圖3 對比度增強的圖像分析:1)subplot是用于將多個圖像畫到一個平面上的函數(shù)。subplot(m,n,p,)中的m表示m行,n表示n列,p表示從左到右的第幾塊區(qū)域;2)uint8表示8位無符號的整型數(shù)據(jù)類型,以此方式存儲的圖像稱作8位圖像;而Matlab中數(shù)值一般采用double型的存儲和運算,因此在進行本題
4、的灰度變換運算時,應(yīng)先把skull圖像轉(zhuǎn)化為double格式; 3)線性灰度變換函數(shù) 當(dāng)a=1,b=0時,輸出圖像像素不發(fā)生變化;當(dāng)a=1,時,輸出圖像所有灰度值上移或下移;當(dāng)時,輸出圖像灰度級壓縮,對比度減小,如圖2所示;當(dāng)時,輸出圖像灰度級拓展,對比度增強,如圖3所示;當(dāng) 時,輸出圖像暗區(qū)域變亮,亮區(qū)域變暗,圖像求反。2、圖像的代數(shù)運算例2 圖像加法運算skull=imread(skull.tif); %讀取圖像imshow(skull) %顯示圖像J=imread(cameraman.tif); %讀取圖像figure,imshow(J) %顯示圖像I=imresize(skull,25
5、6,256); %將skull圖像轉(zhuǎn)換為的大小K=imadd(I,J); %對兩幅圖像的灰度值進行加法運算figure,imshow(K) %顯示圖像K2=imadd(I,J,uint16); %對兩幅圖像的灰度值進行加法運算,并轉(zhuǎn)化為uint16figure,imshow(K2,) %顯示圖像RGB=imread(skull.tif); %讀取圖像RGB2=imadd(RGB,50); %將圖像skull與常數(shù)50相加imshow(RGB) %顯示RGB圖像figure,imshow(RGB2) %顯示亮度增強50的RGB圖像RGB3=imadd(RGB,100); %將圖像skull與常數(shù)
6、100相加figure,imshow(RGB3) %顯示亮度增強100的RGB圖像運行結(jié)果: 圖4 skull原圖像 圖5 cameraman原圖像 圖6 兩幅相加后的圖像 圖7 轉(zhuǎn)化為uint16的圖像 圖8 RGB原圖 圖9 亮度增強50后的圖像圖10 亮度增強100后的圖像分析:1)imadd是用于實現(xiàn)兩圖像灰度值相加的函數(shù),imadd(I,J)中的I和J要求大小相等,由于我讀取的skull圖像的尺寸為,因此在進行I和J的加法運算前須利用imresize函數(shù)把skull圖像轉(zhuǎn)換為的大小; 2)I和J進行相加后的圖像如圖6所示,而在I和J相加的基礎(chǔ)上將其轉(zhuǎn)換為uint16的圖像如圖7所示,
7、我們可以清楚的發(fā)現(xiàn)圖6比圖7的更亮,但細節(jié)比圖7的模糊,這是由于Matlab在運算后會自動將圖像轉(zhuǎn)換為double型,因此uint16的圖像是比double型的圖像更清晰; 3)imadd(RGB,50)是將一個常數(shù)50加到RGB圖像上,即使圖像的灰度級增強了50,如圖9所示,以此類推,圖10為灰度級增強了100的圖像。例3 圖像減法運算I=imread(skull.tif); %讀取圖像imshow(I) %顯示圖像background=imopen(I,strel(disk,15); %估計圓盤半徑為15的背景圖像figure,imshow(background); %顯示背景圖I2=im
8、subtract(I,background); %從原始圖像中減去不均勻的背景圖運行結(jié)果: 圖11 skull原圖 圖12 背景圖 圖13 減去背景圖后的圖像分析:1)imopen開運算屬于形態(tài)圖像處理,是先腐蝕后膨脹,可以使邊界平滑,消除尖刺,斷開窄小的連接,保持面積大小不變;strel是用于構(gòu)建結(jié)構(gòu)元素對象,imopen(I,strel(disk,15)就是構(gòu)建圓盤半徑為15的背景圖,如圖12所示; 2)imsubtract函數(shù)是用于兩幅圖像的相減運算,如圖13所示,減去不均勻的部分后,圖像變得更加平滑。例4 圖像的乘法運算I=imread(skull.tif); %讀取圖像J=immul
9、tiply(I,1.2); %圖像的乘法,縮放因子是1.21,增強圖像的亮度K=immultiply(I,0.5); %圖像的乘法,縮放因子是0.51,減小圖像的亮度imshow(I) %顯示原圖像figure,imshow(J) %顯示亮度增強圖像figure,imshow(K) %顯示亮度減小圖像運行結(jié)果: 圖14 skull原圖 圖15 亮度增強后的圖像 圖16 亮度減小后的圖像分析:1)乘法運算可以實現(xiàn)掩模操作,即屏蔽掉圖像的某些部分 2)一幅圖像乘以一個常數(shù)通常被稱為縮放。immultiply(I,1.2),使用的縮放因數(shù)大于1,那么將增強圖像的亮度,如圖15所示;immultipl
10、y(I,0.5)中的因數(shù)小于1則會使圖像變暗,如圖16所示。例5 圖像除法運算I=imread(skull.tif); %讀取原圖像J=double(I)*0.43+80; %利用該函數(shù)對輸出圖像進行處理,是對比度減小,圖像變暗J=uint8(J); %轉(zhuǎn)換成uint8K=imdivide(I,J); %除法運算imshow(I) %顯示原圖像figure,imshow(J) %顯示對比度減小的圖像figure,imshow(K) %顯示灰度級相除后的圖片運行結(jié)果: 圖17 skull原圖 圖18 對比度減小的圖片 圖19 灰度級相除后的圖片分析:1)J=double(I)*0.43+80是將
11、skull圖像轉(zhuǎn)換為double型再對其進行灰度變換運算,使其灰度級減小,如圖18所示; 2)imdivide(I,J)要求I和J數(shù)據(jù)類型一致,因此在進行此運算時,須先將double型的J轉(zhuǎn)換為uint8,兩幅圖像的灰度級相除后的到的結(jié)果為0,1,因為其灰度級極其相近且小,肉眼無法分辨,故我們所看到的輸出圖像幾近與純黑色,如圖19所示; 3)除法運算是用于校正成像設(shè)備的非線性影響。例6 圖像的幾何運算I=imread(skull.tif); %讀取圖像J=imresize(I,1.25); %返回圖像J,其長寬是圖像I的長寬的1.25倍,即放大圖像K=imresize(I,0.8); %返回圖
12、像K,其長寬是圖像I的長寬的0.8倍,即縮小圖像imshow(I) %顯示原圖figure,imshow(J) %顯示尺寸放大的圖像figure,imshow(K) %顯示尺寸減小的圖像 Y=imresize(I,100,150); %返回圖像Y,高度為100,寬度為150figure,imshow(Y) %顯示的圖像運行結(jié)果: 圖20 skull的原圖像 圖21 尺寸放大的圖像 圖22 尺寸減小的圖像圖23 的圖像分析:1)imresize函數(shù)可改變圖像輸出圖像的大小,J=imresize(I,1.25)為返回圖像J,其長寬是圖像I的長寬的1.25倍,即放大圖像,如圖21所示;K=imres
13、ize(I,0.8)為返回圖像K,其長寬是圖像I的長寬的0.8倍,即縮小圖像,如圖22所示; 2)Y=imresize(I,100,150)是直接指定輸出圖像真實的大小,即返回圖像Y,高度為100,寬度為150。例7 旋轉(zhuǎn)一幅圖像I=imread(skull.tif); %讀取圖像J=imrotate(I,30,bilinear); %將圖像skull繞圖像的中心點旋轉(zhuǎn)30度J1=imrotate(I,30,bilinear,crop); %crop:通過對旋轉(zhuǎn)后的圖像進行裁剪,保持旋轉(zhuǎn)后輸出圖像J1的尺寸和輸入圖像skull的尺寸一樣。imshow(I) %顯示原圖figure,imshow
14、(J) %顯示逆時針旋轉(zhuǎn)30度的圖像figure,imshow(J1) %顯示裁剪后的圖像J2=imrotate(I,-15,bilinear); %將圖像順時針旋轉(zhuǎn)15度,進行雙線性插值figure,imshow(J2) %顯示順時針旋轉(zhuǎn)15度的圖像運行結(jié)果: 圖24 skull的原圖像 圖25 逆時針旋轉(zhuǎn)的圖像 圖26 裁剪后的圖像 圖27 順時針旋轉(zhuǎn)的圖像分析:1) Imrorate(x,n)是用于對圖像進行旋轉(zhuǎn)的函數(shù),其中X若為正數(shù)則表示逆時針旋轉(zhuǎn),數(shù)則表示順時針旋轉(zhuǎn);J=imrotate(I,30,bilinear)表示逆時針旋轉(zhuǎn)30度,如圖25所示;其中bilinear為雙線性插值
15、,在兩個方向分別進行一次線性插值;J2=imrotate(I,-15,bilinear)則表示順時針旋轉(zhuǎn)15度,如圖27所示;2) J1=imrotate(I,30,bilinear,crop)中的crop是通過對旋轉(zhuǎn)后的圖像進行裁剪,保持旋轉(zhuǎn)后輸出圖像J1的尺寸和輸入圖像skull的尺寸一樣,如圖26所示。例8 圖像剪切%通過交互操作,從一幅圖像中剪切一個矩形區(qū)域。I=imread(skull.tif); %讀取圖像imshow(I); %顯示圖像II1=imcrop; %對圖像進行自由地剪切操作figure,imshow(I1) %顯示圖像I1I2=imcrop(I,30 60 120 1
16、60); %剪切圖像I,坐標(30,60)往下120*160的圖像figure,imshow(I2) %顯示圖像I2運行結(jié)果: 圖28 skull的原圖像 圖29 手動剪切后的圖像 圖30 定義剪切后的圖像分析:1)imcrop用于返回圖像的一個裁剪區(qū)域,但其也允許用戶自己以交互方式使用鼠標選定要剪切的區(qū)域;因此如圖29所示,為我們自己手動剪切的圖像;I2=imcrop(I,30 60 120 160)為剪切橫坐標30-60,縱坐標60-160的圖像區(qū)域,如圖30所示。例9 圖像的領(lǐng)域操作I=imread(skull.tif); %讀取原圖f=inline(max(x(:); %定義一個取最大
17、值的函數(shù)f,構(gòu)造復(fù)合函數(shù)I2=nlfilter(I,3 3,f); %對圖像I的每一個3*3滑塊應(yīng)用函數(shù)f,滑動鄰域操作imshow(I) %顯示原圖figure,imshow(I2) %顯示進行滑動鄰域操作的圖像I=imread(skull.tif); %讀取原圖f=inline(uint8(round(mean2(x)*ones(size(x); %構(gòu)造復(fù)合函數(shù)I2=blkproc(I,8 8,f); %對圖像I的每一個8*8滑塊應(yīng)用函數(shù)f,分離鄰域操作imshow(I) %顯示原圖figure,imshow(I2) %顯示分離鄰域操作的圖像運行結(jié)果: 圖31 skull的原圖像 圖32
18、滑動鄰域操作的圖像 圖33 分離鄰域操作的圖像分析:1)nlfilter是對圖像進行邊沿操作,即進行滑動鄰域操作,nlfilter(I,3 3,f)為對圖像I的每一個3*3滑塊應(yīng)用函數(shù)f進行滑動鄰域操作,如圖32所示;2) blkproc是實現(xiàn)圖像的顯示塊操作,即分離鄰域操作,blkproc(I,8 8,f)為對圖像I的每一個8*8滑塊應(yīng)用函數(shù)f進行分離鄰域操作,如圖33所示;五、實驗小結(jié): (包括主要實驗問題的最終結(jié)果描述、詳細的收獲體會,待解決的問題等)在此次實驗中,由于實驗內(nèi)容更貼近生活應(yīng)用,因此比起上學(xué)期,我們更容易領(lǐng)悟該程序的表達,只是在細節(jié)方面還是很容易出錯,甚至不容易拐過彎來。在實驗中應(yīng)注
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 惠南鎮(zhèn)安全員培訓(xùn)課件
- 區(qū)未來社區(qū)數(shù)字化系統(tǒng)項目采購需求
- 市水域環(huán)境衛(wèi)生保潔服務(wù)項目招標文件
- 2026年投資銀行家面試題及估值模型應(yīng)用含答案
- 2026年軟件開發(fā)崗面試題庫
- 2026年金融行業(yè)風(fēng)險管理部主管面試題集及解答
- 2026年服裝設(shè)計師求職者常見問題及答案參考
- 2026年金融風(fēng)控經(jīng)理面試題目與解析
- 2026年應(yīng)對技巧如何在考試管理員面試中脫穎而出
- 2026年運營總監(jiān)崗位核心能力測試與面試指南含答案
- 小型手持式采茶機
- 太空交通管理規(guī)則-洞察及研究
- 化學(xué)反應(yīng)原理大題集訓(xùn)(含解析)-2026屆高中化學(xué)一輪復(fù)習(xí)講義
- 腹腔鏡手術(shù)應(yīng)用推廣方案與技術(shù)指南
- 北京市西城區(qū)中學(xué)課余訓(xùn)練:現(xiàn)狀洞察與發(fā)展探究
- 規(guī)劃展館改造項目方案(3篇)
- 玉米dh育種技術(shù)
- 頭孢曲松鈉過敏的觀察與急救
- 幼兒園后勤人員培訓(xùn)會議記錄2025
- 廣告材料供貨方案(3篇)
- 四上語文《快樂讀書吧》作品導(dǎo)讀《世界經(jīng)典神話與傳說》
評論
0/150
提交評論