MATLAB在静态靶标图像处理中的应用Word格式文档下载.docx
- 文档编号:4060986
- 上传时间:2023-05-02
- 格式:DOCX
- 页数:24
- 大小:681.52KB
MATLAB在静态靶标图像处理中的应用Word格式文档下载.docx
《MATLAB在静态靶标图像处理中的应用Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《MATLAB在静态靶标图像处理中的应用Word格式文档下载.docx(24页珍藏版)》请在冰点文库上搜索。
一方面,它是目标表达的基础,对特征测量有重要的影响。
另一方面,图像分割及其基于分割的目标表达、特征提取和参数测量等将原始图像转化为更抽象、更紧凑的形式,使得更高层的图像分析和理解成为可能。
图像分割在实际生产、生活中已经得到广泛的应用,例如在工业自动化,在线产品检验、遥感和生物医学图像分析、保安监视,以及军事、体育、农业、林业工程等各个方面。
在各种图像应用中,只要对图像目标进行提取、测量等就都离不开图像分割。
人们对图像分割算法的研究也己经有几十年的历史,借助各种理论至今提出了上千种的分割算法,而且这方面的研究仍在继续,但到目前为止还没有通用的分割理论,现在己经提出的分割算法大都只是针对某一具体问题,并没有一种适合于所有图像的通用的分割算法。
所以算法虽然多,但不同的算法在解决某一类型问题时所表现出的效率却大不相同。
对图像分割的研究可以分成三个层次:
第一个层次研究的是对图像进行分割的技术即对分割算法的研究:
第二个层次是在分割中对分割评价方法的研究,从而刻画和比较、帮助把握不同分割算法的特点;
第三个层次则是对分割评价方法和评价准则进行系统的研究,从而保证采用恰当的评价方法和评价准则来研究分割技术。
有统计表明,90%以上的文献是关于分割算法的研究。
过去人们往往忽视了对分割评价方法和评价标准的研究。
现在,越来越多的图像工程人员开始意识到这点。
通过对分割算法性能的研究,可以优化分割,不仅可提高现有算法的性能,对研究新的分割技术也具有指导意义。
1.3本文主要研究内容
本文的研究内容主要包括以下的几个方面
1.选择适当的靶标图像文件;
2.基于Matlab完成图像处理算法的研究;
3.基于Matlab完成系统仿真软件的研究;
4.完成实验;
5.研究静态靶标的图像特征,寻求最优算法。
具体流程图如下:
图1.2系统流程图
第二章图像预处理的基本知识
本章主要介绍了数字图像处理技术中常使用的一些方法,如图像灰度变换、图像平滑、图像边缘检测等基本知识,利用这些方法将采集到的图片进行一系列处理,并将处理的图像显示出来,同时实现对靶标的定位检测。
2.1图像灰度变换
当图像受到CCD摄像系统的影响,受到摄像机周围环境的影响,受到成像时曝光不足或过度的影响,以及受到成像设备的非线性,或图像记录设备动态范围太窄的影响,都会出现对比度不足,使图像中的细节分辨不清。
另外,自然图像由于其灰度通常分布在较窄的区间,也会引起图像细节不清楚。
对CCD摄像系统获取的图像,进行直方图变换,可使图像的灰度间距拉开或者使图像的灰度分布均匀,从而增大了反差,使图像细节清晰,达到系统的要求。
图像的灰度变换处理是图像增强处理技术中一种非常基础、直接的空间域图像处理方法,也是图像数字化软件和图像显示软件的一个重要组成部分。
灰度变换是指根据某种目标条件按一定变换关系逐点改变原图像中每一个像素灰度值的方法。
目的是为了改善画质,使图像的显示效果更加清晰。
灰度变换有时又被称为图像的对比度增强或对比度拉伸。
从图像输入装置得到的图像数据,以浓淡表示,每个像素与某一灰度值相对应。
设原图像的灰度值
处理后图像像素的灰度值为:
,则灰度增强可表示为(2.1)式或(2.2)式:
(2.1)
(2.2)
要求
和
都在图像的灰度范围之内。
函数
称为灰度变换函数,它描述了输入灰度值和输出灰度值之间的转换关系。
一旦灰度变换函数确定,则确定了一个具体的灰度增强方法。
图像中每一点的运算就被完全确定下来。
灰度变换函数不同,即使是同一图像也会得到不同的结果。
选择灰度变换函数应该根据图像的性质和处理目的来决定。
选择的标准是:
经过灰度变换后,像素动态范围增加,图像的对比度扩展,使图像变得更加清晰、细腻,容易识别。
1.图像灰度求反
对图像求反是将原图灰度值翻转,简单说来就是使黑变白,使白变黑。
当被显示图像在低灰度区间呈现高度非线性时,此变换能使原图像低灰度区间的细节转换到高灰度区间。
2.图像灰度拉伸
一般,图像看不清楚,多数是由于图像相邻像元的灰度级太接近,称为灰度压缩,即相互之间灰度差远小于人的视觉对灰度分辨能力的限制。
这种图像视觉效果差,人会感觉模糊。
我们可以用映射的方法,把原来压缩的直方图分开一些,也就是灰度拉伸,得到的图像自然会清晰的多了。
3.直方图处理
直方图表示数字图像中每一个灰度与其出现频度间的统计关系。
直方图能给出该图像的概貌性描述,例如图像的灰度范围、每个灰度级的频度和灰度的分布、整幅图像的平均明暗和对比度等,由此可得出进一步处理的重要依据。
自然图像由于其灰度通常分布在较窄的区间,引起图像细节不清楚。
采用直方图修整后可使图像的灰度间距拉开或者使灰度分布均匀,从而增大反差,使图像细节清晰,达到图像增强的目的。
我们将灰度直方图表示为:
(2.3)
这里
代表原始图第k个灰度级的出现概率。
以
为自变量,以
为函数得到的曲线就是图像的直方图。
直方图修整法通常有直方图均衡化和直方图规定化两类。
1)直方图均衡化
这个方法的基本思想是把原始图的直方图变换为均匀分布的形式,这样就增加了象素灰度值的动态范围从而达到增强图像整体对比度的效果。
具体方法是:
(1)根据上式计算出原始图像的直方图;
(2)计算原始图像的累计直方图为:
(2.4)
其中,
(3)对
取整运算;
(4)定义映射关系:
;
(5)统计新直方图各灰度级的象素数
(6)最后计算新的直方图:
。
1)直方图规定化
直方图均衡化的优点是能自动地增强整个图像的对比度,但它的具体增强效果不易控制,处理的结果总是得到全局均衡化的直方图。
实际中有时需要变换直方图使之成为某个特定的形状,从而有选择地增强某个灰度值范围内的对比度。
这时可以采用比较灵活的直方图规定化方法。
一般来说正确地选择规定化地函数有可能获得比直方图均衡化更好地效果。
直方图规定化方法主要有三个步骤:
(1)对原始图像的直方图进行灰度均衡化;
(2)规定所需要的直方图,并计算能使规定的直方图均衡化的变换;
(3)将第一步得到的变换翻转过来,也就是将原始图像对应映射到规定的直方图上。
2.2图像平滑去噪
图像在生成和传输过程中常受到各种噪声的干扰和影响,使图像质量下降。
为了达到系统的要求,就要抑制噪声,改善图像质量,也就是对图像进行平滑去噪处理。
对于滤除图像中的噪声,人们已经提出了很多的方法。
通常,将数字图像的平滑技术划分为两类。
一类是全局处理,即对噪声图像的整体或大的块进行校正以得到平滑的图像。
例如在变换域中使用wiener滤波、最小二乘法滤波等。
使用这些技术需要知道信号和噪声的统计模型。
但对大多数图像而言,人们不知道或不可能用简单的随机过程精确地描述统计模型,而且,这些技术的计算量也相当大。
另一类平滑技术是对噪声图像使用局部算子。
当对某一像素进行平滑处理时,仅对它的局部小邻域的一些像素加以运算,其优点是计算效率高,而且可以多个像素并行处理。
因此可实现实时或者准实时处理。
1.均值滤波
设
为给定的含有噪声的图像,经过简单领域平均处理为
,在数学上可表现为(2.5)式:
(2.5)
式中S是所取邻域中的各邻近像素的坐标,M是领域中包含的邻近像素的个数。
可以这样说明,在
上按行(或列)对每个像素选取一定尺寸的邻域,并用邻域中邻近像素的平均灰度来置换这一像素值,对全部像素处理后可获得。
对于邻域可以有不同的选取方式见图2.1:
模板1模板2模板3
图2.1三种模板类型
为了保持平滑处理后的图像的平均值不变,模板内各元素之和为1。
有时,为了突出原点本身的重要性,以便尽量抑制图像中的模糊效应,在模板中心和较近的元素,可以赋以大的加权值(如模板3)。
可见,均值滤波处理时是以图像模糊为代价来换取噪声的减小的,且面积(即模板大小)越大,噪声减少越明显。
如果
是噪声点,其邻近像素灰度与之相差很大,一旦用简单邻域平均法,即邻近像素的平均值来置换它,能明显地将噪声点压制下去,使邻域中灰度接近均匀,起到平滑灰度的作用。
因此,领域平均法具有显著地平滑噪声的效果,邻域平均法是一种有效的平滑技术。
2.中值滤波
中值滤波法也是一种局部平均平滑技术。
它对脉冲干扰和椒盐噪声的抑制效果较好,在抑制随机噪声的同时能使边缘减少模糊。
中值滤波法是一种非线性的图像平滑方法,它对一个滑动窗口内的诸像素灰度排序,用其中值代替窗口中心像素原来的灰度(若窗口中有偶数个像素,则取两个中间值的平均)。
通过对比,应用平滑模板使图像平滑了,但是也使边界模糊了。
应用中值滤波,就能很好地保持原来边界。
所以说,中值滤波的特点是保护图像边缘的同时去除噪声。
另外,中值滤波对脉冲噪声也非常有效。
虽然,中值滤波容易去除孤立点、线性的噪声,同时保持图像的边缘,并能很好地去除二值噪声,但对高斯噪声无能为力。
要注意的是,当窗口内噪声点的个数大于窗口宽度一半时,中值滤波的效果不好。
因此,正确选择窗口尺寸的大小是用好中值滤波的重要环节。
一般很难事先确定最佳的窗口尺寸,需要通过从小窗口到大窗口的试验,再从中选取最好的结果。
2.3图像边缘检测
边缘是指图像周围像素灰度有阶跃变化或屋顶状变化的那些像素的集合,它存在于目标与背景、目标与目标、区域与区域之间。
图像边缘信息在图像分析和人的视觉中都是十分重要的,是图像识别中提取图像特征的一个重要属性。
图像的边缘有方向和幅度两个特性。
通常沿边缘方向的像素变化平缓,而垂直于边缘走向的像素变化剧烈。
这种变化可能呈现阶跃型和房顶型见图2.2:
a阶跃型b房顶型
图2.2灰度变化的类型
这些变化分别对应景物中不同的物理状态。
例如阶跃型变化常常对应目标的深度和反射边界,而房顶型变化则常常反映表面法线方向的不连续。
如果一个像素落在图像中某一个物体的边界上,那么它的邻域将成为一个灰度级的变化带。
对这种变化最有用的两个特征是灰度的变化率和方向,它们分别以梯度向量的幅度和方向来表示。
边缘检测算子检查每个像素的邻域并对灰度变化率进行量化,也包括方向的确定,一般使用基于方向导数掩模求卷积的方法。
常用的边缘检测算子有Robert梯度算子、Sobel算子、拉普拉斯(Laplacian)算子等等。
第三章MATLAB简介
3.1工程应用软件MATLAB简介
随着计算机技术的发展,生物工程、图像信号处理、语音信号处理、雷达工程、信号分析、时间序列分析,以及控制论、系统论均要涉及到大量的数值计算,尤其是矩阵运算,往往会使科研人员的工作进程放慢下来。
而且纷繁的编程,一方面会延误工作,另一方面也消耗大量的人力和精力对所编程序进行调试。
为了克服这种困难,MATLAB这种集所有矩阵问题及其它计算问题于一身的软件就应运而生,它易于掌握并可很方便地根据用户自己的情况进行扩展,形成新的标准子程序,且运算效率极高。
MATLAB是Mathworks公司于1982年推出的一套高性能的数值计算和可视化软件,其全称是MatrixLaboratory,亦即矩阵实验室。
MATLAB是一种交互式、面向对象的程序设计语言,它集数值分析、矩阵运算、信号处理和图形显示于一体,构成了一种方便、界面友好用户环境。
它的基本数据单元是不需要指定维数的矩阵,因此解决同样的数值计算问题,使用MATLAB要比使用Basic、Fortran、Pascal、C等语言编程效率要提高几倍,同时同这些编程语言相比,MATLAB具有编程简单直观,用户界面友好,开放性强等优点,因此广泛应用于科学工程计算当中。
MATLAB在数据可视化方面提供了很强的功能,它的绘图功能十分强大,而且使用非常方便。
它具有很多图形图像处理功能,人机交互处理能力也很强大,可对图形的坐标轴、线性等特性进行设置,还可以为图形添加标注。
它可以把数据用各种形式的图形表示出来,如它可以画平面图、三维立体图等,并可以用颜色来反映图中数据的变化,直接观察效果。
另外,MATLAB提供了一种特殊的工具:
工具箱(Toolboxes)。
这些工具箱主要包括(ControlSystem)、信号处理(SignalProcessing)、神经网络(NeuralNetworks)、控制系统模糊逻辑(FuzzyLogic)、小波(Wavelets)和仿真(Simulation)等等。
MathWorks公司和各个领域的专家还在积极地完善现有工具箱的功能,并不断推出新的工具箱。
不同领域、不同层次的用户通过对相应工具的学习和应用,可以方便地进行计算、分析及设计工作。
3.2MATLAB的主要优缺点
1)MATLAB的主要优点
其主要优点如下:
(1)界面友好,编程效率高。
MATLAB是一种以矩阵为基本变量单位的可视化程序设计语言,语法结构简单,数据类型单一,命令表达方式接近于常用的数学公式。
这使MATLAB用户在短时间内就能快速掌握其主要内容和基本操作。
MATLAB不仅能免去大量的经常反复的基本数学运算,而且其编译和执行速度都远远超过了采用C和Fortran语言设计的程序。
可以说,MATLAB在科学计算与工程应用方面的编程效率都远远高于其他高级语言。
(2)功能强大,可扩展性强。
MATLAB语言不但提供了科学计算、数据分析与可视化、系统仿真等强大的功能,而且具有可扩展性特征。
Mathworks公司针对不同领域的应用,推出了自动控制、信号处理、图像处理、模糊逻辑、神经网络、小波分析、通信、最优化、数理统计、偏微分方程、财政金融等30多个具有专门功能的MATLAB工具箱。
各种工具中的函数可以互相调用,也可以由用户自己更改。
MATLAB支持用户对其函数进行二次开发,用户的应用程序可以作为新的函数添加到相应的工具箱中。
(3)易学易用性
MATLAB不需要用户有高深的数学知识和程序设计能力,不需要用户深刻了解算法及编程技巧。
(4)高效性
MATLAB语句功能十分强大,一条语句可完成十分复杂的任务。
如一条语句可完成对指定数据的快速付立叶变换,这相当于上百条C语言语句的功能。
它大大加快了工程技术人员从事软件开发的效率.据MathWorks公司声称,MATLAB软件中所包含MATLAB源代码相当于70万条C代码。
正是MATLAB语言的这些优势,我们选择采用这种语言实现图像处理算法,利用MATLAB强大的工具包,使算法易于实现。
2)MATLAB的缺点
然而MATLAB自身存在的某些缺点限制了它的应用范围。
(1)MATLAB是一种解释性语言,所以它的语言执行效率低,这对于实时性要求较高的领域,如自动控制、信号处理等,其实时效率是较差的。
(2)MATLAB程序不能脱离其环境运行,因此它不能被用于开发商用软件。
(3)程序可以被直接看到程序的源代码,因而不利于算法和数据的保密。
3.3MATLAB在图像处理中的应用
图像处理中往往把数字化的二维图像作为二维矩阵来研究,基于矩阵运算的MATLAB可以很自然地扩展到图像处理应用领域。
在MATLAB5.2中推出了功能更强大的适应于图像处理的工具箱,常用的有图像处理工具箱、小波工具箱及数字信号处理工具箱。
利用如此多的工具,我们可以方便地从各个方面对图像的性质进行深入的研究。
图像处理工具箱几乎包括了经典图像处理的所有方面,从基本的图像增强到图像分割,MATLAB都提供了简便的函数调用来实现许多经典图像处理方法,同时,MATLAB还提供了对多种图像文件格式(如tif,bmp,jpg,pcx等)读写和显示的支持,这使得在MATLAB的集成环境中进行图像处理的实验模拟非常方便。
下面就MATLAB在图像处理中各方面的应用分别进行介绍。
(1)图像处理的基本运算
MATLAB提供了图像的和、差等线性运算,以及卷积、相关、滤波等非线性运算。
例如,covZ(a,b)实现a,b两幅图像的卷积.
(2)图像的时域分析
这里包括了图像统计特征的计算:
图像增强工具,包括Gamma较正、直方图均衡、中值滤波、自适应滤波等;
边缘检测算子,如log算子、canny算子、sobel算子、prewitt算子等等。
例如:
imhist(a)显示图像a的直方图;
B=edge(a,’log’,[],1)计算
=1时图像a的log算子边缘;
imshow(B)显示图像B。
(3)图像的变换域处理
MATLAB提供了一维和二维离散傅立叶变换(DFT),快速傅立叶变换(FFT),离散余弦变换(DCT),及其反变换函数;
以及连续小波变换(CWT),离散小波变换(DWT)及反变换函数。
例如,b=dct(a);
c=idot(b);
这两条语句实现了图像矩阵a的离散余弦变换及反变换。
(4)图像的数学形态学处理
MATLAB提供了数学形态学的基本形态算子:
腐蚀(Erode)、膨胀(dilate)算子,以及在此基础上的开、闭算子,厚化(Thicken)、薄化(Thin)算子等丰富的数学形态学运算。
以上所提到的MATLAB在图像处理中的应用都是由相应的MATLAB函数来实现,使用时只需按照函数的调用语法正确输入参数即可,具体的用法可参考MATLAB丰富的帮助文档。
对于MATLAB内部函数不能实现的问题,需要另外编程或修改有关的内部函数。
3.4小结
实践证明,MATLAB软件功能强大,语言自然且人机界面友好,开放性强,、非常容易学习和使用。
在图像处理研究中使用材ATLAB可以大大提高效率,快速实现图像处理。
鉴于此,我们选用了MATLAB工具来实现图像处理。
第四章静态靶标检测
为了在武器装备动态跟踪精度测试系统的CCD系统捕获得到的图像中,找到靶场中的靶标,并标记出靶心,根据用户需要本文提出了基于重心法的静态靶标检测方案。
4.1基于重心法的靶标检测
由于靶标检测的目的是将靶标中心识别出来,对于靶标边缘的检测没有太大的意义。
所以可以考虑应用重心法计算出靶标中心坐标,这样就可以准确、快速的检测出靶标中心。
4.1.1目标阈值分割
图像阈值分割是一种广泛使用的图像分割技术,它利用了图像中要提取的目标与其背景在灰度特性上的差异,把图像视为具有不同灰度级的两类区域(目标和背景)的组合,选取一个合适的阈值,以确定图像中的每一个像素点应该属于目标还是背景区域,从而产生相应的二值图像。
这种方法对物体与背景对比度较强的景物的分割特别有效。
另外,阈值分割不仅可以大量压缩数据,减少存储容量,而且能大大简化在其后的分析和处理步骤。
阈值分割的数学表达式为(4.1)式或(4.2)式:
(4.1)
或者,也可以:
(4.2)
针对直方图阈值分割本身的局限,以及考虑多种阈值分割的方法的特点,本文提出采用动态阈值分割的观点,即针对不同的图像的特点,选定不同的阈值。
对经过预处理后的图像,人为的根据图像的特点,手动更改选取阈值,能够更加准确的分离靶标和背景。
而且,在经过一定量的手动选取阈值后,往往积累了一定的选取经验,这样在以后的选取中,大大提高实际的选取速度。
这样更好的利用了人机交互的特点。
实验证明根据不同的图像的特点,选取适当的阈值,进行的直方图分割,一般能够满足系统要求。
阈值分割的结果:
a)原始图像
b)阈值分割后图像
4.1.2靶标中心定位
靶标中心定位采用重心法。
根据二值化后分割出的图像的目标像元数和全体目标像元位置数据,以及目标像元的总点数,计算出目标的重心。
一个M×
N的窗口中,其灰度重心位置由下列公式(4.3)式和(4.4)式求得:
(4.3)
(4.4)
(4.3)和(4.4)式中:
f(x,y)是图像在(x,y)点的像元灰度值,M,N分别为跟踪窗口内的方位,高低方向的像元数。
由于计算重心的过程是个统计平均过程,它算出的跟踪点不是个别的最亮点位置,而是图像中各个像元灰度加权平均的位置,所以以重心为跟踪点,跟踪的随机误差小,抗干扰能力强,精度高,稳定性好。
采用重心法后,可以得到十字中心的坐标。
4.1.3靶标中心显示
由重心法得到靶标中心坐标后,可以采用改变象素灰度值的方法在靶标中心画出十字,从而将靶标中心显示出来。
十字的大小可以根据靶标图像的大小而定,本文中的十字大小为横线竖线均为20个象素。
靶标中心显示效果如下:
靶标中心显示效果图
第五章用户界面设计
本章主要介绍MATLAB特有的图形用户界面(GUI)的设计及实验结果。
5.1GUI简介
用户界面是人,即用户与计算机或计算机程序的接触点或交互方式,是用户与计算机进行信息交流的方式。
计算机在屏幕显示图形和文本,若有扬声器还可产生声音。
用户通过输入设备,如:
键盘、鼠标、跟踪球、绘制板或麦克风,与计算机通讯。
用户界面设定了如
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB 静态 靶标 图像 处理 中的 应用