簡介
調用格式:
J = imadjust(I)
J = imadjust(I,[low_in; high_in],[low_out; high_out])
J = imadjust(I,[low_in; high_in],[low_out; high_out],gamma)
newmap = imadjust(map,[low_in; high_in],[low_out;high_out],gamma)
RGB2 = imadjust(RGB1,...)
函式功能:
imadjust在數字圖像處理中用於進行圖像的灰度變換(調節灰度圖像的亮度或彩色圖像的顏色矩陣)。在matlab的命令視窗中鍵入: doc imadjust或者help imadjust即可獲得該函式的幫助信息, 鍵入type imadjust可以查看函式的原始碼。
程式示例
下面的例子都來自matlab的幫助文檔
示例
I = imread('pout.tif');J = imadjust(I);imshow(I), figure, imshow(J)
K = imadjust(I,[0.3 0.7],[]);figure, imshow(K)
RGB1 = imread('football.jpg');RGB2 = imadjust(RGB1,[.2 .3 0; .6 .7 1],[]);
imshow(RGB1), figure, imshow(RGB2)
使用方法
J = imadjust(I)
將灰度圖像 I 中的亮度值映射到 J 中的新值,使得圖像中 1% 的數據飽和至最低和最高亮度,這可以增加輸出圖像 J 的對比度值。此用法相當於 imadjust(I,stretchlim(I))
J = imadjust(I,[low_in; high_in],[low_out; high_out])
將圖像I中的亮度值映射到J中的新值,即將low_in至high_in之間的值映射到low_out至high_out之間的值。low_in 以下與 high_in 以上的值被剪下掉了,也就是說,low_in 以下的值映射到 low_out,high_in 以上的值映射到high_out。它們都可以使用空的矩陣[],默認值是[0 1]。
J = imadjust(I,[low_in; high_in],[low_out; high_out],gamma)
將圖像 I 中的亮度值映射到 J 中的新值,其中 gamma指定描述值I和值J關係的曲線形狀。如果gamma小於1,此映射偏重更高數值(明亮)輸出,如果gamma大於1,此映射偏重更低數值(灰暗)輸出,如果省略此參數,默認為(線性映射)。 《Simulink與信號處理》
newmap = imadjust(map,[low_in; high_in],[low_out; high_out],gamma)
調整索引色圖像的調色板map。如果low_in, high_in, low_out, high_out 和 gamma 都是標量,那么對 r,g,b 分量同時都做此映射。對於每個顏色分量都有唯一的映射,當 low_in 和 high_in 同時為1*3向量或者 low_out 和 high_out 同時為1*3向量或者 gamma 為1*3向量時。調整後的顏色矩陣 newmap 和 map 有相同的大小。
RGB2 = imadjust(RGB1,...)
對 RGB 圖像 RGB1 的紅、綠、藍調色板分別進行調整。隨著顏色矩陣的調整,每一個調色板都有唯一的映射值。
套用舉例
I = imread('pout.tif');
J = imadjust(I);
imshow(I), figure, imshow(J)