图形图像报告一直方图处理Word下载.doc
- 文档编号:845095
- 上传时间:2023-04-29
- 格式:DOC
- 页数:8
- 大小:959.50KB
图形图像报告一直方图处理Word下载.doc
《图形图像报告一直方图处理Word下载.doc》由会员分享,可在线阅读,更多相关《图形图像报告一直方图处理Word下载.doc(8页珍藏版)》请在冰点文库上搜索。
年月日
一、实验目的及内容
目的:
掌握和熟悉Matlab编程环境及语言;
掌握直方图统计的算法和用途。
内容:
1.在Matlab中载入一副灰度图像,统计显示该图像的直方图。
2.对图像进行直方图均衡化处理,显示处理后的图像及直方图。
二、要求
1.描述直方图的概念并解释直方图均衡化原理。
2.程序结构清晰,运行结果正确。
3.描述上述程序的设计、实现和结果,并对结果进行分析。
三、实验原理
1.直方图的概念
灰度直方图反映的是一幅图像中个灰度级像素出现的频率之间的关系。
以灰度级为横坐标,纵坐标为灰度级的频率,绘制频率和灰度级的关系图就是灰度直方图。
直方图的横轴从左到右代表照片从黑(暗部)到白(亮度)的像素数量,其左边最暗处的Level值为0,而右边最亮处的Level值为255。
直方图的垂直轴方向代表了在给定的Level值下的像素的数目。
频率的计算公式为:
=
在以上公式中:
是图像中灰度级为i的像素数,n为图像的总像素数。
灰度直方图是图像的重要特征之一,它反应了图像灰度分布的情况。
2.直方图均衡化原理
直方图均衡化是通过对原图进行某种变化使得原图像的灰度直方图修正为一种均匀的直方图的一种方法。
灰度直方图均衡化,简单地说,就是把直方图的每一个灰度级进行归一化处理,计算出每一个灰度的累积分布,得到一个映射的灰度映射表,然后根据相应的灰度值来修正原图的每个像素。
四、实验环境
Windows7、MATLAB7.11.0(R2010b)
五、实验内容(包含过程及解析)
1.熟悉Matlab编程环境及语言
1.在Matlab中载入一副灰度图像,统计显示该图像的直方图。
(1)设置工作空间为:
D:
\softid\matlab\workspace,将pollen.tif放进工作空间。
(2)载入并显示灰度图像
代码:
f=imread('
pollen.tif'
);
imshow(f);
运行结果:
(如右)
(3)imhist显示灰度直方图
figure,imhist(f)
(4)bar显示灰度直方图
i=imhist(f)
i1=i(1:
15:
256)
horz=(1:
figure,bar(horz,i1)
(5)stem显示灰度直方图
horz=(1:
figure,stem(horz,i1)
(6)plot显示灰度直方图
figure,plot(i)
(7)将图像f均衡化
j=histeq(f,256)
figure,imshow(j)
(6)得到均衡化后的直方图
Imhist方法:
figure,imhist(j)
bar方法:
j1=j(1:
k=(1:
figure,bar(horz,j1)
stem方法:
figure,stem(horz,j1)
2.图像均衡化(代码在附加:
‘E1.m’中)
cdD:
\softid\matlab\workspace
clear
Pollen='
;
MuBiao=imfinfo(Pollen)
MuBiao=imread(Pollen);
[Height,Width]=size(MuBiao);
ImgHist=zeros(256,1);
%统计并画出图像的灰度直方图
fori=1:
Height
forj=1:
Width
ImgHist(double(MuBiao(i,j))+1)=ImgHist(double(MuBiao(i,j))+1)+1;
end
end
%axis([02550max(ImgHist)])%放在plot函数的后面才有效
%直方图
PrOfMuBiao=ImgHist/sum(ImgHist);
%计算累积分布函数
CSumOfPr=cumsum(PrOfMuBiao);
%灰度映射-变换函数
GrayChg=uint8(CSumOfPr*255);
%
(1)图像均衡化后直方图比较
figure('
Name'
'
图像均衡化后直方图比较'
NumberTitle'
off'
%均衡化后的直方图
subplot(121);
plot(PrOfMuBiao);
title('
直方图'
)
%累计分布函数
%得到均衡化后的图像数据
OutPutMuBiao=MuBiao;
%用原位图数据初始化目标位图数据
%根据灰度映射函数计算源图像每个像素点的灰度值和均衡化后的图像的每个像素点的灰度值的映射关系
OutPutMuBiao(i,j)=GrayChg(uint8(double(MuBiao(i,j))+1));
%得到均衡化后的直方图
ImgHist(double(OutPutMuBiao(i,j))+1)=ImgHist(double(OutPutMuBiao(i,j))+1)+1;
subplot(122)
plot(ImgHist)
均衡化后的直方图'
%
(2)图像直方图均衡化前后对比
图像直方图均衡化前后对比'
subplot(121)
imshow(MuBiao)
(1)源图像'
%绘制均衡化后的图像
imshow(OutPutMuBiao)
(2)均衡化后的图像'
结果:
图像直方图均衡化前后直方图对比
图像直方图均衡化前后对比
六、实验结果、分析和结论
从这次试验中,我从中学到了很多东西,产生了很多感悟。
一开始我对实验的要求理解不够,走了很多弯路,不过那些步骤也不是没有用的,对我熟悉Matlab环境有很大的帮助。
后来在老师的提醒下,我回到宿舍重新进行了试验,可以说收获不大,迫不得已上网查阅了资料,对网上给出的代码进行阅读和修改,最终达到了试验目的。
这些过程花费了我很多的时间,不过我觉得过程是最宝贵的。
通过这次试验,掌握了显示图像、图像信息、直方图和均衡化等一些基本方法。
这些简单的实现,对我今后的学习会有一定的帮助,我同时海认识了简单的直方图统计的算法和用途。
并对图像均衡化的代码进行了阅读和修改,这给我产生了很大的印象。
了解了直方图的概念和均衡化的原理,收获颇多。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图形图像 报告 直方图 处理