




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实验卡和实验报告 信息科学与工程学院课程名称脑与认知科学概论实验课时4实验项目名称和编号CS0502501同组者 姓 名实验目的1. 掌握利用Matlab图像工具箱显示直方图的方法 2. 掌握运用点操作进行图像处理的基本原理。 3. 进一步理解利用点操作这一方法进行图像处理的特点。 4. 掌握利用Matlab图像工具箱进行直方图均衡化的基本方法。实验环境硬件:联想Y50计算机 软件: WINDOWS7操作系统 应用软件:MATLAB2014A实验内容和原理(1) 关于Matlab图像工具箱的使用:matlab是基于向量的程序语言,数字图像实际上是一组有序离散的数据,使用matlab可以对这些离
2、散数据形成的矩阵进行一次性处理。图像处理工具箱是由一系列支持图像处理操作的函数组成,可以进行多种图像分析、处理操作,主要通过imshow调用。在以下四个问题中我们具体来看图像工具箱的使用。(2) 利用Matlab图像工具箱对图像进行点操作,要求完成下列3个题目中的至少2个。考虑图像1:灰度范围偏小,且灰度偏低,改正之。本题考虑两个思路,(1)考虑做均衡化操作,将图形灰度从某个集中区间调整到平均区间上。(2)考虑对图像作点操作,通过改变灰度值的权(乘以大于1的数),实现增强灰度的要求。考虑图像2:暗处细节分辨不清,使其能看清楚。本题考虑对图像作点操作,对灰度值低于一定值的点作调整,将其灰度值乘以
3、某一权值(大于1),再根据结果做微调即可。考虑图像3:亮处细节分辨不清,使其能看清楚。类似于题二的做法,对灰度值高于一定值的点做调整,将其灰度值乘以某一权值(小于1),再根据结果做调整即可。(3) 给出处理前后图像的直方图。该要求很容易满足 ,matlab中操作为imhist函数(4) 利用MatLab图像处理工具箱中函数对以上图像进行直方图均衡化操作,观察结果。如果一副图像的像素占有很多的灰度级而且分布均匀,那么这样的图像往往有高对比度和多变的灰度色调。直方图均衡化就是一种能仅靠输入图像直方图信息自动达到这种效果的变换函数。它的基本思想是对图像中像素个数多的灰度级进行展宽,而对图像中像素个数
4、少的灰度进行压缩,从而扩展像原取值的动态范围,提高了对比度和灰度色调的变化,使图像更加清晰。在Matlab中,直方图均衡化的实现由工具箱中的函数histeq实现,该函数的语法为g = histeq(f, nlev)思考题:1点操作能完成哪些图像增强功能?点操作可以通过数值上的操作,完成对灰度值的调整,包括增强或减弱图像的亮度、对比度,以及对图像作均衡化处理。2 直方图均衡化后直方图为何并不平坦?为何灰度级会减少?由于离散图像的直方图也是离散的,其灰度累积分布函数是一个不减的阶梯函数。如果映射后的图像仍然能取到所有灰度级,则不发生任何变化。如果映射的灰度级小于256,变换后的直方图会有某些灰度级
5、空缺。即调整后灰度级的概率基本不能取得相同的值,故产生的直方图不完全平坦。前述变换生成一幅图像,该图像的灰度级较为均衡化,且覆盖了整个范围0, 1。灰度级均衡化处理的最终结果是一幅扩展了动态范围的图像,它具有较高的对比度。注意,该变换只不过是一个累积分布函数(CDF)基本思想是把原始图的直方图变换为均与分布的形式,这样就增加了象素灰度值的动态范围从而达到增强图象整体对比度的效果。实验步骤方 法关键代码考虑图像1:灰度范围偏小,且灰度偏低,改正之。本题考虑两个思路,(1)考虑做均衡化操作,将图形灰度从某个集中区间调整到平均区间上。(2)考虑对图像作点操作,通过改变灰度值的权(乘以大于1的数),实
6、现增强灰度的要求。思路一 均衡化操作 代码如下:clear all;close all;I=imread('1.png'); A=rgb2gray(I);%转化为灰度图subplot(221);%画两行两列第一个图imshow(A);%显示图像subplot(222);%画两行两列第二个图imhist(A);%显示直方图subplot(223);%画两行两列第三个图B=histeq(A);%均衡化处理imshow(B);subplot(224);imhist(B);结果如下:思路二 点操作 代码如下:clear all;close all;I=imread('1.png
7、'); A=rgb2gray(I);%转化为灰度图subplot(221);%画两行两列第一个图imshow(A);%显示图像subplot(222);%画两行两列第二个图imhist(A);%显示直方图l,h=size(A);%读图像大小for m=1:l%m从1到l循环 for n=1:h B(m,n)=A(m,n)*1.3+20;%A图的所有灰度值乘以1.3加20之后的图 endendsubplot(223);%画两行两列第三个图imshow(B);%显示点操作后B的图像subplot(224);%画两行两列第四个图imhist(B);%显示操作后的直方图由以上二图可以看出,均衡
8、化操作和点操作都很好的完成了要求。考虑图像2:暗处细节分辨不清,使其能看清楚。本题考虑对图像作点操作,对灰度值低于一定值的点作调整,将其灰度值乘以某一权值(大于1),再根据结果做微调即可。思路一 首先我们还是考虑类似题一的方法做均衡化操作,则结果不尽人意,代码略去不表。结果如下:可以看出使用这种方法的一个缺点是它对处理的数据不加选择,它可能会增加背景杂讯的对比度并且降低有用信号的对比度。所以我们不考虑均衡化操作。思路二 考虑点操作 代码如下:clc;clear all;B1=imread('2.png');B2=rgb2gray(B1);%转化为灰度图C,K=size(B2);
9、%读取图像大小for i=1:Cfor j=1:K if B2(i,j)<50%当B点灰度值小于30时 A(i,j)=1.5*B2(i,j);%B所有灰度值乘以1.5 else A(i,j)=B2(i,j);%不满足则不做操作 endendendsubplot(221)%画两行两列第一个图 imshow(B1);subplot(223)%画两行两列第三个图 imshow(A);subplot(222)%画两行两列第二个图 imhist(B2);subplot(224)%画两行两列第四个图 imhist(A);结果如下:可以看出,点操作很好的完成了题目要求,暗处图形得以分辨。考虑图像3:亮
10、处细节分辨不清,使其能看清楚。类似于题二的做法,对灰度值高于一定值的点做调整,将其灰度值乘以某一权值(小于1),再根据结果做调整即可。类似以上两题,我们还是先做均衡化处理,代码略去不表,只看结果如下:可以看出结果也不是那么令人满意,所以我们不考虑均衡化操作。下面考虑点操作。clc;clear all;B1=imread('3.png');B2=rgb2gray(B1);C,K=size(B2);for i=1:Cfor j=1:K if B2(i,j)>200%当B点像素值大于200时 A(i,j)=0.95*B2(i,j);%B所有灰度值乘以0.95 else A(i,
11、j)=B2(i,j); endendendsubplot(221)%画两行两列第一个图 imshow(B1);subplot(223)%画两行两列第三个图 imshow(A);subplot(222)%画两行两列第二个图 imhist(B2);subplot(224)%画两行两列第四个图 imhist(A);图形如下:过亮的地方得以分辨,点操作较好地完成了要求。测试记录分 析结 论考虑图1,原图直方图的灰度范围较小,作均衡化处理后灰度范围增大。同时,点操作也可以完成对灰度范围的扩大。两种处理方式处理先后图片对比,较暗的原图片明显变亮,显得更清晰。两种方式都较好地完成了要求。考虑图2,局部较暗处分辨不清,考虑对图像作点操作,对灰度值低于一定值的点作调整,将其灰度值乘以某一权值(大于1),以显示图片较暗处的细节。图片处理前后对比,较暗处细节较为清晰。而作均衡化的结果不那么令人满意。只有点操作较好地完成了要求。考虑图3,局部较亮处分辨不清,类似于题二的做法,对灰度值高于一定值的点做调整,将其灰度值乘以某一权值(小于1),以显示图片较亮处的细节。图片处理前后对比,较亮处细节较为清晰。而作均衡化的结果不那么令人满意。只有点操作较好地完成了要求。小 结实验结论:在编程上,均衡化操作较简单,但是只能处理特定情况的图形,而且很容易受到干扰。相
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论