一、 直方图均衡化方法对图像实施增强
直方图均衡化的计算过程如下:
1. 列出原始图像和变换后图像的灰度级: ,其中L是灰度级的个数。
2. 统计原图像各灰度级的像素个数 。
3. 计算原始图像直方图: ,n为原始图像像素总个数。
4. 计算累计直方图
5. 利用灰度变化函数计算变换后的的灰度值,并四舍五入取整:
6. 确定灰度变换关系 ,据此将原图像的灰度值 修正为
7. 统计变换后像各灰度级的像素个数
8. 计算变换后图像的直方图
代码:
clear all
I=imread('56.jpg'); %读入JPG彩色图像文件
I_gray =rgb2gray(I); %灰度化后的数据存入数组
% imwrite(I_gray,'1_gray.bmp'); %保存灰度图像
figure,subplot(221),imshow(I_gray);
title('原始灰度图')
[row,col]=size(I_gray); %测量图像尺寸参数
p=zeros(1,256); %预创建存放灰度出现概率的向量
fori=1:row
for j=1:col
p(I_gray(i,j) + 1) = p(I_gray(i,j) +1) + 1;
end
end
subplot(223),imhist(I_gray);
%% 计算原始直方图
p1=p/(col*row