数字图像处理实验指导书.docx
- 文档编号:11645955
- 上传时间:2023-03-29
- 格式:DOCX
- 页数:16
- 大小:56.42KB
数字图像处理实验指导书.docx
《数字图像处理实验指导书.docx》由会员分享,可在线阅读,更多相关《数字图像处理实验指导书.docx(16页珍藏版)》请在冰豆网上搜索。
数字图像处理实验指导书
《数字图像处理》实验指导书
实验一、数字图像获取
实验二、图像的傅立叶变换
实验三、图像增强
实验四、图像压缩
实验五、图像融合
数字图象处理实验的目的不仅是让学生通过用MATLAB等高级语言编写数字图像处理的一些基本算法程序,巩固和掌握图像处理技术的理论、方法和基本技能,提高实际动手能力,而且通过综合实习,让学生能探讨和应用数字图像处理技术去解决一些实际问题。
为学生进一步学习和应用数字图像技术解决实际问题奠定基础。
实验一、数字图像获取
一、实验目的
1掌握使用扫描仪等数字化设备以及计算机获取数字图像的方法;
2修改图像的存储格式。
二、实验原理
用扫描仪获取图像也是图像的数字化过程的方法之一。
扫描仪按种类可以分为手持扫描仪,台式扫描仪和滚筒式扫描仪(鼓形扫描仪)。
扫描仪的主要性能指标有x、y方向的分辨率、色彩分辨率(色彩位数)、扫描幅面和接口方式等。
各类扫描仪都标明了它的光学分辨率和最大分辨率。
分辨率的单位是dpi,dpi是英文DotPerInch的缩写,意思是每英寸的像素点数。
扫描仪工作时,首先由光源将光线照在欲输入的图稿上,产生表示图像特征的反射光(反射稿)或透射光(透射稿)。
光学系统采集这些光线,将其聚焦在CCD上,由CCD将光信号转换为电信号,然后由电路部分对这些信号进行A/D转换及处理,产生对应的数字信号输送给计算机。
当机械传动机构在控制电路的控制下,带动装有光学系统和CCD的扫描头与图稿进行相对运动,将图稿全部扫描一遍,一幅完整的图像就输入到计算机中去了。
图1.1扫描仪的工作原理
扫描仪扫描图像的步骤是:
首先将欲扫描的原稿正面朝下铺在扫描仪的玻璃板上,原稿可以是文字稿件或者图纸照片;然后启动扫描仪驱动程序后,安装在扫描仪内部的可移动光源开始扫描原稿。
为了均匀照亮稿件,扫描仪光源为长条形,并沿y方向扫过整个原稿;照射到原稿上的光线经反射后穿过一个很窄的缝隙,形成沿x方向的光带,又经过一组反光镜,由光学透镜聚焦并进入分光镜,经过棱镜和红绿蓝三色滤色镜得到的RGB三条彩色光带分别照到各自的CCD上,CCD将RGB光带转变为模拟电子信号,此信号又被A/D变换器转变为数字电子信号。
至此,反映原稿图像的光信号转变为计算机能够接受的二进制数字电子信号,最后通过串行或者并行等接口送至计算机。
扫描仪每扫一行就得到原稿x方向一行的图像信息,随着沿y方向的移动,在计算机内部逐步形成原稿的全图。
在扫描仪的工作过程中,有两个元件起到了关键的作用。
一个是CCD,它将光信号转换成为电信号;另一个是A/D变换器,它将模拟电信号变为数字电信号。
CCD是ChargeCoupleDevice的缩写,称为电荷耦合器件,它是利用微电子技术制成的表面光电器件,可以实现光电转换功能。
CCD在摄像机、数码相机和扫描仪中应用广泛,只不过摄像机中使用的是点阵CCD,即包括x、y两个方向用于摄取平面图像,而扫描仪中使用的是线性CCD,它只有x一个方向,y方向扫描由扫描仪的机械装置来完成。
CCD芯片上有许多光敏单元,它们可以将不同的光线转换成不同的电荷,从而形成对应原稿光图像的电荷图像。
如果我们想增加图像的分辨率,就必须增加CCD上的光敏单元数量。
实际上,CCD的性能决定了扫描仪的x方向的光学分辨率。
A/D变换器是将模拟量(Analog)转变为数字量(Digital)的半导体元件。
从CCD获取的电信号是对应于图像明暗的模拟信号,就是说图像由暗到亮的变化可以用从低到高的不同电平来表示,它们是连续变化的,即所谓模拟量。
A/D变换器的工作是将模拟量数字化,例如将0至1V的线性电压变化表示为0至9的10个等级的方法是:
0至小于0.1V的所有电压都变换为数字0、0.1至小于0.2V的所有电压都变换为数字1……0.9至小于1.0V的所有电压都变换为数字9。
实际上,A/D变换器能够表示的范围远远大于10,通常是2^8=256、2^10=1024或者2^12=4096。
如果扫描仪说明书上标明的灰度等级是10bit,则说明这个扫描仪能够将图像分成1024个灰度等级,如果标明色彩深度为30bit,则说明红、绿、蓝各个通道都有1024个等级。
显然,该等级数越高,表现的彩色越丰富。
三、实验步骤
1扫描仪与计算机和打印机的连接;
2打开计算机,安装扫描仪的驱动程序;
3分别获取自己照片的二值、灰度和彩色因像
4调整彩色图像的色彩。
5将获得的图像的格式转换为“*.gif”的格式,保存或拷贝到MATLAB程序组根目录的“work”文件夹中,以便后面的实验作为“原图像”利用。
6记录和整理实验报告
四、实验仪器
1计算机;
2扫描仪(或数码相机、数字摄象机)及其驱动程序盘;
3图像处理软件(画图,photoshop,Microsoftphotoedit等);
4记录用的笔、纸。
五、实验报告内容
1叙述操作过程
2提交用扫描仪扫描得到的图像。
六、思考题
1扫描仪有哪些重要指标?
2试述扫描仪的工作原理。
3你使用过哪些图像获取设备呢?
实验二、图像的傅立叶变换
一、实验目的
1了解图像变换的意义和手段;
2熟悉傅里叶变换的孩本性质;
3热练掌握FFT酌方法反应用;
4通过实验了解二维频谱的分布特点;
5通过本实验掌握利用MATLAB编程实现数字图像的傅立叶变换。
二、实验原理
1应用傅立叶变换进行图像处理
傅里叶变换是线性系统分析的一个有力工具,它能够定量地分析诸如数字化系统、采样点、电子放大器、卷积滤波器、噪音和显示点等的作用。
通过实验培养这项技能,将有助于解决大多数图像处理问题。
对任何想在工作中有效应用数字图像处理技术的人来说,把时间用在学习和掌握博里叶变换上是很有必要的。
2傅立叶(Fourier)变换的定义
对于二维信号,二维Fourier变换定义为:
二维离散傅立叶变换为:
图像的傅立叶变换与一维信号的傅立叶变换变换一样,有快速算法,具体参见参考书目,有关傅立叶变换的快速算法的程序不难找到。
实际上,现在有实现傅立叶变换的芯片,可以实时实现傅立叶变换。
3利用MATLAB软件实现数字图像傅立叶变换的程序:
I=imread(filename.gif');%读入原图像文件
imshow(I);%显示原图像
fftI=fft2(I);%二维离散傅立叶变换
sfftI=fftshift(fftI);%直流分量移到频谱中心
RR=real(sfftI);%取傅立叶变换的实部
II=imag(sfftI);%取傅立叶变换的虚部
A=sqrt(RR.^2+II.^2);%计算频谱幅值
A=(A-min(min(A)))/(max(max(A))-min(min(A)))*225;
%归一化
figure;%设定窗口
imshow(A);%显示原图像的频谱
三、实验步骤
1打开计算机,安装和启动MATLAB程序;程序组中“work”文件夹中应有待处理的图像文件;
2利用MatLab工具箱中的函数编制FFT频谱显示的函数;
3a)调入、显示“实验一”获得的图像;图像存储格式应为“.gif”;
b)对这三幅图像做FFT并利用自编的函数显示其频谱;
c)讨论不同的图像内容与FFT频谱之间的对应关系。
4记录和整理实验报告。
四、实验仪器
1计算机;
2MATLAB程序;
3移动式存储器(软盘、U盘等)。
4记录用的笔、纸。
五、实验报告内容
1叙述实验过程;
2提交实验的原始图像和结果图像。
六、思考题
1.傅里叶变换有哪些重要的性质?
2.图像的二维频谱在显示和处理时应注意什么?
实验三、图像增强
一、实验目的
1掌握灰度直方图的概念及其计算方法;
2熟练掌握直力图均衡化和直方图规定化的计算过程;
3熟练掌握空域滤波中常用的平滑和锐化滤波器;
4掌握色彩直方图的概念和计算方法
5利用MATLAB程序进行图像增强。
6利用photoshop进行图像增强。
显示图像的灰度直方图,对图像作灰度拉伸、对比度增强、直方图均衡、图像平滑、中值滤波、边缘增强、伪彩色增强、假彩色合成等。
二、实验原理
图像增强是指按特定的需要突出一幅图像中的某些信息,同时,消弱或去除某些不需要的信息的处理方法。
其主要目的是处理后的图像对某些特定的应用比原来的图像更加有效。
图像增强技术主要有直方图修改处理、图像平滑化处理、图像尖锐化处理和彩色处理技术等。
本实验以直方图均衡化增强图像对比度的方法为主要内容,其他方法同学们可以在课后自行联系。
直方图是多种空间城处理技术的基础。
直方图操作能有效地用于图像增强。
除了提供有用的图像统计资料外,直方图固有的信息在其他图像处理应用中也是非常有用的,如图像压缩与分割。
直方图在软件中易于计算,也适用于商用硬件设备,因此,它们成为了实时图像处理的一个流行工具。
直方图是图像的最基本的统计特征,它反映的是图像的灰度值的分布情况。
直方图均衡化的目的是使图像在整个灰度值动态变化范围内的分布均匀化,改善图像的亮度分布状态,增强图像的视觉效果。
灰度直方图是图像预处理中涉及最广泛的基本概念之一。
图像的直方图事实上就是图像的亮度分布的概率密度函数,是一幅图像的所有象素集合的最基本的统计规律。
直方图反映了图像的明暗分布规律,可以通过图像变换进行直方图调整,获得较好的视觉效果。
直方图均衡化是通过灰度变换将一幅图像转换为另一幅具有均衡直方图,即在每个灰度级上都具有相同的象素点数的过程。
下面给出直方图均衡化增强图像对比度的MATLAB程序:
I=imread('filenam.gif');%读入原图像
J=histeq(I);%对原图像进行直方图均衡化处理
Imshow(I);%显示原图像
Title('原图像');%给原图像加标题名
figure;imshow(J);%对原图像进行屏幕控制;显示直方图均衡化后的图像
Title('直方图均衡化后的图像');%给直方图均衡化后的图像加标题名
figure;subplot(1,2,1);%对直方图均衡化后的图像进行屏幕控制;作一幅子图作为并排两幅图的第1幅图
Imhist(I,64);%将原图像直方图显示为64级灰度
Title('原图像直方图');%给原图像直方图加标题名
Subplot(1,2,2);%作第2幅子图
Imhist(J,64);%将均衡化后图像的直方图显示为64级灰度
Title('均衡变换后的直方图');%给均衡化后图像直方图加标题名//
处理后的图像直方图分布更均匀了,图像在每个灰度级上都有像素点。
从处理前后的图像可以看出,许多在原始图像中看不清楚的细节在直方图均衡化处理后所得到的图像中都变得十分清晰。
三、实验步骤
MATLAB做图像增强:
1打开计算机,启动MATLAB程序;程序组中“work”文件夹中应有待处理的图像文件;
2调入“实验一”中获取的数字图像,并进行计算机均衡化处理;
3显示原图像的直方图和经过均衡化处理过的图像直方图。
4记录和整理实验报告
PHOTOSHOP做图像增强
1.使用photoshop显示图像直方图:
1)点击文件→打开,打开一幅图像;
2)点击图像→直方图,显示图像的直方图;
3)对图像做增强处理,例如选择图像→调整→自动对比度对图像进行灰度拉伸,然后再显示直方图,观察图像直方图的变化。
2.灰度拉伸:
线形拉伸:
在“图像→调整→色阶”中,可以通过直接设置原图像灰度值的输入范围和所需的输出范围来简单的完成某一灰度段到另一灰度段的灰度调整映射变换。
②曲线拉伸:
在“图像→调整→曲线”中,在弹出的“曲线”对话框中,直接用鼠标拖动改变灰度输入、输出曲线的形状就可以完成任意线形的灰度变换。
3.对比度增强:
对比度增强可以通过“图像→调整→亮度/对比度”来直接对原图像的亮度或对比度进行调整,观察增强处理前后图像直方图的变化。
4.直方图均衡
直方图均衡可调用“图像→调整→色调均化”菜单项,即可达到直方图均衡的效果。
5.图像平滑
①图像的3×3均匀平滑可以在“滤镜→模糊→模糊”中实现,观察处理前后图像细节和边缘的变化;也可以调用“模糊”对话框中的“高斯模糊”来观察高斯平滑处理的结果,改变半径,观察图像的变化,分析高斯平滑处理的原理。
②通过“滤镜→其它→自定”菜单项调出模板对话框,可以输入自定义的平滑算子或其它增强算子,改变模板的大小和缩放比例,观察处理的效果。
6.中值滤波
①先使用“滤镜→杂色→添加杂色”菜单添加噪声,再使用“滤镜—杂色—中间值”中值滤波操作,设置滤波半径,观察处理结果;
②采用“添加杂色”菜单项中的均匀噪声和高斯噪声给图像添加噪声,分别使用中值滤波和均匀平滑,观察这两种处理的效果,比较它们的异同。
7.边缘增强
①使用“滤镜→锐化→锐化边缘”,观察图像边缘的变化,也可以使用使用“USM锐化”,“进一步锐化”等其它锐化方法。
②使用“滤镜→其它→自定”调出模板对话框,使用教材中讲到的Laplace增强算子和高通滤波算子或自定义的算子,比较它们的处理效果。
8.边缘检测
①使用“滤镜→风格化”的“查找边缘”,“等高线”,“照亮边缘”等可以提取图像的边缘,改变参数,提取图像的最佳边缘。
②使用“滤镜→其它→自定”,输入教材讲述的边缘检测算子,分析处理的效果,比较这些算子的特点。
9.彩色增强技术
①密度分割:
打开一幅灰度(黑白)图像,使用“图像→模式→RGB颜色”将图像更改成真彩色模式,再使用“图像→调整→色调分离”对话框,输入密度分割的灰度级数(1-255),使用“图像→模式→索引颜色”将图像改成索引模式,使用“图像→模式→颜色表”对为每个灰度级定义一种颜色。
空间域变换彩色合成:
将一幅灰度图象采用三种不同变换,得到三幅灰度图象,然后选择“图像→调整→通道混合器”,将三幅图象进行RGB彩色合成,形成一幅伪彩色图像。
假彩色合成:
假彩色图像合成是对一幅自然色彩图像或多光谱图像通过映射函数变换成新的三基色分量,使增强图像呈现出与原图像不同的彩色。
打开一幅真彩色图像,选择“图像→调整→通道混合器”,设置对话框中的参数,观察处理后图像的变化。
四、实验仪器
1计算机;
2MATLAB程序;
3photoshop程序;
3移动式存储器(软盘、U盘等)。
4记录用的笔、纸。
五、实验报告内容
1叙述实验过程;
2提交实验的原始图像和结果图像。
六、思考题
1.直方图是什么概念?
它反映了图像的什么信息?
2.直方图均衡化是什么意思?
它的主要用途是什么?
实验四、图像压缩
一、实验目的
1.理解有损压缩和无损压缩的概念;
2.理解图像压缩的主要原则和目的;
3.了解几种常用的图像压缩编码方式。
4.利用MATLAB程序进行图像压缩。
二、实验原理
1.图像压缩原理
图像压缩主要目的是为了节省存储空间,增加传输速度。
图像压缩的理想标准是信息丢失最少,压缩比例最大。
不损失图像质量的压缩称为无损压缩,无损压缩不可能达到很高的压缩比;损失图像质量的压缩称为有损压缩,高的压缩比是以牺牲图像质量为代价的。
压缩的实现方法是对图像重新进行编码,希望用更少的数据表示图像。
信息的冗余量有许多种,如空间冗余,时间冗余,结构冗余,知识冗余,视觉冗余等,数据压缩实质上是减少这些冗余量。
高效编码的主要方法是尽可能去除图像中的冗余成分,从而以最小的码元包含最大的图像信息。
编码压缩方法有许多种,从不同的角度出发有不同的分类方法,从信息论角度出发可分为两大类。
(1).冗余度压缩方法,也称无损压缩、信息保持编码或嫡编码。
具体说就是解码图像和压缩编码前的图像严格相同,没有失真,从数学上讲是一种可逆运算。
(2)信息量压缩方法,也称有损压缩、失真度编码或烟压缩编码。
也就是说解码图像和原始图像是有差别的,允许有一定的失真。
应用在多媒体中的图像压缩编码方法,从压缩编码算法原理上可以分为以下3类:
(1)无损压缩编码种类
哈夫曼(Huffman)编码,算术编码,行程(RLE)编码,Lempelzev编码。
(2)有损压缩编码种类
预测编码,DPCM,运动补偿;
频率域方法:
正交变换编码(如DCT),子带编码;
空间域方法:
统计分块编码;
模型方法:
分形编码,模型基编码;
基于重要性:
滤波,子采样,比特分配,向量量化;
(3)混合编码。
有JBIG,H261,JPEG,MPEG等技术标准。
本实验主要利用MATLAB程序进行离散余弦变换(DCT)压缩和行程编码(RunLengthEncoding,RLE)。
1)离散余弦变换(DCT)图像压缩原理
离散余弦变换DCT在图像压缩中具有广泛的应用,它是JPEG、MPEG等数据压缩标准的重要数学基础。
和相同图像质量的其他常用文件格式(如GIF(可交换的图像文件格式),TIFF(标签图像文件格式),PCX(图形文件格式))相比,JPEG是目前静态图像中压缩比最高的。
JPEG比其他几种压缩比要高得多,而图像质量都差不多(JPEG处理的图像只有真彩图和灰度图)。
正是由于其高压缩比,使得JPEG被广泛地应用于多媒体和网络程序中。
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编码来进一步压缩。
2)行程编码(RLE)原理:
例如如下这幅的二值图像,
如果采用行程编码可以按如下格式保存
其中10和8表示图像的宽和高。
在这个小例子中行程编码并没有起到压缩图像的作用。
这是由于这个图的尺寸过小,当图像尺寸较大时行程编码还是不错的无损压缩方法。
对于灰度图像和二值图像,用行程编码—般都有很高的压缩率。
行程编码方法实现起来很容易,对于具有长重复值的串的压缩编码很有效,例如:
对于有大面积的阴影或颜色相同的图像,使用这种方法压缩效果很好。
很多位图文件格式都采用行程编码,如TIFF,PCX,GEM,BMP等。
3.图像压缩编码的MATLAB程序语句
1)利用DCT变换进行图像压缩的MATLAB程序
RGB=imread('filename.jpg');
I=rgb2gray(RGB);
J=dct2(I);
imshow(log(abs(J)),[]),colormap(jet(64)),colorbar
J(abs(J)<10)=0;
K=idct2(J);
figure,imshow(I)
figure,imshow(K,[0255])
2)利用离散余弦变换进行JPEG图像压缩
I=imread('xiefang.gif');%读入原图像;
I=im2double(I);%将原图像转为双精度数据类型;
T=dctmtx(8);%产生二维DCT变换矩阵
B=blkproc(I,[88],'P1*x*P2',T,T');%计算二维DCT,矩阵T及其转置T’是DCT函数P1*x*P2的参数
Mask=[11110000
11100000
11000000
10000000
00000000
00000000
00000000
00000000];%二值掩膜,用来压缩DCT系数,只留下DCT系数中左上角的10个
B2=blkproc(B,[88],'P1.*x',Mask);%只保留DCT变换的10个系数
I2=blkproc(B2,[8,8],'P1*x*P2',T',T);%逆DCT,重构图像
Subplot(1,2,1);
Imshow(I);title('原图像');%显示原图像
Subplot(1,2,2);
Imshow(I2);title('压缩图像');%显示压缩后的图像。
对比原始图像和压缩后的图像,虽然舍弃了85%的DCT系数,但图像仍然清晰(当然有一些质量损失)
3)利用行程编码(RLE)进行图像压缩
I=checkerboard(10,2);%调入原图像
[mn]=size(I);
J=[];
fori=1:
m
value=I(i,1);
num=1;
forj=2:
n
ifI(i,j)==value
num=num+1;
else
J=[Jnumvalue];
num=1;
value=I(i,j);
end
end
J=[Jnumvalue00];%添加的行判断位00
end
disp('原图像大小:
')
whos('I');
disp('压缩图像大小:
')
whos('J');
disp('图像的压缩比:
')
disp(m*n/length(J))
三、实验步骤
1打开计算机,启动MATLAB程序;
2调入“实验一”中获取的数字图像,并进行数据的行程(RLE)编码压缩处理;
3将原图像在Photoshop软件中打开,分别以不同的位图文件格式进行“另保存”,比较它们的数据量。
4记录和整理实验报告
四、实验仪器
1计算机;
2MATLAB、Photoshop等程序;
3移动式存储器(软盘、U盘等)。
4记录用的笔、纸。
五、实验报告内容
1叙述实验过程;
2提交实验的原始图像和结果图像。
六、思考题
1.图像中哪些信息是主要的,哪些信息是次要的?
2.简述离散余弦变换(DCT)和行程编码(RLE)的原理。
实验五、图像融合
一、实验目的
1熟悉图像融合的意义和用途,理解图像融合的原理;
2掌握图像融合的一般方法;
3掌握运用MATLAB软件进行图像融合的操作。
二、实验原理
图像融合的目的把来自多传感器的数据互补信息合并成一幅新的图像,以改善图像的质量。
图像融合最简单的理解就是两个(或多个)图像间的相加运算。
这一技术广泛应用于多频谱图像理解和医学图像处理等领域。
主要分为空域和频域相加。
本实验主要应用MATLAB软件进行两幅图像的融合。
方法有:
1图像直接融合;
2图像傅立叶变换融合;
3图像小波变换融合。
图像融合的MATL
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字图像 处理 实验 指导书