imadjust语法:
g=imadjust ( f, [low_in high_in] , [ low_out hight_out ] , gamma)
将 [low_in high_in]映射到 [ low_out hight_out ]之间的值。 [low_in high_in]以外的值被截去。
gamma指定从图像f中的灰度值映射生成的图像g的曲线的形状。gamma<1,映射被加权至较高(亮)的输出值,反之相反。gamma=1默认为1(线性映射)。

>> f= imread('D:\pictures\DIP3E_CH02_Original_Images\DIP3E_Original_Images_CH02\Fig0221(a)(ctskull-256).tif');
>> g1=imadjust(f,[0 1],[1,0]);%明暗反转得到负片
>> g=imcomplement(f);%和g1效果相同
>> g2=imadjust(f,[0.5,0.75],[0,1]);%将0.5-0.75之间的灰度拓展到整个区间[0,1]
>> g3=imadjust(f,[],[],2);%通过压缩灰度级的低端并扩展到高端
>> figure(1)
>> subplot(2,3,1);
>> imshow(f)
>> subplot(2,3,2);
>> imshow(g1)
>> subplot(2,3,3);imshow(g)
>> subplot(2,3,4);imshow(g2)
>> subplot(2,3,5);imshow(g3)

有时候想要自动地使用函数imadjust而不关心参数的高低就可以使用stretchlim
stretchlim语法1:
Low_High = stretchlim(f)
其中Low_High是两个元素向量,用于实现对比度拉伸。默认情况下,Low_High中的值指定灰度级,这些灰度级充满f中底部和顶部1%的所有像素。该结果以向量[low_in high_in]的形式用于函数imadjust。
>> s1=imadjust(f,stretchlim(f),[]);
>> s2=imadjust(f,stretchlim(f),[1,0]);
>> figure(1);
>> subplot(2,2,1);imshow(f)%原图
>> subplot(2,2,2);imshow(g)%imadjust负片
>> subplot(2,2,3);imshow(s1)%加强对比度原图
>> subplot(2,2,4);imshow(s2)%加强对比度负片
