您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 数字图像处理实验指导书
《数字图像处理》实验指导书黄剑航编莆田学院电子信息工程学系2011年8月前言数字图像处理是研究关于数字图像的基本理论、方法,及其在电子、信息领域中应用的学科,是电子信息类本科专业的专业课。本实验课程围绕数字图像处理这一核心,使学生掌握图像处理的基本理论及其实现方法,提高学生的编程、应用和创新能力,拓宽学生的知识面。要求学生系统掌握数字图像处理的基本概念、原理和实现方法,学习图像分析的基本理论、典型方法和实用技术,具备数字图像处理应用编程的初步能力,为在计算机视觉、模式识别等领域从事研究与开发打下扎实的基础。通过本课程实验,学生应掌握MATLAB以及数字图像处理的相关算法。实验条件:硬件PC机,PII以上CPU,256M以上内存;软件MATLAB6.5以上版本;提供实验用到的图像。目录实验一数字图像的基本操作............................................................1实验二数字图像插值........................................................................3实验三数字图像变换........................................................................6实验四数字图像增强........................................................................9实验五数字图像彩色处理..............................................................12实验六数字图像分割(综合性实验)..............................................141实验一数字图像的基本操作一、实验目的熟悉MATLAB中数字图像的不同数据类型,不同图像数据类型之间的转换,掌握数字图像的读取、显示、保存,实现图像翻转,剪裁等一些基本操作,掌握二维矩阵的操作。熟悉相关的MATLAB函数和help帮助的使用。二、实验原理MATLAB中常用的数字图像数据类型有:uint8,无符号8比特整数,范围为[0,255](每像素一个字节);uint16,无符号16比特整数,范围为[0,65535](每像素两个字节);double,双精度浮点数,范围为30830810~10(每像素8个字节);logical,逻辑型,值为0或者1(每像素一个比特)。MATLAB中所有的计算都可以用double类进行,所以它也是图像处理应用中最常使用的数据类。uint8数据类也是一种频繁使用的数据类,尤其是在从存储设备中读取数据时,因为8比特图像是实际中最常用的图像。logical类则主要用在二值图像中,logical类的矩阵中每个元素取值只能是0和1。图像数据类型之间转换,一种方法是:B=data_class(A),其中data_class代表上述图像数据类型的任一项。例如,A是一个uint8类数据数组,则B=double(A)产生了一个双精度数组B;假如C是一个取值范围为[0,255]的double类数组,则命令D=uint8(C)可将其转换为一个unit8数组。另外一种类型转换的方法是使用类型转换函数,如im2uint8,im2double,mat2gray,im2bw。这些函数同时具有数据大小缩放功能。使用的时候注意输入输出数据类型和范围。具体查看帮助内容。图像数据在MATLAB中按照一定的数据类型,以矩阵的方式存储、读取和显示。因此许多有关数字图像的处理就和矩阵的操作相关。常用的一些命令有:图像读取,imread;图像保存,imwrite;图像显示,imshow。具体使用方法同样可2以查看帮助内容。三、实验内容及步骤1、运行如下程序,观察结果,分析学习程序每一行。clearclosealla=zeros(256);fori=1:256a(:,i)=i-1;enda=uint8(a);imshow(a);参照上面程序自己编写一个程序,要求显示一幅图像(256×256),像素值从上往下递增。2、读取MATLAB自带的cameraman.tif图像,将图像上下翻转显示,并将结果图片保存为另外一幅图像。3、利用im2double函数将unit8类型图像转换为double类型图像,并在MATLAB工作区窗口观察变量类型、数值。利用im2bw函数将unit8或者double类型图像转换为二进制(logical)类型图像,用imshow显示结果图片,并在MATLAB工作区窗口观察变量类型、数值。自己举例实验mat2gray用法。4、剪裁出cameraman.tif图像右下角的128×128大小的图片,并显示、保存。5、利用max,find函数寻找cameraman.tif图像中像素最大值点的位置和大小。同理也可以寻找出最小点的位置。6、求出cameraman.tif图像的像素平均值。四、实验报告要求1、具体格式参照“电子信息工程系实验报告”格式。2、选择以上实验内容中自己体会最深的3个内容写入实验报告。3、注意实验报告要求分析组织有条理,截图美观,结论正确。3实验二数字图像插值一、实验目的学习掌握数字图像放大的插值方法,编程进一步熟悉图像的矩阵操作。二、实验原理1、邻近点插值法在原来图像的每行每列后面加上左边和上面的一行像素值。实际上这样的处理方式将原来的一个像素点,变成灰度值大小相同的4个像素点。从而获得了数字图像在空间尺寸上的放大作用。2、双线性插值法图1双线性插值法原理图以图像放大为例说明双线性插值法。先对竖直方向插值,插值点取在竖直方向相邻像素的中点,这是双线性插值的特殊点,该点插值为相邻像素值的均值。竖直方向完成插值之后再进行水平方向插值。即可完成图像的放大作用。4三、实验内容1、对一个256×256的灰度图像进行隔行隔列抽取,构成大小为128×128,64×64大小的新图像。2、利用邻近点插值法对数字图像进行插值放大。3、利用双线性插值法对数字图像进行插值放大,注意插值放大后的图像大小。4、附加题:三次立方插值该方法利用三次多项式()Sx来逼近理论上的最佳插值函数sin()/xx,其数学表达式为:23231201()4851202xxxSxxxxxx上式中的是周围象素沿方向离原点的距离。待求象素的灰度值由其周围16个点的灰度值加权内插得到。可推导出待求象素的灰度值计算式为:(,)(,)fxyfiujvABC其中(1)()(1)(2)TSvSvASvSv(1)()(1)(2)SuSuCSuSu(1,1)(1,)(1,1)(1,2)(,1)(,)(,1)(,2)(1,1)(1,)(1,1)(1,2)(2,1)(2,)(2,1)(2,2)fijfijfijfijfijfijfijfijBfijfijfijfijfijfijfijfij5图2三次立方插值示意图四、实验报告要求1、具体格式参照“电子信息工程系实验报告”格式。2、实验内容中前3项内容写入实验报告。6实验三数字图像变换一、实验目的熟悉傅里叶变换的基本性质,通过程序实现快速傅立叶变换。了解二维频谱的分布特点,掌握傅立叶变换的性质;掌握离散余弦变换及其应用。二、实验原理傅里叶变换是线性系统分析的一个有力工具,它能够定量地分析诸如数字化系统、采样点、电子放大器、卷积滤波器、噪音和显示点等的作用。通过实验培养这项技能,将有助于解决大多数图像处理问题。对任何想在工作中有效应用数字图像处理技术的人来说,把时间用在学习和掌握博里叶变换上是很有必要的。傅立叶(Fourier)变换的定义对于二维信号,二维离散傅立叶变换为:112()001(,)(,)ikNNmnNNikFmnfikeN逆变换:112()001(,)(,)ikNNmnNNmnfikFmneN图像的傅立叶变换与一维信号的傅立叶变换变换一样,有快速算法。实验中用到的主要MATLAB函数包括fft2,abs,fftshift等。和离散傅里叶变换一样,离散余弦变换(DCT)也是信号处理领域很常见的一种变换。由于DCT具有很好的能量压缩性能,而且DCT是实数变换,便于工程实现,DCT变换在数据压缩等方面具有广泛的应用。二维DCT变换对于图像信号具有很强的压缩能力,图像压缩标准JEPG的核心算法就是基于DCT的。二维DCT变换和逆变换的指令是dct2,idct2。利用DCT的能量压缩特性,仅使用一部分DCT系数就可以重建信号,并且失真比较小。二维离散余弦变换的定义由下式表示:71100110011001(0,0)(,)2(21)(0,)(,)cos22(21)(21)(,0)(,)coscos22NNxyNNxyNNxyFfxyNyuFfxyNNxuyFufxyNNN其中(,)fxy是空间域二维向量的元素,(,)Fu是变换系数阵列之元素。二维离散余弦反变换由下式表示:1111111112(21)(,)(0,0)(0,)cos22(21)(,0)cos22(21)(21)(,)coscos22NNuNNuyfxyFFNNNxuFuNNxuyFuNNN三、实验内容1、打开一幅图像(double类型),进行傅立叶变换,显示:(1)频谱图(2)中心点搬移之后的频谱图(3)对中心点搬移之后的频谱进行对数变换之后再显示。使用对数变换减小了显示动态范围,log(1())absF,F为变换后的频谱。2、设计一幅256×256大小的double类型图像,背景像素值为0(黑色),在正中间部分有个10×20大小,像素值为1的白色矩形。显示其频谱。3、若不进行频谱搬移,可以对原图像在变换前乘以(1)xy,再进行fft2变换,得到一样的结果,验证这一过程。4.对一幅uint8数据类型的图像进行DCT变换压缩,观察和分析DCT系数的大小和分布特点(可用对数压缩数值动态范围)。分别设置系数阈值为10,30,50,去除低值系数,重构图像,计算压缩率并对不同系数门限的结果加以分析比较。8四、实验报告要求1、具体格式参照“电子信息工程系实验报告”格式。2、提交实验的原始图像和结果图像,并能对相应结果进行分析说明。9实验四数字图像增强一、实验目的掌握常见的数字图像增加方法,包括亮度、对比度变换,直方图均衡,拉普拉斯锐化增强法。学习直方图的绘制方法。二、实验原理图像增强是指按特定的需要突出一幅图像中的某些信息,同时,消弱或去除某些不需要的信息的处理方法。其主要目的是处理后的图像对某些特定的应用比原来的图像更加有效。图像增强技术主要有亮度对比度变换,直方图修改处理、图像滤波去噪,图像锐化处理等。如下图1所示是imadjust函数对应的输入输出亮度映射关系,可以看出gamma1时候,输入图像低亮度的区域往高亮度值拉伸。gamma1反之,从而达到亮度变换,增强图像的目的。图1亮度变换时对应的输入输出亮度映射关系直方图是图像的最基本的统计特征,它反映的是图像的灰度值的分布情况。直方图操作能有效地用于图像增强。直方图均衡化的目的是使图像在整个灰度值动态变化范围内的分布均匀化,改善图像的亮度分布状态,增强图像的视觉效果。对含有噪声的图像进行滤波处理,也是一种图像增强的常见方法。数字图像的噪声主要来源于图像的获取(数字化过程)和传输过程。在数字图像的获取过程中,图像传感器的工作受到各种因素的影响,例如图像获取中的环境条件和传感元器件本身的质量;在数字图像的传输过程中,主要由于传输信10道的干扰,而引入噪声污染。常见的噪声有高斯噪声和椒盐噪
本文标题:数字图像处理实验指导书
链接地址:https://www.777doc.com/doc-2387952 .html