数字图像处理直方图均衡化的程序源代码是什么?
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/08 17:07:55
数字图像处理直方图均衡化的程序源代码是什么?
数字图像处理直方图均衡化的程序源代码是什么?
数字图像处理直方图均衡化的程序源代码是什么?
clear all%一,图像的预处理,读入彩色图像将其灰度化
PS=imread('1.jpg'); %读入JPG彩色图像文件
imshow(PS) %显示出来
title('输入的彩色JPG图像')
imwrite(rgb2gray(PS),'PicSampleGray.bmp'); %将彩色图片灰度化并保存
PS=rgb2gray(PS); %灰度化后的数据存入数组
%二,绘制直方图
[m,n]=size(PS); %测量图像尺寸参数
GP=zeros(1,256); %预创建存放灰度出现概率的向量
for k=0:255
GP(k+1)=length(find(PS==k))/(m*n); %计算每级灰度出现的概率,将其存入GP中相应位置endfigure,bar(0:255,GP,'g') %绘制直方图
title('原图像直方图')
xlabel('灰度值')
ylabel('出现概率')
%三,直方图均衡化
S1=zeros(1,256);
for i=1:256for j=1:iS1(i)=GP(j)+S1(i); %计算SkendendS2=round((S1*256)+0.5); %将Sk归到相近级的灰度
for i=1:256
GPeq(i)=sum(GP(find(S2==i))); %计算现有每个灰度级出现的概率endfigure,bar(0:255,GPeq,'b') %显示均衡化后的直方图
title('均衡化后的直方图')
xlabel('灰度值')
ylabel('出现概率')