河北工业大学《计算机图像处理》实验指导书
- 格式:doc
- 大小:1.08 MB
- 文档页数:20
实验一:图像文件类型转换实验目的:理解数字图像文件的几种基本类型掌握在MATLAB中进行图象文件类型转换的方法观察图象转换前后的效果加深对图象文件类型的理解熟悉图象格式、颜色系统间的转换实验内容:1)灰度图像与索引图像的相互转换2)RGB图像与索引图像的相互转换3)将图像转换为二值化图像实验方法:利用MATLAB工具进行实验一、灰度图像到索引图像的转换启动MATLAB,新建一个自己的工作文件夹(如下图中的“MYFIG”)。
并把它设置在当前的工作路径(Current Directory)下。
1)在该文件夹中拷入个灰度图片,比如“2.jpg”文件。
2)在MATLAB命令输入窗中,调用函数info=imfinfo('2.jpg')观查2.jpg是否为灰度图像在ColorType: 'grayscale' 属性行如此显示,则说明以2.jpg命名的文件为灰度图像。
3)输入如下命令完成转换RGB=imread('2.jpg'); % 将图像“2.jpg”的数据赋给变量RGBfigure(3); % 设定显示窗口3imshow(RGB); % 显示原“2.jpg”文件figure(1); % 设定显示窗口1[RGB1,map1]=gray2ind(RGB,128); % 指定灰度级128,进行灰度图像到索引图像转换imshow(RGB1,map1) ; % 显示索引图像1figure(2); % 设定显示窗口2[RGB2,map2]=gray2ind(RGB,16); % 指定灰度级16,进行灰度图像到索引图像转换imshow(RGB2,map2) ; % 显示索引图像2imwrite(RGB1,map1,'3.bmp'); % 将索引图像1保存为名为“3.bmp”的文件imwrite(RGB2,map2,'4.bmp'); % 将索引图像2 保存为名为“4.bmp”的文件运行并观察结果和现象。
数字图像处理实验指导书Digital image processing ExperimentalInstruction崔艳秋许爽大连民族学院Dalian nationalities university数字图像处理实验指导书机电信息工程学院(College of Electromechanical and Information Engineering)2009年7月10日基本要求Basic requirements1.学生必须按时到实验室做实验,不得迟到早退,未经老师批准不得中途离开。
凡迟到者,应给予批评并作适当扣分。
实验课迟到20分钟以上及无故缺席者视为旷课,旷课者不予补做实验,本次实验以零分计。
学生因病或特殊情况不能按时到实验室做实验时,应办理正常请假手续。
请病假必须有医生签字的病假条,请事假必须有班主任签字的事假条。
不符合请假手续的,以旷课论处。
请假的学生由指导教师安排补做实验。
对于未做实验数达三分之一以上(含三分之一)的学生,实验课程按0分计。
2.学生在每次实验课之前,应仔细阅读实验教材,查阅相关的资料,写出预习报告。
预习报告的具体内容包括:实验内容、实验目的、实验原理图、实验步骤、实验数据记录表格等。
实验课前由任课教师检查预习报告,未写预习报告者不予做实验。
3.做实验前,了解设备的原理和正确使用方法。
在没有弄懂仪器设备的使用方法前,不得贸然使用,否则因使用不当造成仪器设备损坏的,根据大连民族学院《仪器设备损坏丢失处理暂行办法》规定进行处理。
实验室内设备在实验过程中不准任意搬动和调换,非本次实验所用仪器设备,未经指导教师允许不得动用。
4.要求每位学生在实验过程中,要具有严谨的学习态度、认真、踏实、一丝不苟的科学作风。
实验过程中学生按照预习的内容进行实验,且重视实验的调试过程,学会如何根据实验现象判断问题所在。
坚持每次实验都要亲自动手,不可“坐车”,每个实验每个学生都要独立完成,不允许抄袭,无特殊原因,中途不得退出实验,否则本次实验无效。
《数字图像处理》实验指导书前言本实验指导书可作为电子信息工程、通信工程、生物医学工程等专业《数字图像处理》课程的实验指导书。
实验指导书共提供了6个实验,要求在VB环境下实现。
实验名称与学时安排详见下表。
实验名称与学时安排表实验教学基本要求:1、在实验前,认真准备,熟悉和掌握相关实验内容的基本算法和程序设计技术。
2、根据实验目的和要求,按时认真完成各实验的上机操作。
3、实验结束后,要及时提交经调试正确的程序源代码、生成的可执行文件、实验报告书等文档。
实验一图象的读取保存及图像的二值化处理一、实验目的1、熟悉《数字图像处理》的实验平台。
2、了解VB对图像进行处理的基本方法。
3、熟悉彩色图像变成灰度图象以及灰度图像转换成二值图像的基本原理及处理过程。
二、实验准备1、复习彩色图像变成灰度图象以及灰度图像的二值化处理的基本原理。
2、阅读下列内容,了解VB对图像进行处理的基本方法。
(1)读取图像通过扫描仪、摄像机等输入计算机以.bmp、.ico或.wmf存储的图像文件,可用LoadPicture函数把图像文件装入窗体、图片框或图像框中,例如:picture1.picture=loadpicture(“c:\image\flower.bmp”)可以把路径为c:\image\flower.bmp的图像文件装入图片框picture1中。
为了使图片框的大小与图像相匹配,应将图片框的autosize属性设置为True。
(2)用Point方法获取彩色图像的颜色值Point方法的功能是获取图像上指定像素的颜色值。
格式为:Object.Point(x,y)其中,Object表示获取颜色的对象名,(x,y)为取得颜色的坐标位置。
Point 方法将指定位置的像素的颜色值返回一个长整形数。
例如,求图片框picture 1中图像在位置(x,y)的像素颜色值(col)时,可写为:dim col as longcol=picture1.Point(x,y)(3)用Pset方法画点Pset方法的功能是在指定的位置画一个指定颜色的点。
实验一 MATLAB数字图像处理基本操作一、实验目的与要求1.熟悉MATLAB软件的开发环境、基本操作以及图像处理工具箱,为编写图像处理程序奠定基础。
2.掌握二值、灰度和彩色图像的读、写和显示方法,以及图像的高、宽、颜色等参数的获取方法。
3.根据实验内容进行问题的简单分析和初步编码。
二、实验相关知识1、Matlab软件Image Processing Toolbox简介MatLab的原文是Matrix Laboratory,它包括若干个工具箱,如Communications Toolbox、Control System Toolbox、Neural Network Toolbox、Wavelet Toolbox等等,其中Image Processing Toolbox图像处理工具箱可以完成Geometric Operations、Enhancement、Color Segmentation、Image Transformation、Image Analysis、Morphological Operations等操作。
在MatLab中,图像就是一个矩阵,在进行处理时当作一个变量即可,因此运算的书写十分简洁,故MatLab有草稿纸式的算法语言之称。
例如:J=I+50; %为原始图像I加上一常数50,并将结果赋予变量J,其效果相当于得到一幅加亮的图像J以此类推可以书写出减法J=I-0.5;乘法J=I*2;除法J=I/3;等等。
利用MatLab提供的imread和imwrite函数可以完成对图像文件的读写操作,它们所支持的一些常用的图像文件格式见表1-1。
MatLab Command窗口的提示符号“>>”下直接键入命令即可运行,如键入:>>clear %执行本命令将会清除内存中的全部变量>> figure(1); %生成一个图像窗口1>> I=imread('e:lena.bmp'); %将硬盘e:根目录上的图像文件lena.bmp的数据读入矩阵变量I中>> imshow(I); %在当前的图像窗口中显示图像矩阵I>> title('原始图像'); %在当前的图像窗口中加上标题但为了能够对程序进行调试和重复应用,我们要求用M文件的方式完成实验中各个程序的编写。
数字图像处理实验指导书河北工业大学计算机科学与软件学院实验一 MATLAB数字图像处理初步一、实验目的与要求1.熟悉及掌握在MATLAB中能够处理哪些格式图像。
2.熟练掌握在MATLAB中如何读取图像。
3.掌握如何利用MATLAB来获取图像的大小、颜色、高度、宽度等等相关信息。
4.掌握如何在MATLAB中按照指定要求存储一幅图像的方法。
5.图像类型转换。
二、实验原理及知识点1、数字图像的表示和类别一幅图像可以被定义为一个二维函数f(x,y),其中x和y是空间(平面)坐标,f 在任何坐标处(x,y)处的振幅称为图像在该点的亮度。
灰度是用来表示黑白图像亮度的一个术语,而彩色图像是由单个二维图像组合形成的。
例如,在RGB彩色系统中,一幅彩色图像是由三幅独立的分量图像(红、绿、蓝)组成的。
因此,许多为黑白图像处理开发的技术适用于彩色图像处理,方法是分别处理三副独立的分量图像即可。
图像关于x和y坐标以及振幅连续。
要将这样的一幅图像转化为数字形式,就要求数字化坐标和振幅。
将坐标值数字化称为采样;将振幅数字化成为量化。
采样和量化的过程如图1所示。
因此,当f的x、y分量和振幅都是有限且离散的量时,称该图像为数字图像。
作为MATLAB基本数据类型的数值数组本身十分适于表达图像,矩阵的元素和图像的像素之间有着十分自然的对应关系。
图1 图像的采样和量化根据图像数据矩阵解释方法的不同,MA TLAB把其处理为4类: 亮度图像(Intensity images)二值图像(Binary images)索引图像(Indexed images)RGB图像(RGB images)(1) 亮度图像一幅亮度图像是一个数据矩阵,其归一化的取值表示亮度。
若亮度图像的像素都是uint8类或uint16类,则它们的整数值范围分别是[0,255]和[0,65536]。
若图像是double类,则像素取值就是浮点数。
规定双精度型归一化亮度图像的取值范围是[0,1](2) 二值图像一幅二值图像是一个取值只有0和1的逻辑数组。
数字图像处理实验指导书河北工业大学计算机科学与软件学院实验五 图像频率域平滑和锐化一、实验目的:1.掌握怎样利用傅立叶变换进行频域滤波 2.掌握频域滤波的概念及方法 3.熟练掌握频域空间的各类滤波器 4.利用MATLAB 程序进行频域滤波二、实验原理及知识点频域滤波分为低通滤波和高通滤波两类,对应的滤波器分别为低通滤波器和高通滤波器。
频域低通过滤的基本思想:G(u,v)=F(u,v)H(u,v)F(u,v)是需要钝化图像的傅立叶变换形式,H(u,v)是选取的一个低通过滤器变换函数,G(u,v)是通过H(u,v)减少F(u,v)的高频部分来得到的结果,运用傅立叶逆变换得到钝化后的图像。
频率域平滑:图像的平滑除了在空间域中进行外,也可以在频率域中进行。
由于噪声主要集中在高频部分,为去除噪声改善图像质量,滤波器采用低通滤波器H(u,v)来抑制高频成分,通过低频成分,然后再进行逆傅立叶变换获得滤波图像,就可达到平滑图像的目的。
常用的频率域低滤波器H(u,v)有四种: 1.理想低通滤波器具有传递函数:⎩⎨⎧>≤=00),(0),(1),(D v u D D v u D v u H其中,0D 为指定的非负数,(,)D u v 为(u,v)到滤波器的中心的距离。
0(,)D u v D =的点的轨迹为一个圆。
2. 巴特沃兹低通滤波器(BLPF)(在距离原点0D 处出现截至频率)的传递函数为nn D v u D D v u D v u H 2020]),([414.011]),()[12(11),(+=-+=与理想地通滤波器不同的是,巴特沃兹率通滤波器的传递函数是在0D 处是是连续性衰减,因此采用该滤波器滤波在抑制噪声的同时,图像边缘的模糊程度大大减小,没有振铃效应产生。
3.指数低通滤波器:}]),([347.0exp{}]),()][21exp{[ln(),(00nn D v u D D v u D v u H -==4.梯形低通滤波器⎪⎩⎪⎨⎧>≤<--≤=1101010),(0),()(]),([),(1),(D v u D D v u D D D D D v u D D v u D v u H 频率域锐化 :图像的边缘、细节主要位于高频部分,而图像的模糊是由于高频成分比较弱产生的。
实验一图像变换(验证性)1.实验目的熟悉图像的二维离散余弦变换和反变换;熟悉图像的二维离散傅立叶变换和反变换;2.实验内容图像的二维离散余弦变换和反变换及二维离散傅立叶变换和反变换熟悉下列模块函数:rgb2gray - Convert RGB image or colormap to grayscale.uint8 -Convert to unsigned 8-bit integer.dct2 - Compute 2-D discrete cosine transform.idct2 - Compute 2-D inverse discrete cosine transform.fft2 -Two-dimensional discrete Fourier Transformfftshift - Shift zero-frequency component to center of spectrumifftshift - Inverse fftshiftifft2 - Two-dimensional inverse discrete Fourier transform3.原理傅立叶变换是对线性系统进行分析的一个有力工具,它将图像从空域变换到频域,是我们能够定量地分析诸如数字化系统、采样点、电子放大器、卷积滤波器、噪声、显示点等的作用(效应)。
把傅立叶变换的理论同其物理解释相结合,将有助于解决大多数图像处理问题。
在数字图像处理中,输入图像和输出图像通常都是二维的,一般表示成二维数字矩阵,因此,这里直接讨论二维傅立叶变换、二维DFT、二维FFT。
二维M×N的DFT变换和逆DFT变换分别定义如下∑∑-=-=--=101)/2()/2(),(),(M i N k nk N j mi M j e e k i f n m F ππ其中,m=0,1,…,M-1;n=0,1,…,N-1。
∑∑-=-==1010)/2()/2(),(1),(M m N n nk N j miM j e en m F NMk i f ππ其中,m=0,1,…,M-1;n=0,1,…,N-1。
[图象处理算法实验指导书] 实验指导书图象处理算法实验指导书实验一静态图像采集一、实验目的 1.了解DSK的工作原理。
2.了解FPGA进行静态图像采集的工作原理。
3.了解DSP的EDMA技术在静态数据采集中的作用。
4.了解DSP的中断技术。
5.了解SDRAM在静态视频数据采集中的作用。
6.了解DSP和FPGA在视频数据采集中的同步原理二、实验设备计算机,6711DSK、视频采集卡、CCS软件、Webpack软件三、实验原理本实验由视频采集卡上的FPGA和DSK共同完成对摄入图像的静态采集和显示,所谓静态采集,就是可以选择采集一幅用户感兴趣的图像,把这幅图像保存到DSK板上的SDRAM中并完成显示。
视频图像由SAA7111进行AD变换和视频解码后输出CCIR 601标准的视频数据流送给FPGA,包括:16位图像数据(高8位为Y信号,低8位为UV信号交叉出现);行同步信号hs(在行消隐期间为高电平,其它时间为低电平);场同步信号vs(在场消隐期间为高电平,其它时间为低电平);行参考信号href(行数据有效期间为高电平)。
在PAL制下,标准的CCIR 601视频数据为864点/行*625行/场*50场,一场分为两帧,分别为奇数行和偶数行。
其中每行有效数据为720个点,即href维持720个点。
FPGA输出给AL250进行视频显示的信号也需要满足这一格式。
根据这一格式,采集时FPGA将有效的视频数据存入OUTFIFO中,同时以行同步信号作为DSP的中断信号通知DSP取走FIFO中一行的数据。
DSP收到中断信号后进入中断处理程序,用EDMA从视频板OUTFIFO中读取一行的数据到SDRAM中,再用EDMA将一行的数据从SDRAM搬到视频板INFIFO中。
FPGA产生显示所需的同步信号和对INFIFO读取的控制信号,控制INFIFO中的数据和同步信号同步送给AL250,完成显示功能。
为此在这个实验前,需要了解以下知识点:1.视频图像格式 2、DSP原理和应用 3、FPGA原理和应用四、实验步骤 1.复习有关图像采集的基础知识2.连接好摄像头、视频卡,FPGA下载电缆、6711DSK并口仿真电缆,上电。
实验一 MATLAB数字图像处理初步网络121 XXX一、实验目的与要求1.熟悉及掌握在MATLAB中能够处理哪些格式图像。
2.熟练掌握在MATLAB中如何读取图像。
3.掌握如何利用MATLAB来获取图像的大小、颜色、高度、宽度等等相关信息。
4.掌握如何在MATLAB中按照指定要求存储一幅图像的方法。
5.图像类型转换。
二、实验原理及知识点1、数字图像的表示和类别一幅图像可以被定义为一个二维函数f(x,y),其中x和y是空间(平面)坐标,f 在任何坐标处(x,y)处的振幅称为图像在该点的亮度。
灰度是用来表示黑白图像亮度的一个术语,而彩色图像是由单个二维图像组合形成的。
例如,在RGB彩色系统中,一幅彩色图像是由三幅独立的分量图像(红、绿、蓝)组成的。
因此,许多为黑白图像处理开发的技术适用于彩色图像处理,方法是分别处理三副独立的分量图像即可。
图像关于x和y坐标以及振幅连续。
要将这样的一幅图像转化为数字形式,就要求数字化坐标和振幅。
将坐标值数字化称为采样;将振幅数字化成为量化。
采样和量化的过程如图1所示。
因此,当f的x、y分量和振幅都是有限且离散的量时,称该图像为数字图像。
作为MATLAB基本数据类型的数值数组本身十分适于表达图像,矩阵的元素和图像的像素之间有着十分自然的对应关系。
图1 图像的采样和量化根据图像数据矩阵解释方法的不同,MA TLAB把其处理为4类: 亮度图像(Intensity images)二值图像(Binary images)索引图像(Indexed images)RGB图像(RGB images)(1) 亮度图像一幅亮度图像是一个数据矩阵,其归一化的取值表示亮度。
若亮度图像的像素都是uint8类或uint16类,则它们的整数值范围分别是[0,255]和[0,65536]。
若图像是double类,则像素取值就是浮点数。
规定双精度型归一化亮度图像的取值范围是[0,1](2) 二值图像一幅二值图像是一个取值只有0和1的逻辑数组。
实验六图像分割
一、实验目的
使用MatLab 软件进行图像的分割。
使学生通过实验体会一些主要的分割算子对图像处理的效果,以及各种因素对分割效果的影响。
二、实验要求
要求学生能够自行评价各主要算子的分割性能。
完成图像的处理并要求正确评价处理结果,能够从理论上作出合理的解释。
三、实验内容与步骤
(1)使用Roberts 算子的图像分割实验
调入并显示图像中图像;使用Roberts 算子对图像进行边缘检测处理; Roberts 算子为一对模板:
(2)使用Roberts 算子的图像分割实验
调入并显示图像中图像;使用Roberts 算子对图像进行边缘检测处理; Roberts 算子为一对模板:
(3)使用Prewitt 算子的图像分割实验
(4)使用Sobel 算子的图像分割实验
(5)使用拉普拉斯算子的图像分割实验
四、实验设备及软件
1.计算机;
2.MATLAB程序;
3.移动式存储器(软盘、U盘等)。
4.记录用的笔、纸。
五、实验报告要求
1.叙述实验过程;
2.提交实验的原始图像和结果图像。
六、思考题/问答题
1. 评价一下Roberts 算子、Prewitt 算子、Sobel 算子对于噪声条件下边界检测的性能。
2. 实验中所使用的五种算子所得到的边界有什么异同?。
实验一 MATLAB数字图像处理基本操作一、实验目的与要求1.熟悉MATLAB软件的开发环境、基本操作以及图像处理工具箱,为编写图像处理程序奠定基础。
2.掌握二值、灰度和彩色图像的读、写和显示方法,以及图像的高、宽、颜色等参数的获取方法。
3.根据实验内容进行问题的简单分析和初步编码。
二、实验相关知识1、Matlab软件Image Processing Toolbox简介MatLab的原文是Matrix Laboratory,它包括若干个工具箱,如Communications Toolbox、Control System Toolbox、Neural Network Toolbox、Wavelet Toolbox等等,其中Image Processing Toolbox图像处理工具箱可以完成Geometric Operations、Enhancement、Color Segmentation、Image Transformation、Image Analysis、Morphological Operations等操作。
在MatLab中,图像就是一个矩阵,在进行处理时当作一个变量即可,因此运算的书写十分简洁,故MatLab有草稿纸式的算法语言之称。
例如:J=I+50; %为原始图像I加上一常数50,并将结果赋予变量J,其效果相当于得到一幅加亮的图像J以此类推可以书写出减法J=I-0.5;乘法J=I*2;除法J=I/3;等等。
利用MatLab提供的imread和imwrite函数可以完成对图像文件的读写操作,它们所支持的一些常用的图像文件格式见表1-1。
MatLab Command窗口的提示符号“>>”下直接键入命令即可运行,如键入:>>clear %执行本命令将会清除内存中的全部变量>> figure(1); %生成一个图像窗口1>> I=imread('e:lena.bmp'); %将硬盘e:根目录上的图像文件lena.bmp的数据读入矩阵变量I中>> imshow(I); %在当前的图像窗口中显示图像矩阵I>> title('原始图像'); %在当前的图像窗口中加上标题但为了能够对程序进行调试和重复应用,我们要求用M文件的方式完成实验中各个程序的编写。
2、数字图像的表示和类别根据图像数据矩阵解释方法的不同,MATLAB把其处理为四类:(1) 亮度图像(Intensity images)一幅亮度图像是一个数据矩阵,其归一化的取值表示亮度。
若亮度图像的像素都是uint8类或uint16类,则它们的整数值范围分别是[0,255]和[0,65536]。
若图像是double类,则像素取值就是浮点数。
规定双精度型归一化亮度图像的取值范围是[0,1]。
(2) 二值图像(Binary images)一幅二值图像是一个取值只有0和1的逻辑数组。
而一幅取值只包含0和1的uint8类数组,在MATLAB 中并不认为是二值图像。
使用logical函数可以把数值数组转化为逻辑数组,其语法为B=logical(A);其中A是由0和1构成的数值数组。
要测试一个数组是否为逻辑数组,可以使用函数islogical(C);若C是逻辑数组,则该函数返回1;否则,返回0。
(3) 索引图像(Indexed images)索引颜色通常也称为映射颜色,在这种模式下,颜色都是预先定义的,并且可供选用的一组颜色也很有限,索引颜色的图像最多只能显示256种颜色。
一幅索引颜色图像在图像文件里定义,当打开该文件时,构成该图像具体颜色的索引值就被读入程序里,然后根据索引值找到最终的颜色。
(4) RGB图像(RGB images)一幅RGB图像就是彩色像素的一个M×N×3数组,其中每一个彩色像素点都是在特定空间位置上相对应的红、绿、蓝三个分量。
按照惯例,形成一幅RGB彩色图像的三个矩阵常称为红、绿或蓝分量图像。
令fR,fG和fB分别代表三种RGB分量图像。
一幅RGB图像就利用cat(级联)操作将这些分量图像组合成彩色图像:rgb_image=cat(3,fR,fG,fB) 在操作中,图像按顺序放置。
3、数据类和图像类型间的转化表1-2中列出了MATLAB和Image Processing Toolbox为表示图像所支持的各种数据类。
表中的前8项称为数值数据类,第9项称为字符类,最后一项称为逻辑数据类。
表1-3列出了工具箱中提供的一些必要函数,以便在图像类和数据类之间进行转化。
4、常用函数和命令(1) 读写图像文件a)imread:用于读入各种图像文件,返回一个矩阵,如:a=imread('d:\p1.jpg')b)whos:用于读取图像的基本信息,如:whos ac)imwrite:用于写入图像文件,如:imwrite(a,'d:\p2.tif',’tif’)d)imfinfo:用于读取图像文件的有关信息,如:imfinfo('d:\p2.tif')(2) 图像的显示a)image:image函数是MATLAB提供的最原始的图像显示函数,如:a=[1,2,3,4;4,5,6,7;8,9,10,11]; image(a);b)imshow:用于图像文件的显示,如:i=imread('d:\p1.jpg');imshow(i);c)colorbar:用于显示图像的颜色条,如:i=imread('d:\p1.jpg');imshow(i);colorbar;d)figure:用于设定图像显示窗口,如:figure(1);figure(2);% n为图形窗口号数e)subplot:把图形窗口分成多个矩形部分,每个部分可以分别用来进行显示,如:subplot(m,n,p)分成m×n个小窗口,在第p个窗口中创建坐标轴为当前坐标轴,用于显示图形f)plot:绘制二维图形,如:plot(y);plot(x,y);%x、y可以是向量、矩阵(3) 图像类型转换a)rgb2gray:把真彩图像转换为灰度图像,如:i=rgb2gray(j)b)im2bw:通过阈值化方法把图像转换为二值图像,如:I=im2bw(j,level)Level表示灰度阈值,取值范围0~1,即0.n表示阈值取自原图像灰度范围的n%(4) 其它运算函数a)zeros:生成全0数组或矩阵,如:B=zeros(m,n)或B=zeros([m n]),返回一个m×n的全0矩阵b)取整函数:round四舍五入取整函数;floor最小取整函数;ceil最大取整函数,如:a=[-1.9 -0.2 3.4 5.6 2.4+3.6i]; I=round(a)输出I=[-2 0 3 6 2+4i]三、实验内容1、读入一幅RGB图像(sunset.jpg),分别转换为灰度图像和二值图像,并在同一个窗口内分成三个子窗口来分别显示这三幅图像,注上文字标题,即“原图像”、“灰度图像”、“二值图像”。
subplot(1,3,1);I=imread('d:\sunset.jpg');imshow(I);title('原图像');subplot(1,3,2);J=rgb2gray(I);imshow(J);title('灰度图像');subplot(1,3,3);Q=im2bw(J,0.5);imshow(Q);title('二值图像');2、说明以下程序的显示结果为何是一幅几乎全黑的图像。
clear; close all;myi=zeros(20,20);myi(2:2:18,2:2:18)=1;myi=uint8(myi);figure, imshow(myi,'notruesize');3、阅读分析下列程序,对每条语句给出注释,运行并解释最终执行结果;若将for循环改为方框中的程序,有何不同?clear all;close all;I=imread('d:\lena512.jpg');[height,width]=size(I);figure;subplot(2,3,1);imshow(I);title('原图像');L=1;for m=1:5 ArrayL=2*L;k=1;n=1;for i=1:L:heightfor j=1:L:widthquartimage(k,n)=I(i,j);n=n+1;endk=k+1;n=1;endsubplot(2,3,m+1);imshow(uint8(quartimage));end4、编写程序将一幅灰度图像(orangutan.tif)每两行之间增加一行,即将图像的高度拉伸一倍、宽度不变,然后将其存储为图像文件。
要求拉伸后图像的奇数行对应原图像的各行,偶数行是原图像相邻两行的灰度平均值(即偶数行由插值得到),并将结果与MATLAB图像处理工具箱中提供的改变图像大小的函数imresize(imresize(I,[m n])将图像I大小调整为m行n列)的处理结果进行比较。
T1=maketform('affine',[1 0 0;0 2 0;0 0 1]);I=imread('c:\orangutan.tif');I1=imtransform(I,T1);imshow(I),figure,imshow(I1)5、熟悉数字图像处理常用函数的使用,调出帮助文档查看其各种不同用法。
MatLab具有完善的帮助系统,包括命令行帮助、联机帮助和演示帮助等,应学会充分利用帮助系统来解决问题。
获得帮助的途径有多种,如:(1) 在MatLab界面中单击工具条上的问号,或单击Help菜单中的MATLAB Help选项;或按F1键打开Help窗口。
(2) 选择函数(函数所在区变暗),点右键弹出菜单,选择Help on Selection;或在command窗口键入help函数名(或工具箱名)。
实验二图像直方图及灰度变换一、实验目的与要求1.掌握图像灰度直方图的概念及其计算方法,编写灰度直方图统计程序。
2.通过对图像直方图的分析,学习应用直方图法解决诸如图像二值化等具体问题。
3.熟悉直方图均衡化的计算过程及其应用。
4.掌握图像灰度变换技术,通过调整图像的对比度和亮度等参数,改善视觉效果。
二、实验相关知识直方图是图像最基本的统计特征,是图像亮度分布的概率密度函数,反映了图像灰度值的分布情况。
直方图是多种空间域处理技术的基础。