数字图像处理实验指导书ZCL.docx
- 文档编号:4584549
- 上传时间:2022-12-07
- 格式:DOCX
- 页数:17
- 大小:124.73KB
数字图像处理实验指导书ZCL.docx
《数字图像处理实验指导书ZCL.docx》由会员分享,可在线阅读,更多相关《数字图像处理实验指导书ZCL.docx(17页珍藏版)》请在冰豆网上搜索。
数字图像处理实验指导书ZCL
《数字图像处理与识别》
赵乘麟编著
邵阳学院信息工程系
2009年6月
实验一数字图像读、写及基本统计指标
一、实验目的
1.掌握图像读写和运算的基本的方法。
2.学会利用MATLAB编写程序进行图像的基本操作。
3.理解图像信息的含义。
二、主要仪器设备
微机(CPU:
P4以上,128M以上内存)
Windows98以上操作系统、VisualC++、Matlab6.5以上版本等软件。
三、实验原理
1.可以将一幅图像看成是一个二维矩阵。
2.Matlab图像处理工具具有读、写和显示图像功能。
可采用imread函数、imwrite函数、imshow函数,也可以自己编程。
3.计算图像的有关统计参数。
①图像的大小。
数值是宽度(M,单位:
像素)与高度(N,单位:
像素)的乘积。
②图像的灰度平均值。
是指所有灰度值的算术平均值,反应了一幅图像的平均亮度
。
③协方差矩阵。
设计
和
是大小为MхN的两幅图像,则两幅图像的协方差矩阵
为:
协方差矩阵
是两图像之间的相关程度的一种量度。
协方差矩阵为零时表明两图像之间相互独立,反之表示两图像之间相互依赖。
越大,相关程序越高。
若
,则单幅图像的协方差即为该图像的方差
。
④图像的灰度标准差。
由于方差按数据的平方来计算,与灰度值相差太大,难以直观衡量,所以对方差开方得到标准差SD,标准差是评价离散度的较好指标。
⑤图像的相关系数。
协方差可以作为两幅图像相关性的一种量度。
但它受两图像像素数值的影响。
因些,常将其归一化成相关系数。
两幅图像
和
的相关系数
是描述图像相关程度的统计量,反映了两幅图像相互的线性联系密切程度。
相关系数在0~1范围内变动,其值越接近1,两个图像的线性相关越密切;其值越接近0,相关越不密切。
四、实验内容
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);
3.将rice.tif和cameraman.tif两副图像改变大小(imresize函数)、旋转(imrotate函数)等几何操作,将不同操作后的图像用函数分别写入到各自的图像文件中。
显示几何操作后的图像,读取图像文件的信息,并比较与几何操作前的有什么不同。
六、实验报告要求
1.说明读、写和显示图像文件、计算图像的有关统计参数的原理或方法。
2.显示几何变换前、后的图像,记录几何变换前、后的图像的统计数据。
3.写出上述图像处理的程序。
4.总结心得与体会。
七、思考题
1.位图图像有哪些基本的信息?
2.比较不同图像的统计特征的差别,并分析原因。
实验二数字图像的去噪
一、实验目的
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.拉普拉斯算子如下:
拉普拉斯算子首先将自身与周围的8个像素相减,表示自身与周围像素的差异,再将这个差异加上自身作为新像素的灰度。
四、实验内容
(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.比较均值滤波和中值滤波在不同窗口大小的情况下对不同的噪声的去噪效果。
3.常用的锐化算子有哪些?
比较其锐化效果。
4.比较同一去噪方法、针对不同噪声处理的效果?
实验三图像的边缘检测
一、实验目的
1.掌握图像边缘检测方法;
2.理解边缘检测在图像分割中应用
3.学会利用MATLAB程序进行边缘检测。
二、主要仪器设备
微机(CPU:
P4以上,128M以上内存)
Windows98以上操作系统、VisualC++、matlab6.5以上版本等软件。
三、实验原理
边缘即图像中灰度发生急剧变化的区域边界。
边缘检测的实质是采用某种算法来提取图像中对象与背景间的交界线。
图像灰度的变化情况可以用图像灰度分布的梯度来反应,因此可以用局部图像微分技术来获得边缘检测算子。
经典的边缘检测方法是对原始图像中像素的某小邻域来构造边缘检测算子。
常采用差分、梯度、拉普拉斯算子及各种高通滤波处理方法对图像边缘进行检测。
检测的方法有:
梯度算子、拉普拉斯算子、方向算子、Canny算子等。
Sobel算子(Sobeloperator)主要用作边缘检测。
在技术上,它是一离散性差分算子,用来运算图像亮度函数的梯度之近似值。
在图像的任何一点使用此算子,将会产生对应的梯度矢量或是其法矢量
该算子包含两组3x3的矩阵,分别为横向及纵向,将之与图像作平面卷积,即可分别得出横向及纵向的亮度差分近似值。
如果以A代表原始图像,Gx及Gy分别代表经横向及纵向边缘检测的图像,其公式如下:
和
图像的每一个像素的横向及纵向梯度近似值可用以下的公式结合,来计算梯度的大小。
然后可用以下公式计算梯度方向。
如果以上的角度Θ等于零,即代表图像该处拥有纵向边缘,左方较右方暗。
Prewitt 算子采用以下算子分别计算一阶 x 方向和 y 方向的图像差分。
在一个较大区域中,用两点的偏导数值来求梯度幅度值,受噪声干扰很大。
若对两个点的各自一定领域内的灰度值求和,并根据两个灰度值和的差来计算x,y的偏导数,则会在很大程度上降低噪声干扰。
其系数加权模板如下:
其运算:
。
如果
大于某一阈值,则认为(x,y)点为边缘点。
四、实验内容
1.分别用sobel、Laplacian-Gaussian等方法对一幅灰度图像进行边缘提取。
2.给出并分析对比结果。
3.利用双峰法对一幅灰度图像进行灰度分割处理。
4.运用conv2或者fspecial、filter2函数实现各种的算子提取边沿。
比较采用各种常用的算子的边沿提取的效果。
五、实验步骤指导
1.读取某一图像数据,显示图像。
2.分别用sobel、Laplace等方法对其进行边缘提取。
3.对提取的结果进行比较。
4.利用双峰法对一幅灰度图像进行灰度分割处理
5.运用conv2或者fspecial、filter2函数实现各种的算子提取边沿。
比较采用各种常用的算子的边沿提取的效果。
六、实验报告要求
1.叙述图像边缘检测的原理。
2.分别论述sobel、Laplace算子进行边缘检测的原理和方法。
并比较他们的特点、指出他们的应用范围。
3.比较几种方法的处理结果,分析原因。
4.写出上述图像处理的程序。
5.总结心得与体会。
七、思考题
1.不同的边缘检测算子有何区别?
2.试评价Roberts算子、Prewitt算子、Sobel算子对于噪声条件下边界检测的性能?
实验四灰度直方图及直方图均衡
一、实验目的
1.掌握灰度直方图的概念及其计算方法;
2.掌握直方图均衡化和直方图规定化的计算过程;
3.学会利用直方图均衡处理图像。
二、主要仪器设备
微机(CPU:
P4以上,128M以上内存)
Windows98以上操作系统、VisualC++、matlab6.5以上版本等软件。
三、实验原理
直方图是多种空间域处理技术的基础。
直方图操作能有效地用于图像增强。
除了提供有用的图像统计资料外,直方图固有的信息在其他图像处理应用中也是非常有用的,如图像压缩与分割。
直方图在软件中易于计算,也适用于商用硬件设备,因此,它们成为实时图像处理的一个流行工具。
直方图是图像的最基本的统计特征,它反映的是图像的灰度值的分布情况。
直方图均衡化的目的是使图像在整个灰度值动态变化范围内的分布均匀化,改善图像的亮度分布状态,增强图像的视觉效果。
灰度直方图是图像预处理中涉及最广泛的基本概念之一。
图像的直方图事实上就是图像的亮度分布的概率密度函数,是一幅图像的所有象素集合的最基本的统计规律。
直方图反映了图像的明暗分布规律,可以通过图像变换进行直方图调整,获得较好的视觉效果。
直方图均衡化的基本思想是把原始图的直方图变换为均匀分布的形式,这样就增加了象素灰度值的动态范围从而可达到增强图像整体对比度的效果。
用r和s分别表示归一化了的原图像灰度和经直方图变换后的图像灰度。
即当r=s=0时,表示黑色;r=s=1时,表示白色;即r、s∈[0,1],这个范围表示像素灰度在黑白之间变化。
在[0,1]区间内的任一个r,经变换T(r)可产生一个s,且s=T(r)。
T(r)为变换函数,它应当满足下列条件:
①在0≤r≤1内为单调递增函数;
②在0≤r≤1,有0≤T(r)≤1。
条件①保证灰度级人黑到白的次序不变;条件②确保映射后的像素灰度在允许的范围内。
反变换关系为:
r=T-1(s)
由概率论可知,如果已知随机变量r的概率密度为
,而随机变量s是r的函数,则s的概率密度
可以由
求出。
假定随机变量s的分布函数用
表示,根据分布函数定义:
(4.1)
根据概率密度函数是分布函数的导数的关系,(4.1)式两边对s求导可得:
(4.2)
从式(4.2)可以看出,通过变换函数T(r)可以控制图像灰度级的概率密度函数,从而改变灰度层次,这就是直方图均衡的基础。
从人眼视觉特性来考虑,一幅图像的灰度直方图如果是均匀分布的,即
(归一化后k=1)时,感觉上该图像比较协调。
由于归一化假设:
由(4.2)式得:
。
两边积分得:
(4.3)
式(4.3)就是所求得的变换函数。
它表明当变换函数T(r)是原图像直方图累积分布函数时,能达到直方图均衡的目的。
对于灰度级离散的数字图像,用频率来代替概率,若灰度级数为L,则变换函数
的离散形式可表示为:
式中,
,可见,均衡后各像素的灰度值sk可直接由原图像的直方图算出。
四、实验内容
1.图像灰度直方图的绘制。
2.利用灰度直方图增强图像的对比度
五、实验步骤
1.打开计算机,启动MATLAB程序;程序组中“work”文件夹中应有待处理的图像文件;
2.调入待处理的数字图像,并进行直方图均衡处理;
3.显示原图像及直方图和经过增强处理过的图像及其直方图。
4.记录和整理实验报告
六、实验报告要求
1.叙述直方图均衡的原理
2.简述实验过程;
3.提交实验的原始图像和结果图像,并进行有关分析比较。
4.总结心得与体会。
七、思考题
1.图像增强的目的是什么,有那些具体的方法?
2.直方图是什么概念?
它反映了图像的什么信息?
实验五图像几何变换
一、实验目的
1.熟悉CCS集成开发环境的操作和基本功能;
2.熟悉视频显示程序的运行过程、控制过程,传输途径;
3.掌握图像的平移、垂直(水平)镜像变换、缩放和旋转的原理及应用;
二、主要仪器设备
微机(CPU:
P4以上,128M以上内存)
SEED-DTK_CPM642实验箱
MATLAB6.5或以上版本
三、实验原理
1.初始坐标为(
)的点经过平移(
,
),坐标变为(
,
),两点之间的关系为:
,以矩阵形式表示为:
2.图像的镜像变换是以图象垂直中轴线或水平中轴线交换图像的变换,分为垂直镜像变换和水平镜像变换,两者的矩阵形式分别为:
3.图像缩小和放大变换矩阵相同:
当
时,图像缩小;
时,图像放大。
4.图像旋转定义为以图像中某一点为原点以逆时针或顺时针方向旋转一定角度。
其变换矩阵为:
该变换矩阵是绕坐标轴原点进行的,如果是绕一个指定点(
)旋转,则现要将坐标系平移到该点,进行旋转,然后再平移回到新的坐标原点。
四、实验内容
1.在SEED-DTK_CPM642实验箱上分别进行平移、镜像变换、缩放和旋转等几何变换实验。
2.运用MATLAB进行相关实验,并与上述实验进行比较。
五、实验步骤
1.实验准备
(1)连接设备
(2)开启设备:
打开计算机电源、实验箱电源和显示器电源
(3)设置CCS为Emulator方式
(4)双击usb20emurst.exe,如果出现提示“SEEDUSB2.0SDX510CARDRESET,HARDWAREVERSION1”,证明仿真器与目标系统连接正常,否则检查电源和驱动。
2.打开工程目录,浏览相关源程序并理解含义。
3.编译、链接、下载程序并运行,观察显示。
4.启动MATLAB程序,对图像文件分别进行平移、垂直镜像变换、水平镜像变换、缩放和旋转操作,与实验箱运行结果进行比对;
5.记录和整理实验报告
六、实验报告要求
1.叙述实验的原理与实验过程;
2.写出上述图像变换的程序。
3.提交实验的原始图像和结果图像
4.总结心得与体会。
七、思考题
1.改变水平和垂直的偏移量,观察显示?
2.改变缩放比例,看看效果如何?
3.改变旋转角度,显示效果会怎么样?
实验六图像压缩编码
一、实验目的
1.理解图像压缩编码的目的和原则;
2.掌握几种常用的图像压缩编码算法;
3.学会编写程序对图像进行压缩。
二、主要仪器设备
微机(CPU:
P4以上,128M以上内存)
Windows98以上操作系统、VisualC++、matlab6.5以上版本、Photoshop等软件。
三、实验原理
图像压缩主要目的是为了节省存储空间,增加传输速度。
图像压缩的理想标准是信息丢失最少,压缩比例最大。
不损失图像质量的压缩称为无损压缩,无损压缩不可能达到很高的压缩比;损失图像质量的压缩称为有损压缩,高的压缩比是以牺牲图像质量为代价的。
压缩的实现方法是对图像重新进行编码,希望用更少的数据表示图像。
编码压缩方法有许多种,从压缩编码算法原理上可以分为以下3类:
(1)无损压缩编码种类
哈夫曼(Huffman)编码,算术编码,行程(RLE)编码,Lempelzev编码。
(2)有损压缩编码种类
预测编码,DPCM,运动补偿;
频率域方法:
正交变换编码(如DCT),子带编码;
空间域方法:
统计分块编码;
模型方法:
分形编码,模型基编码;
基于重要性:
滤波,子采样,比特分配,矢量量化;
(3)混合编码。
有JBIG,H.26x,JPEG,MPEG等技术标准。
1.Huffman编码的原理
Huffman编码是一种可变长编码方式,是由美国数学家DavidHuffman创立的,是二叉树的一种特殊转化形式。
编码的原理是:
将使用次数多的代码转换成长度较短的代码,而使用次数少的可以使用较长的编码,并且保持编码的唯一可解性。
Huffman算法的最根本的原则是:
累计的(字符的统计数字*字符的编码长度)为最小,也就是权值(字符的统计数字*字符的编码长度)的和最小。
Huffman树是二叉树的一种特殊转化形式。
例如:
有以下数据:
ABFACGCAHGBBAACECDFGFAAEABBB。
先进行统计得结果:
A(8)B(6)C(4)D
(1)E
(2)F(3)G(3)H
(1),括号里面的是统计次数。
生成Huffman树:
每次取最小的那两个节点(node)合并成一个节点(node),并且将累计数值相加作为新的接点的累计数值,最顶层的是根节点(root)注:
列表中最小节点是指包括合并了的节点在内的所有节点,已经被合并的节点不在列表中编码和解码
编码:
将ABCDEFGH用Huffman树产生的编码对应着写到文件中,并且保留原始的Huffman树,主要是编码段的信息。
一般要编码256个元素的话需要511个单位来储存Huffman树,每个Huffman树都必须有以下的结构:
code,char,left,right,probability(出现次数),通常情况是利用一个数组结构。
因为在解码的时候只需要用到code,所以只需要记录每个元素的编码就可以了。
解码:
利用文件中保存的Huffman编码,一一对应,解读编码,把可变长编码转换为定长编码。
由于Huffman编码需要扫描两次,第一次是统计数字,第二次是编码写文件,大大影响了速度,因此有人发明了enhancedHuffmanaglorithm。
这种算法只扫描一遍文件,动态产生Huffman树,即每读n个字节就重新编码一次Huffman树,以达到提高速度的目的。
2.离散余弦变换(DCT)图像压缩原理
离散余弦变换DCT在图像压缩中具有广泛的应用,它是JPEG、MPEG等数据压缩标准的重要数学基础。
JPEG有几种模式,其中最常用的是基于DCT变换的顺序型模式,又称为基本系统(Baseline)。
用DCT压缩图像的过程为:
(1)首先将输入图像分解为8×8或16×16的块,然后对每个子块进行二维DCT变换。
(2)将变换后得到的量化的DCT系数进行编码和传送,形成压缩后的图像格式。
用DCT解压的过程为:
(1)对每个8×8或16×16块进行二维DCT反变换。
(2)将反变换的矩阵的块合成一个单一的图像。
余弦变换具有把高度相关数据能量集中的趋势,DCT变换后矩阵的能量集中在矩阵的左上角,右下的大多数的DCT系数值非常接近于0。
对于通常的图像来说,舍弃这些接近于0的DCT的系数值,并不会对重构图像的画面质量带来显著的下降。
所以,利用DCT变换进行图像压缩可以节约大量的存储空间。
压缩应该在最合理地近似原图像的情况下使用最少的系数。
使用系数的多少也决定了压缩比的大小。
在压缩过程的第2步中,可以合理地舍弃一些系数,从而得到压缩的目的。
在压缩过程的第2步,还可以采用RLE和Huffman编码来进一步压缩。
3.行程编码(RLE)原理:
例如如下这幅二值图像,
如果采用行程编码可以按如下格式保存
其中10和8表示图像的宽和高。
在这个小例子中行程编码并没有起到压缩图像的作用。
这是由于这个图的尺寸过小,当图像尺寸较大时行程编码还是不错的无损压缩方法。
对于灰度图像和二值图像,用行程编码—般都有很高的压缩率。
行程编码方法实现起来很容易,对于具有长重复值的串的压缩编码很有效,例如:
对于有大面积的阴影或颜色相同的图像,使用这种方法压缩效果很好。
很多位图文件格式都采用行程编码,如TIFF,PCX,GEM,BMP等。
四、实验内容
1.图像的压缩与解压
2.对同一图像,不同压缩方式下的图像数据量的比较
五、实验步骤
1.打开计算机,启动MATLAB程序;
2.调入获取的数字图像,并进行数据的编码压缩处理;然后进行解压,比较原图像与解压后的图像差别。
3.将原图像在Photoshop软件中打开,分别以不同的位图文件格式进行“另保存”,比较它们的数据量。
4.记录和整理实验报告
六、实验报告要求
1.叙述实验的原理与实验过程;
2.写出上述图像编码与解码的程序。
3.提交实验的原始图像和结果图像
4.总结心得与体会。
七、思考题
1.图像中哪些信息是主要的,哪些信息是次要的?
2.简述Huffman编码、离散余弦变换(DCT)和行程编码(RLE)的原理。
实验七图像灰度变换处理
一、实验目的
1.掌握图像颜色修改处理的原理与方法;
2.学会对给定图像进行目标提取,背景分离,进行二值化的方法;
3.学会彩色图像的灰度化处理编方法。
二、主要仪器设备
微机(CPU:
P4以上,128M以上内存)
Windows98以上操作系统、VisualC++、matlab6.5以上版本、Photoshop等软件。
三、实验原理
这一部分同学们根据内容自己写
四、实验内容
1.实现图像的灰度变换处理。
要求:
显示一幅位图,进行灰度变换。
(1)在左视图中打开一幅24bmp位图。
(2)制作一个【图像的灰度变换】菜单,将消息映射到右视图中,在右视图
中显示位图,完成暗的部分变亮,亮的部分变暗。
2.将给定图像中的目标物体提取,与背景分离,进行二值化。
要求:
在上面要求的基础上。
将图像中的齿轮目标物体提取,与背景分离,进行二值化。
(1)在左视图中打开一幅bmp位图,包括256色或真彩色位图
(2)制作一个【目标物体提取】菜单,将消息映射到右视图中,在右视图
中,完成图像中的齿轮目标物体提取,与背景分离,设定阈值,进行二值化处理。
3.实现彩色图像的灰度化处理。
要求:
显示一幅24位图,进行灰度变换。
(1)在左视图中打开一幅24bmp位图。
(2)制作一个【图像的灰度变换】菜单,将消息映射到右视图中,在右视图
中显示位图,完成彩色图像的灰度变换功
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字图像 处理 实验 指导书 ZCL