資源描述:
《MATLAB圖像類型轉(zhuǎn)換》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、MATLAB圖像類型轉(zhuǎn)換003.MATLAB圖像類型轉(zhuǎn)換????圖像類型轉(zhuǎn)換函數(shù)?---------------------------------------------------------------------------??函數(shù)名???????????函數(shù)功能?---------------------------------------------------------------------------??dither???圖像抖動(dòng),將灰度圖變成二值圖,或?qū)⒄娌噬珗D像抖動(dòng)成索引色圖像??gra
2、y2ind??將灰度圖像轉(zhuǎn)換成索引圖像??grayslice??通過設(shè)定閾值將灰度圖像轉(zhuǎn)換成索引色圖像??im2bw???通過設(shè)定亮度閾值將真彩色、索引色、灰度圖轉(zhuǎn)換成二值圖??ind2gray??將索引色圖像轉(zhuǎn)換成灰度圖像??ind2rgb???將索引色圖像轉(zhuǎn)換成真彩色圖像??mat2gray?將一個(gè)數(shù)據(jù)矩陣轉(zhuǎn)換成一副灰度圖??rgb2gray??將一副真彩色圖像轉(zhuǎn)換成灰度圖像??rgb2ind???將真彩色圖像轉(zhuǎn)換成索引色圖像?----------------------------------------
3、------------------------------------4.圖像文件的讀寫和查詢4.1圖形圖像文件的讀取?利用函數(shù)imread()可完成圖形圖像文件的讀取,語法:??A=imread(filename,fmt)??[X,map]=imread(filename,fmt)??[...]=imread(filename)??[...]=imread(filename,idx)(只對TIF格式的文件)??[...]=imread(filename,ref)(只對HDF格式的文件)?通常,讀取的大多數(shù)圖
4、像均為8bit,當(dāng)這些圖像加載到內(nèi)存中時(shí),Matlab就將其存放在類uint8中。此為Matlab還支持16bit的PNG和TIF圖像,當(dāng)讀取這類文件時(shí),Matlab就將其存貯在uint16中。?注意:對于索引圖像,即使圖像陣列的本身為類uint8或類uint16,imread函數(shù)仍將顏色映象表讀取并存貯到一個(gè)雙精度的浮點(diǎn)類型的陣列中。4.2圖形圖像文件的寫入?使用imwrite函數(shù),語法如下:?imwrite(A,filename,fmt)?imwrite(X,map,filename,fmt)?imwrit
5、e(...,filename)?imwrite(...,parameter,value)?當(dāng)利用imwrite函數(shù)保存圖像時(shí),Matlab缺省的方式是將其簡化道uint8的數(shù)據(jù)格式。4.3圖形圖像文件信息的查詢?imfinfo()函數(shù)5.圖像文件的顯示5.1索引圖像及其顯示?方法一:?????image(X)?????colormap(map)?方法二:?????imshow(X,map)5.2灰度圖像及其顯示?Matlab7.0中,要顯示一副灰度圖像,可以調(diào)用函數(shù)imshow或imagesc(即imagesc
6、ale,圖像縮放函數(shù))?(1)imshow函數(shù)顯示灰度圖像??使用imshow(I)??或使用明確指定的灰度級書目:imshow(I,32)??由于Matlab自動(dòng)對灰度圖像進(jìn)行標(biāo)度以適合調(diào)色板的范圍,因而可以使用自定義大小的調(diào)色板。其調(diào)用格式如下:?????imshow(I,[low,high])??其中,low和high分別為數(shù)據(jù)數(shù)組的最小值和最大值。?(2)imagesc函數(shù)顯示灰度圖像?下面的代碼是具有兩個(gè)輸入?yún)?shù)的imagesc函數(shù)顯示一副灰度圖像???imagesc(1,[0,1]);???colo
7、rmap(gray);??imagesc函數(shù)中的第二個(gè)參數(shù)確定灰度范圍。灰度范圍中的第一個(gè)值(通常是0),對應(yīng)于顏色映象表中的第一個(gè)值(顏色),第二個(gè)值(通常是1)則對應(yīng)與顏色映象表中的最后一個(gè)值(顏色)。灰度范圍中間的值則線型對應(yīng)與顏色映象表中剩余的值(顏色)。??在調(diào)用imagesc函數(shù)時(shí),若只使用一個(gè)參數(shù),可以用任意灰度范圍顯示圖像。在該調(diào)用方式下,數(shù)據(jù)矩陣中的最小值對應(yīng)于顏色映象表中的第一個(gè)顏色值,數(shù)據(jù)矩陣中的最大值對應(yīng)于顏色映象表中的最后一個(gè)顏色值。5.3RGB圖像及其顯示?(1)image(RGB)
8、?不管RGB圖像的類型是double浮點(diǎn)型,還是uint8或uint16無符號整數(shù)型,Matlab都能通過image函數(shù)將其正確顯示出來。?RGB8=uint8(round(RGB64×255));%將double浮點(diǎn)型轉(zhuǎn)換為uint8無符號整型?RGB64=double(RGB8)/255;??????%將uint8無符號整型轉(zhuǎn)換為double浮點(diǎn)型?RGB16=uint16(rou