邵阳学院,数字图像处理实验指导书ZCL

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1实验一数字图像读、写及基本统计指标一、实验目的1.掌握图像读写和运算的基本的方法。2.学会利用MATLAB编写程序进行图像的基本操作。3.理解图像信息的含义。二、主要仪器设备微机(CPU:P4以上,128M以上内存)Windows98以上操作系统、VisualC++、Matlab6.5以上版本等软件。三、实验原理1.可以将一幅图像看成是一个二维矩阵。2.Matlab图像处理工具具有读、写和显示图像功能。可采用imread函数、imwrite函数、imshow函数,也可以自己编程。3.计算图像的有关统计参数。①图像的大小。数值是宽度(M,单位:像素)与高度(N,单位:像素)的乘积。②图像的灰度平均值。是指所有灰度值的算术平均值,反应了一幅图像的平均亮度f。1010),(1MxNyyxfMNf③协方差矩阵。设计),(yxf和),(yxg是大小为MхN的两幅图像,则两幅图像的协方差矩阵fgC为:1010]),(][),([1MxNyfggyxgfyxfMNC协方差矩阵fgC是两图像之间的相关程度的一种量度。协方差矩阵为零时表明两图像之间相互独立,反之表示两图像之间相互依赖。fgC越大,相关程序越高。若gf,则单幅图像的协方差即为该图像的方差ffC。④图像的灰度标准差。由于方差按数据的平方来计算,与灰度值相差太大,2难以直观衡量,所以对方差开方得到标准差SD,标准差是评价离散度的较好指标。ffCSD⑤图像的相关系数。协方差可以作为两幅图像相关性的一种量度。但它受两图像像素数值的影响。因些,常将其归一化成相关系数。两幅图像),(yxf和),(yxg的相关系数fgr是描述图像相关程度的统计量,反映了两幅图像相互的线性联系密切程度。相关系数在0~1范围内变动,其值越接近1,两个图像的线性相关越密切;其值越接近0,相关越不密切。ggfffgfgCCCr四、实验内容1.从最常用的“.BMP”图像格式中读取图像数据,并显示图像;2.利用“读图像文件I/O”的iminfo函数了解图像文件的基本信息。利用“像素和统计处理”函数计算读入图像的二维相关系数(corr2函数)、确定像素颜色值(impoxel函数)、像素的平均值(mean函数)、显示像素的信息(pixval函数)、计算像素的标准偏移(std2函数)等。3.对图像进行改变大小(imresize函数)、旋转(imrotate函数)等几何操作,将不同操作后的图像用函数分别写入到各自的图像文件中。五、实验步骤指导1.读取文件rice.tif和cameraman.tif的图像数据,显示图像。读取图像文件的信息,说明含义。MATLAB函数:imread/imshow/imfinfo举例:A=imread('rice.tif');imshow(A);2.将rice.tif和cameraman.tif两副图像相加、相减,或者减去一个常数,显示并保存处理后的图像。MATLAB函数:imwrite/imadd/imsubtract;举例:J=imread('cameraman.tif');K=imadd(I,J);33.将rice.tif和cameraman.tif两副图像改变大小(imresize函数)、旋转(imrotate函数)等几何操作,将不同操作后的图像用函数分别写入到各自的图像文件中。显示几何操作后的图像,读取图像文件的信息,并比较与几何操作前的有什么不同。六、实验报告要求1.说明读、写和显示图像文件、计算图像的有关统计参数的原理或方法。2.显示几何变换前、后的图像,记录几何变换前、后的图像的统计数据。3.写出上述图像处理的程序。4.总结心得与体会。七、思考题1.位图图像有哪些基本的信息?2.比较不同图像的统计特征的差别,并分析原因。程序代码如下:I1=imread('view.bmp');imshow(I1);%R1=corr2(480,640);%fiure,imshow(R1);R2=mean(I1);figure,imshow(I1)pixval('ON');R3=std2(I1);I2=imresize(I1,0.5,'bilinear');figure,imshow(I2);I3=imrotate(I1,60,'bilinear');figure,imshow(I3)4实验二数字图像的去噪一、实验目的1.掌握图像滤波的基本原理。2、掌握图像锐化的基本原理和方法。3、学会运用不同滤波方法对图像去噪。4、设计程序对图像进行去噪和锐化处理。二、主要仪器设备微机(CPU:P4以上,128M以上内存)Windows98以上操作系统、VisualC++、matlab6.5以上版本等软件。三、实验原理滤波分为非线性滤波和线性滤波。1.均值滤波是一种线性滤波方法,其采用的主要方法为领域平均法。线性滤波的基本原理是用均值代替原图像中的各个像素值,即对待处理的当前像素点(x,y),选择一个模板,该模板由其近邻的若干像素组成,求模板中所有像素的均值,再把该均值赋予当前像素点(x,y),作为处理后图像在该点上的灰度值g(x,y),即个g(x,y)=1/m∑f(x,y)m为该模板中包含当前像素在内的像素总个数。2.中值滤波一种非线性的图像处理方法,中值滤波的原理就是用一个含有奇数点的滑动窗口,将窗口正中那点的值用窗口内各点的中值代替。3.拉普拉斯算子如下:111181111拉普拉斯算子首先将自身与周围的8个像素相减,表示自身与周围像素的差异,再将这个差异加上自身作为新像素的灰度。5四、实验内容(1)给图像加噪声;(2)设计程序用均值滤波器去除图像中的噪声;(3)设计程序用中值滤波器去除图像中的噪声;(4)设计程序用拉普拉斯算子去除图像中的噪声(5)比较几种方法的处理结果五、实验步骤指导1.读取某一图像文件,显示图像。2.运用函数产生随机噪声和椒盐噪声,叠加到图像数据上,显示加噪声后的图像。3.运用conv2函数实现对含噪声的图象进行均值滤波。采用大小为3*3去心的去心邻域。(注意:数据运算时采用double函数转成浮点型,图像显示前必须运用uint8函数将数据变成8位无符号整型,)。比较不同窗口大小的情况下,均值滤波法的去噪效果。4.运用中值滤波法对随机噪声和椒盐噪声进行去噪,改变窗口的大小,分析去噪效果。5.比较均值滤波、中值滤波和拉普拉斯算子对两种噪声的去除情况。6.再运用fspecial和filter2函数实现对含噪声的图象进行均值滤波。六、实验报告要求1.简述图像噪声形成的原因。2.分别论述均值滤波器、中值滤波器的原理和方法。并比较他们的特点、指出他们的应用范围。3.比较两种方法的处理结果,分析原因。4.写出上述图像处理的程序。5.总结心得与体会。七、思考题1.图像的去噪和锐化各有什么作用?2.比较均值滤波和中值滤波在不同窗口大小的情况下对不同的噪声的去噪6效果。3.常用的锐化算子有哪些?比较其锐化效果。4.比较同一去噪方法、针对不同噪声处理的效果?源程序代码:I1=imread('autumn.tif');imshow(I1);%彩色转灰度I2=rgb2gray(I1);figure,imshow(I2);%加入各种各样的噪声效果图I3=imnoise(I2,'salt&pepper');figure,imshow(I3),title('salt&pepper');I4=imnoise(I2,'gaussian');figure,imshow(I4);title('gaussian');%I5=imnoise(I2,'localvar',0.5,1);%figure,imshow(I5);I6=imnoise(I2,'poisson');555figure,imshow(I6);title('poisson');I7=imnoise(I2,'speckle');figure,imshow(I7);title('speckle');%均值滤波H=1/8.*[1,1,1;1,0,1;1,1,1];J1=conv2(I3,H);J2=conv2(I4,H);J3=conv2(I6,H);J4=conv2(I7,H);%卷积后变成了doublearray图像显示需要uint8才能显示A1=uint8(J1);A2=uint8(J2);A3=uint8(J3);A4=uint8(J4);7figure,subplot(2,2,1),imshow(A1),title('salt&pepperaver');subplot(2,2,2),imshow(A2),title('gaussianaver');subplot(2,2,3),imshow(A3),title('poissonaver');subplot(2,2,4),imshow(A4),title('speckleaver');%中值滤波R1=medfilt2(I3);R2=medfilt2(I4);R3=medfilt2(I6);R4=medfilt2(I7);figure,subplot(2,2,1),imshow(R1),title('salt&peppermedf');subplot(2,2,2),imshow(R2),title('gaussianmedf');subplot(2,2,3),imshow(R3),title('poissonmedf');subplot(2,2,4),imshow(R4),title('specklemedf');%采用拉普拉斯算子滤波H1=[-1,-1,-1;-1,8,-1;-1,-1,-1];B1=imfilter(I3,H1);B2=imfilter(I4,H1);B3=imfilter(I6,H1);B4=imfilter(I7,H1);figure,subplot(2,2,1),imshow(B1),title('salt&pepperlapla');subplot(2,2,2),imshow(B2),title('gaussianlapla');subplot(2,2,3),imshow(B3),title('poissonlapla');subplot(2,2,4),imshow(B4),title('specklelapla');8实验三图像的边缘检测一、实验目的1.掌握图像边缘检测方法;2.理解边缘检测在图像分割中应用3.学会利用MATLAB程序进行边缘检测。二、主要仪器设备微机(CPU:P4以上,128M以上内存)Windows98以上操作系统、VisualC++、matlab6.5以上版本等软件。三、实验原理边缘即图像中灰度发生急剧变化的区域边界。边缘检测的实质是采用某种算法来提取图像中对象与背景间的交界线。图像灰度的变化情况可以用图像灰度分布的梯度来反应,因此可以用局部图像微分技术来获得边缘检测算子。经典的边缘检测方法是对原始图像中像素的某小邻域来构造边缘检测算子。常采用差分、梯度、拉普拉斯算子及各种高通滤波处理方法对图像边缘进行检测。检测的方法有:梯度算子、拉普拉斯算子、方向算子、Canny算子等。Sobel算子(Sobeloperator)主要用作边缘检测。在技术上,它是一离散性差分算子,用来运算图像亮度函数的梯度之近似值。在图像的任何一点使用此算子,将会产生对应的梯度矢量或是其法矢量该算子包含两组3x3的矩阵,分别为横向及纵向,将之与图像作平面卷积,即可分别得出横向及纵向的亮度差分近似值。如果以A代表原始图像,Gx及Gy分别代表经横向及纵向边缘检测的图像,其公式如下:AGx101202101和AGy121000121图像的每一个像素的横向及纵向梯度近似值可用以下的公式结合,来计算梯度的大小。22yxGGG9然后可用以下公式计算梯度方向。xyGGarctan如果以上的角度Θ等于零,即代表图像该处拥有纵向边缘,左方较

1 / 28
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功