MATLAB数字图像处理基本操作及空域滤波
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验一 MATLAB数字图像处理基本操作及空域滤波实验目的
1、了解有关数字图像处理的基本概念,熟悉Matlab软件中关于数字图像处理的基本命令,掌握利用Matlab软件进行数字图像处理的简单方法。
2、了解并掌握直方图统计方法以及分段线性拉伸、直方图均衡等亮度调整算法,通过观察对这些运算建立感性认识。
3、掌握空域滤波中常用的平滑和锐化滤波器。
实验内容
1. 观察各类图像的直方图;操作LUT灰度对照表,进行分段线性拉伸;采用直方图均衡方法对低对比度的图像进行对比度增强。
2.掌握图像模板卷积运算的实质,认识各种模板的处理效果;
3. 掌握邻域平均及中值滤波降噪方法的特点,认识其功能及适用场合;
4. 掌握拉普拉斯算子、Sobel算子、Prewitt算子和Isotropic算子的特点,认识其功能及适用场合。
实验原理
1、数字图像以一定的格式存放在计算机的存储器中(如磁盘),常见的格式有BMP,TIF,PCX等等,要进行数字图像处理,第一项工作就是把图像读到计算机的内存中,以便进行进一步的处理。在Matlab中,函数imread()完成此项工作。下面一小段Matlab语句即可实现将图像“rice.tif”显示在一个图像窗口的左边,将其轮廓图显示在该窗口的右边。
I=imread('rice.tif');
subplot(1,2,1);
imshow(I)
subplot(1,2,2);
imcontour(I);
这里,imread(‘rice.tif’)将磁盘上的图像文件rice.tif读入内存变量I中,subplot(1,2,1)生成一个可以横向放置2幅图像的窗口,并设置下一显示位置在左边,imshow(I)显示图像I,subplot(1,2,2)准备下一图像的显示位置,imcontour(I)生成图像I 的轮廓并显示在窗口的右边。
数字图像一般可分为二值图、灰度图和真彩图等几类。
bw=imread('text.tif');
bw2=imcomplement(bw);
subplot(1,2,1),imshow(bw)
subplot(1,2,2),imshow(bw2)
这里函数imcomplement(bw)完成对二值图像text.tif(bw)的求补运算。(即原来黑的变白的,原来白的变黑的。)该函数也可以用于灰度图像,此时图像的数据被255减。
在Matlab中,函数imresize(X,M,method)可用来改变图像的大小,其中X表示图像,实数M>0是放大倍数,method用来选择计算数据的方法,其可取值及意义分别为:“nearest”—最近邻插值法,“bilinear”—双线性插值法,“bicubic”—双三次插值法。
下面这段程序调整图像的大小:
I=imread('circuit.tif');
J=imresize(I,1.25);
imshow(I)
figure,imshow(J)
也可以指定目标图像的大小,此时imresize()的调用格式为:
Y=imresize(X,[320,480])
其中[320,480]表示将图像的大小调整为320 480。
函数imrotate对图像进行旋转操作,我们看如下的程序段:
I=imread('cameraman.tif');
J=imrotate(I,-15,'bilinear');
K=imrotate(I,-15,'bilinear','crop');
imshow(I)
figure,imshow(J)
figure,imshow(K)
注意右边的图像是由参数“crop”实现的,该参数表示将旋转后的图像取与原图像相同的中心部分输出。
2、直方图的定义
图象的灰度直方图是一个函数,表示数字图象中每一灰度级与该灰度级出现的频数(即具有这一灰度级的象素数目)间的对应关系:
P b N b M
()()
=
M 为一幅图象所包含的象素总数;N (b )为图象中灰度值为b 的象素总数。通常,以灰度
值b 为横坐标,N (b )为纵坐标。直方图是图象中象素灰度值的一阶概率分布密度的一种近似。
3、对比度增强
对比度增强又称为点运算,逐点改变输入图象的每一象素的灰度,而各象素的位置不改变,一般用来拓宽图象的灰度范围。
(1) 灰度变换法(LUT 对照)
典型的对比度拉伸灰度变换关系如图1所示,其对应关系如下:
g f f a f a g a f b f b g b f L a b =≤<-+≤<-+≤<⎧⎨⎪
⎩
⎪αβγ
0()()
式中,f 、g 分别表示输入及输出图象,α、β、γ为折线段的斜率,a 、b 决定低、中、高灰度级的范围。选择不同的α、β、γ、 a 、b 、g a 及g b 数值,可得到各种各样的灰度拉伸效果。灰度变换前后的灰度变化范围是不变的,对一部分灰度区域的扩张(感兴趣区)都是以其它区域的压缩为代价的。
可见,输出和输入图象之间各点的灰度是按照一定的映射关系相联系的,这种映射关系在计算机中则是通过一个查照表(look-up table ,即LUT )实现的。通过LUT 对照改变了图象中不同灰度特性趋于的对比度或反差(contrast ),达到改善视觉效果的目的。
(2) 直方图均衡
直方图均衡(histogram equalization )就是通过点运算使输入图像的灰度分布较为均匀,使图像具有较好的视觉效果。设r, s 分别为原图和新图的灰度,ϕr (r ), ϕs (s )分别为原图及新图的概率密度函数,则均衡变换为原图像的累积分布函数:
图1. 典型的对比度拉伸灰度变换关系