函数adapthisteq 这个工具箱函数执行所谓的对比度受限的自适应直方图均衡,这个方法是由用直方图规定化方法处理图像的小区域(称为小片)组成。特别是可以限制均匀亮度区域的对比度,以免放大噪声。
语法格式: g=adapthisteq(f,param1,val1,param2,val2,…) f--------输入图像 g-------输出图像 parm/val是表中的内容
参数值‘NumTiles’根据行和列【r,c】指定小片数的正常数的两元素的向量。r和c至少是2,小片总数是r*c,默认值是【8 8】"ClipLimit范围【0,1】内的标量,指定了对比度增强限制。值越高,对比度越高。默认值是0.01.‘NBins’正整数标量,为建立对比度增强变换而使用的直方图指定堆栈数目。值越高,动态范围越大,同时要付出降低处理速度的代价。默认值256‘Range’指定输出图像数据范围的字符串“:(1)‘original’-------将范围限制为原图像【min(f(:) max(f(:) )】(2)‘full’----使用输出图像类的整个范围。例如对于unit8数据,范围是【0,255】。这是默认值。‘Distribution’字符串,用于指定图像小片所需的直方图形状:(1)‘uniform’平坦的直方图(默认值)(2)‘rayleigh’钟型直方图(3)‘exponential’曲线直方图‘Alpha’ | 用于瑞利分布和指数分布的非负标量,默认值是0.4.
f=imread('Fig0840_1652.tif'); subplot 221;imshow(f);title('(a)火星天体福布斯图像'); g1=adapthisteq(f); subplot 222;imshow(g1); title('(b)使用带默认值的函数adapthisteq后的结果'); g2=adapthisteq(f,'NumTiles',[25 25]); subplot 223;imshow(g1); title('(c)将参数NumTiles置为[25 25]来使用这个函数后的结果'); g3=adapthisteq(f,'NumTiles',[25 25],'ClipLimit',0.05); subplot 224;imshow(g1); title('(d)使用这一小片数量且ClipLimit=0.05所得到的结果');