《matlab灰度图直方图均衡化代码(共2页).docx》由会员分享,可在线阅读,更多相关《matlab灰度图直方图均衡化代码(共2页).docx(2页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上matlab灰度图直方图均衡化代码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(
2、PS=k)/(m*n); %计算每级灰度出现的概率,将其存入GP中相应位置endfigure,bar(0:255,GP,g) %绘制直方图title(原图像直方图)xlabel(灰度值)ylabel(出现概率)%三,直方图均衡化S1=zeros(1,256);for i=1:256 for j=1:i S1(i)=GP(j)+S1(i); %计算Sk endendS2=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(出现概率)%四,图像均衡化PA=PS;for i=0:255 PA(find(PS=i)=S2(i+1); %将各个像素归一化后的灰度值赋给这个像素endfigure,imshow(PA) %显示均衡化后的图像title(均衡化后图像)imwrite(PA,PicEqual.bmp);专心-专注-专业