資源描述:
《數(shù)字圖像處理實驗二 圖像灰度變換》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、實驗二圖像灰度變換實驗一、實驗?zāi)康氖煜ち炼茸儞Q函數(shù)的使用熟悉灰度圖像的直方圖的表示;掌握圖像增強(qiáng)的基本方法:灰度變換、直方圖均衡;二、實驗內(nèi)容灰度線性變換、灰度直方圖、直方圖均衡處理;灰度變換是圖像增強(qiáng)的一種重要手段,使圖像對比度擴(kuò)展,圖像更加清晰,特征更加明顯?;叶燃壍闹狈綀D給出了一幅圖像概貌的描述,通過修改灰度直方圖來得到圖像增強(qiáng)。三、實驗原理1.函數(shù)imadjust函數(shù)imadjust是對灰度圖像進(jìn)行亮度變換的基本命令,語法為:g=imadjust(f,[low_inhigh_in],[low_outhigh_out],gamma)將圖
2、像f中的亮度值(灰度值)映射到新圖像g中,即將low_in至high_in之間的值映射到low_out至high_out之間的值。low_in以下的灰度值映射為low_out,high_in以上的灰度值映射為high_out,函數(shù)imadjust的矩陣[]內(nèi)參數(shù)均指定在0和1之間,[low_inhigh_in]和[low_outhigh_out]使用空矩陣[]會得到默認(rèn)值[01]。若high_out小于low_out,則輸出圖像會反轉(zhuǎn)。參數(shù)gamma指定了曲線(變換函數(shù))的形狀,若gamma小于1,則映射被加權(quán)至更高(更亮)的輸出值;若gam
3、ma大于1,則映射被加權(quán)至更低(更暗)的輸出值。若省略了函數(shù)的參量gamma,則gamma默認(rèn)為1——即線性映射。>>f=imread(‘filename’)>>imshow(f)>>g1=imadjust(f,[01],[10]);%圖像反轉(zhuǎn)>>figure,imshow(g1)%figure命令表示同時顯示多個窗口>>g2=imadjust(f,[0.50.75],[01]);%將0.5至0.75之間的灰度級擴(kuò)展到范圍0和1之間>>figure,imshow(g2)>>g3=imadjust(f,[],[],2)%使用gamma值>>fi
4、gure,imshow(g3)1.直方圖處理與函數(shù)繪圖圖像的直方圖定義為離散函數(shù):h(rk)=nk繪制圖像的直方圖,函數(shù)imhist,語法為:h=imhist(f,b)f為輸入圖像,h為直方圖h(rk),b是用于形成直方圖的灰度級個數(shù),若b省略,則默認(rèn)值為256。函數(shù)numel(f)可給出圖像f的象素個數(shù),有了它可歸一化直方圖:p=imhist(f,b)/numel(f)>>imhist(f)%MTALAB默認(rèn)顯示的圖像f的直方圖MATLAB中其它一些有代表性的繪制函數(shù)選項:(1)用條形圖繪制直方圖函數(shù)bar(horz,v,width),其中
5、,v是一個行(列)向量,它包含將被繪制的點;horz是一個與v有相同維數(shù)的向量,它包含水平標(biāo)度值的增量;width是一個在0到1之間的數(shù),表示豎條寬度,width值為1時,豎條較明顯;當(dāng)width的值為0時,豎條是簡單的垂直線;width的默認(rèn)值是0.8。在繪制條形圖時,我們通常會將水平軸等分為幾段,以便降低水平軸的分辨率。下面的語句將生成一副條形圖,其水平軸以10個灰度級為一組:>>h=imhist(f)>>h1=h(1:10:256)>>horz=1:10:256>>bar(horz,h1)>>axis([0255015000])%axi
6、s函數(shù)設(shè)置了水平軸和垂直軸的最大和最小值,語法為:%axis([horzminhorzmaxvertminvertmax])>>set(gca,‘xtick’,0:50:255)>>set(gca,‘ytick’,0:2000:15000)%參數(shù)gca表示“獲得當(dāng)前軸”(即最終顯示的圖形的軸),參數(shù)xtick和%ytick按所示的間隔設(shè)置水平軸和的垂直軸的刻度。%這兩個語句中,坐標(biāo)軸的取值范圍和刻度線都是人工設(shè)定的。使用函數(shù)%xlim(‘a(chǎn)uto’)和ylim(‘a(chǎn)uto’)可以自動設(shè)定坐標(biāo)軸的取值范圍和刻度線。(2)用桿狀圖繪制直方圖函數(shù)s
7、tem(horz,v,‘color_linestyle_marker’,‘fill’),參量color_linestyle_marker來自下表的三個值:顏色_線形_標(biāo)記例如,stem(v,‘r--s’)生成一副桿狀圖,其線條與標(biāo)記點都為紅色,線條為虛線,標(biāo)記點為方形。若使用fill,且標(biāo)記點為圓形、方形、菱形,則標(biāo)記點的顏色會是color指定的顏色。默認(rèn)顏色是black黑色,默認(rèn)線條為solid實線,默認(rèn)標(biāo)記點的形狀是circle圓形。>>h=imhist(f)>>h1=h(1:10:256)>>horz=1:10:256>>stem(ho
8、rz,h1,‘fill’)>>axis([0255015000])>>set(gca,‘xtick’,0:50:255)>>set(gca,‘ytick’,0:20