当前位置:首页 > 利用MATLAB对图像进行增强处理
sk?T(rk)??pr(ri)??i?0i?0kks可见均衡后的各像素的灰度值k可直接由原图像的直方图算出。
在实际处理变换时,一般先对原始图像的灰度情况进行统计分析,
r并计算出原始直方图分布,然后根据计算出的累计直方图分布求出k到sk的灰度映射关系。在重复上述步骤得到源图像所有灰度级到目标图像灰度级的映射关系后,按照这个映射关系对源图像各点像素进行灰度转换,即可完成对源图的直方图均衡化。 源代码如下: Clear;
A=imread(‘pout.tif’); B=imadjust(A);
imwrite(B,'E:\\5.tif'); %图像保存
subplot(2,2,1); imshow(A); %显示调整前后图像及其直方图 subplot(2,2,2); imhist(A); subplot(2,2,3); imshow(B); subplot(2,2,4); imhist(B);
nin
4.2 利用直方图规定化对图像进行增强
在实际应用中,希望能够有目的地增强某个灰度区间的图像, 即能够人为地修正直方图的形状, 使之与期望的形状相匹配,这就是直方图规定化的基本思想。换句话说,希望可以人为地改变直方图形状,使之成为某个特定的形状,直方图规定化就是针对上述要求提出来的一种增强技术,它可以按照预先设定的某个形状来调整图像的直方图。直方图规定化是在运用均衡化原理的基础上,通过建立原始图像和期望图像之间的关系,选择地控制直方图,使原始图像的直方图变成规定的形状,从而弥补了直方图均衡不具备交互作用的特性。直方图规定化就是针对
14
上述思想提出来的。 其增强原理及步骤如下:
1、先对原始的直方图均衡化:s?T(r) 2、同时对规定的直方图均衡化:v?G(z)
?1?1z?G(v)?G[T(r)]。 s?v3、由于都是均衡化,故令,则:
源代码如下:
Clear;
A=imread(‘E:\\7.tif’,’tif’); B=imread(‘pout.tif’); [count,hagram]=imhist(B);
C=imadjust(A, hagram); imwrite(C,'E:\\5.tif'); subplot(3,2,1); imshow(A); subplot(3,2,2); imhist(A); subplot(3,2,3); imshow(B); subplot(3,2,4); imhist(B); subplot(3,2,3); imshow(C); subplot(3,2,4); imhist(C);
%读入待处理图像 %读入规定图像 %直方图规定化 %图像保存
%显示调整前后图像及其直方图 15
5 参考文献
1、包振华.基于MATLAB的灰度级线性变换图像增强[J].武汉职业技术学院学报.2006,3
2、汪志云. 基于直方图的图像增强及其MATLAB实现[J].计算机工程与科学.2006,2
3、贾永红.
数字图像处理[M].武汉大学出版社.2003,9 16
共分享92篇相关文档