Matlab數(shù)字圖像處理時的數(shù)據(jù)類型問題

背景:數(shù)字圖像處理(DIP)入門時對matlab中的圖片在不同情況下的數(shù)據(jù)類型不太理解,其中包括imread()橡庞、mat2gray()戏仓、int8()等函數(shù),在這里簡單整理一下客冈。



首先需要明確imread()得到數(shù)據(jù)類型多數(shù)情況下為unsigned char類型旭从。數(shù)據(jù)范圍為1-255。 這時用imshow()顯示圖像的時候郊酒, imshow()會認為輸入矩陣的范圍在0-255遇绞, 如果imshow的參數(shù)為double類型的,那么imshow認為輸入矩陣的值為0-1燎窘。imread()的文檔如下image1摹闽。


image1


imshow()的用法:

imshow(I)以圖形的形式顯示灰度圖像I。imshow為圖像顯示優(yōu)化圖形褐健、軸和圖像對象屬性付鹿。

imshow(I澜汤,[low - high])顯示灰度圖像I,指定顯示范圍為二元向量[low - high]舵匾。有關(guān)更多信息俊抵,請參見DisplayRange參數(shù)。

imshow(I坐梯,[])顯示灰度圖像I徽诲,根據(jù)I中的像素值范圍縮放顯示。imshow使用[min(I(:))) max(I(:(:))]作為顯示范圍吵血。imshow將I中的最小值顯示為黑色谎替,最大值顯示為白色。有關(guān)更多信息蹋辅,請參見DisplayRange參數(shù)钱贯。

imshow()的官方文檔如下圖image2:

image2

當涉及到頻域等處理時候,或進行如拉普拉斯濾波時濾波器中有負數(shù)值侦另,需要轉(zhuǎn)換成double類型秩命,否則負數(shù)會被置零處理結(jié)果出錯,需要將字節(jié)型數(shù)據(jù)轉(zhuǎn)換為double類型褒傅,matlab提供了2兩個函數(shù)弃锐,im2double和double函數(shù),均可使用樊卓,兩者的區(qū)別則極其重要拿愧,直接用double轉(zhuǎn)換以后用imshow()顯示的是一片白色杠河, 是因為當imshow()顯示圖像的時候碌尔, 會認為double類型的圖像矩陣的范圍在0-1,小于0的像素被置零券敌, 超過1的像素值當作1處理唾戚, 這樣就是幾乎所有的像素都是白色。如果想要正常imshow()顯示double類型的數(shù)據(jù)可以用mat2gray()處理一下待诅。

mat2gray ? 把一個double類的任意數(shù)組轉(zhuǎn)換成值范圍在[0,1]的歸一化double類數(shù)組叹坦。

im2double 函數(shù)將所有像素數(shù)據(jù)轉(zhuǎn)化為[0 1]區(qū)間之內(nèi),這也是數(shù)字圖像處理工具箱的要求,但是double函數(shù)則僅僅提高數(shù)據(jù)精度卑雁,但是并未將數(shù)據(jù)量化到[0 1]區(qū)間之內(nèi)募书。

綜合效果如下圖image3所示。

image3

適應(yīng)場合:當你需要做頻域濾波處理测蹲,需要注意不要使用im2double函數(shù)莹捡,否則濾波之后,圖像在傅里葉反變換之后扣甲,所有像素數(shù)據(jù)都是0篮赢,也就是說圖像純黑色。與此對應(yīng),當你使用數(shù)字圖像處理工具箱的時候启泣,建議使用im2double函數(shù)涣脚。

如果一個圖像經(jīng)過處理后需要顯示出來,但是圖像的最大像素值遠小于255寥茫,此時是用imshow()還是用imshow(i,[])?

這一點曾使我迷惑遣蚀,但經(jīng)過對比原圖像的像素值和處理后的像素值不難發(fā)現(xiàn)可能兩幅圖像的最大像素值都遠小于255,這樣的話就不難理解纱耻,此時應(yīng)該直接用imshow()顯示結(jié)果妙同,如果將原圖像映射到[0-1]或者[0-255]再顯示就相當于把圖像對比度拉伸了,拉伸后的圖像就不是原圖像了膝迎,拉伸后的圖像視覺效果會更好一些粥帚,畢竟對比度被提高了。對比下圖中image4的‘prcessed image’和下面兩幅擴展后的圖可以看出差異限次。


image4

im2uint8 ?將輸入數(shù)據(jù)映射到1-255上芒涡,數(shù)據(jù)中所有小于0的設(shè)置為0,而將輸入中所有大于1的設(shè)置為255, 其他的所有乘以255卖漫,此時就可以直接用imshow()顯示數(shù)據(jù)费尽。

im2uint16與im2uint8類似。

能想到的暫且就這些羊始。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末旱幼,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子突委,更是在濱河造成了極大的恐慌柏卤,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,198評論 6 514
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件匀油,死亡現(xiàn)場離奇詭異缘缚,居然都是意外死亡,警方通過查閱死者的電腦和手機敌蚜,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,334評論 3 398
  • 文/潘曉璐 我一進店門桥滨,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人弛车,你說我怎么就攤上這事齐媒。” “怎么了纷跛?”我有些...
    開封第一講書人閱讀 167,643評論 0 360
  • 文/不壞的土叔 我叫張陵喻括,是天一觀的道長。 經(jīng)常有香客問我忽舟,道長双妨,這世上最難降的妖魔是什么淮阐? 我笑而不...
    開封第一講書人閱讀 59,495評論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮刁品,結(jié)果婚禮上泣特,老公的妹妹穿的比我還像新娘。我一直安慰自己挑随,他們只是感情好状您,可當我...
    茶點故事閱讀 68,502評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著兜挨,像睡著了一般膏孟。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上拌汇,一...
    開封第一講書人閱讀 52,156評論 1 308
  • 那天柒桑,我揣著相機與錄音,去河邊找鬼噪舀。 笑死魁淳,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的与倡。 我是一名探鬼主播界逛,決...
    沈念sama閱讀 40,743評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼纺座!你這毒婦竟也來了息拜?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,659評論 0 276
  • 序言:老撾萬榮一對情侶失蹤净响,失蹤者是張志新(化名)和其女友劉穎少欺,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體别惦,經(jīng)...
    沈念sama閱讀 46,200評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡狈茉,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,282評論 3 340
  • 正文 我和宋清朗相戀三年夫椭,在試婚紗的時候發(fā)現(xiàn)自己被綠了掸掸。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,424評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡蹭秋,死狀恐怖扰付,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情仁讨,我是刑警寧澤羽莺,帶...
    沈念sama閱讀 36,107評論 5 349
  • 正文 年R本政府宣布,位于F島的核電站洞豁,受9級特大地震影響盐固,放射性物質(zhì)發(fā)生泄漏荒给。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,789評論 3 333
  • 文/蒙蒙 一刁卜、第九天 我趴在偏房一處隱蔽的房頂上張望志电。 院中可真熱鬧,春花似錦蛔趴、人聲如沸挑辆。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,264評論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽鱼蝉。三九已至,卻和暖如春箫荡,著一層夾襖步出監(jiān)牢的瞬間魁亦,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,390評論 1 271
  • 我被黑心中介騙來泰國打工羔挡, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留吉挣,地道東北人。 一個月前我還...
    沈念sama閱讀 48,798評論 3 376
  • 正文 我出身青樓婉弹,卻偏偏與公主長得像睬魂,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子镀赌,可洞房花燭夜當晚...
    茶點故事閱讀 45,435評論 2 359

推薦閱讀更多精彩內(nèi)容