※ 引述《PhoenixChu (沒有暱稱)》之銘言:
: 標題: Re: [問題] 儲存影像的問題
: 時間: Sun Nov 13 23:10:06 2005
:
: ※ 引述《hsfhung (ss)》之銘言:
: : 假設有一影像h,並用imshow(h)產生,發現圖像並不明顯...
: : 而用imshow(h,[])有明顯的改善...
: : imwrite(h,'filename')只能儲存第一張的結果...
: : 問題來了.....我要如何儲存有明顯改善這張圖在硬碟中呢...
:
: 我先假設 原始圖片 A 是一張 0~255 的灰階圖好了
:
: 以你說的樣子 用imhist(A)觀察其像數值 應該是不平均
:
: imshow(A,[]) 應該是把像數值最大的當1 最小的當0
:
: 然後其他中間的數據 內插分布
:
: 使用 B=imadjust(A,[a b],[c d]); % abcd 都是介於0~1的數字
:
: 像數值會把 a的值改變成c b的值改變成d a~b之間的值內插
:
: 以你要的應該是
:
: B=imadjust(A,[min(min(A))/255 max(max(A))/255)],[ ]);
:
: %第二個參數不填 就內建為[0 1]
:
:
:
: --
: ※ 發信站: 批踢踢實業坊(ptt.cc)
: ◆ From: 59.104.58.90
: 推 hsfhung:可是我的min(min(A))已經小於零..MATlab不接受.要怎麼改呢 11/14 20:36
手動轉換
假設 C 是你的原始資料 min(min(C)) 小於零
C2 = (C-min(min(c))) / (max(max(C))-min(min(C))) ;
這樣 C2 就會等於 C 映射到 0~1 之間
imshow(C2) 應該會跟你用 imshow(C,[]) 看到一樣的圖形
嗯.....上面是賺P幣用的
help mat2gray
C2 = mat2gray(C) ;
運算過程 就是剛剛手動轉換的那樣
不行的話 再討論討論
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.104.59.102