数字图像的边缘检测毕业论文Word下载.docx
《数字图像的边缘检测毕业论文Word下载.docx》由会员分享,可在线阅读,更多相关《数字图像的边缘检测毕业论文Word下载.docx(40页珍藏版)》请在冰豆网上搜索。
Imagepre-processing;
EdgeDetection;
Contourextraction
第一章绪论
一.1数字图像处理基础
数字图像处理(DigitalImageProcessing),就是利用数字计算机或则其他数字硬件,对从图像信息转换而得到的电信号进行某些数学运算,用来提高图像的实用性[1]。
例如从卫星图片中提取目标物的特征参数,三维立体断层图像的重建等。
总的来说,数字图像处理包括点运算、几何处理、图像增强、图像复原、图像形态学处理、图像编码、图像重建、模式识别等。
一.1.1图像的概念
图像是对客观对象的一种相似性的、生动性的描述或写真。
或者说图像是客观对象的一种表示,它包含了被描述对象的有关信息,是人们最主要的信息来源。
据统计,一个人获取的信息大约有七成来自视觉。
图像根据其形式或产生方法来分类。
从人眼的视觉特点上可将图像分为可见图像和不可见图像。
其中可见图像的一个子集为图片,它包括照片、用线条画的图和画;
另一个子集为光图像,即用透镜、光栅和全息技术产生的图像。
不可见的图像包括不可见光成像和不可见量,如温度、压力及人口密度等的分布图。
按波段多少图像可分为短波段、多波段和超波段图像。
但波段图像上每点只有一个亮度值;
多波段图像上每点不只一个特性。
例如红、绿、蓝三波段光谱图像或彩色图像上的每个点具有红、绿、蓝三个亮度值,这三个值表示在不同光波段上的强度,人眼看来就是不同的颜色。
超波段图像上每个点具有几十或几百个特性。
按图像空间坐标和明暗程度的连续性可分为模拟图像和数字图像。
模拟图像指空间坐标和明暗程度都是连续变化的、计算机无法直接处理的图像。
数字图像是一种空间坐标和灰度均不连续的、用离散的数字(一般用整数)表示的图像。
这样的图像才能被计算机处理[2]。
一.1.2图像处理
对图像进行一系列的操作,以达到预期的目的的技术称作图像处理。
图像处理可分为模拟图像处理和数字图像处理两种方式。
利用光学、照像和电子学方法对模拟图像的处理称为模拟图像处理[3]。
光学图像处理方法已有很长的历史,在激光全息技术出现后,它得到了进一步的发展。
尽管光学图像处理理论日臻完善,且处理速度快,信息容量大,分辨率高,又经济,但处理精度不高,稳定性差,设备笨重,操作不方便和工艺水平不高等原因限制了它的发展速度。
从20世纪60年代起,随着电子计算机技术的进步,计算机图像处理获得了飞跃发展[4]。
所谓数字图像处理,就是利用计算机对数字图像进行系列操作,从而获得某种预期的结果的技术。
数字图像处理离不开计算机,因此又称计算机图像处理。
为了与模拟图像处理想区别,下文采用“数字图像处理”。
一.2数字图像处理的发展及应用
一.2.1数字图像处理发展前景
数字图像起源于20世纪30年代,而自20世纪70年代末以来,因数字技术和微电子技术的迅猛发展给数字图像处理提供了先进的技术手段,由于遥感等领域的应用,使得图像处理技术逐步受到关注并得到了相应的发展。
自从第三代计算机问世后,数字图像开始迅速发展并得到普遍应用。
随着信息高速公路、数字地球概念的提出以及Internet的广泛应用,数字图像处理的需求与日俱增。
其中,图像信息以其信息量大、传输速度快、作用距离远等一系列的优点成为人类获取信息的重要来源及利用信息的重要手段。
基于计算机的图像处理学也就从信息处理、自动控制系统论、计算机科学、数据通信、电视技术等学科中脱颖而出,成为研究“图像信息的获取、传输、存储、变换、显示、理解与综合利用”的一门崭新学科。
数字图像处理也是一门与国计民生紧密相连的应用科学,它已经为人们带来了巨大的经济和社会效益,不久的将来不仅在理论上会有更深入的发展,在实际应用上、科学研究、社会生产及至人类生活中会是不可缺少的强有力工具。
图像处理学所包含的内容是相当丰富的,根据抽象程度的不同可分为三个层次:
狭义图像处理、图像分析和图像理解。
狭义图像处理着重强调在图像之间进行的变换,主要是指对图像进行各种操作以改善图像的视觉效果,或对图像进行压缩编码,以减少所需的存储空间或传输时间、传输通路的要求。
它是一个从图像到图像的过程。
图像分析主要是对图像中感兴趣的目标进行检测和测量,从而建立对图像的描述。
图像分析是一个从图像到数值或符号的过程。
图像理解是在图像分析的基础上进一步研究图像中各目标的性质及其相互关系,对图像内容的理解以及对原来客观场景进行解释,来指导和规划行为。
图像理解的对象是从描述中抽象出来的符号,其处理思路与人类的思维方法有许多相似之处。
一.2.2数字图像处理的应用
图像是人类获取和交换信息的主要来源之一,图像处理的应用领域涉及到人类生活和工作的方方面面。
在计算机出现之前,模拟图像处理占主导地位。
随着计算机的发展,数字图像处理的发展速度是越来越快。
与人类对视觉机能着迷的历史相比,它是一门相对年轻的学科。
尽管目前一般采用顺序处理的计算机,对大数据量的图像处理速度不如光学方法快,但是其处理的精度高,实现多种功能的、高度复杂的运算求解非常灵活方便。
在其短短的历史中,它却成功的应用于几乎所有与成像有关的领域,并正发挥相当重要的作用[5]。
随着科学技术的发展,数字图像处理技术的应用领域也将随之不断扩大,主要有以下七个方面:
(l)航空航天技术方面
数字图像处理在航空航天方面的应用,除了对月球、火星的照片处理之外,另一方面是在飞机遥感和地质遥感技术中。
图像在空中先处理成数字信号存入磁带中,在卫星经过地球上空时,在高速传送下来,然后由处理中心分析判断。
这些图像无论在成像、存储、传输过程中,还是在判断分析中,都必须采用很多数字图像处理方法。
现在各国都在用各类卫星获取的图像进行资源调查、灾害监测、资源勘查、农业规划、城市规划。
在城市预报和对太空其它星球研究方面,数字图像处理技术也发挥了非常大作用。
(2)生物医学工程方面
数字图像处理技术在生物医学工程方面的应用十分广泛,且很有成效。
除了CT技术外,还有一类对医用显微技术的处理分析,如染色体分析、癌细胞识别等方面。
此外,在X光肺部图像增晰、超声波图像处理、心电图分析、立体定向放射治疗等医学诊断方面都广泛应用图像处理技术[6]。
(3)通信工程方面
当前的通信主要发展方向是声音、文字、图像和数据结合的流媒体通信。
其中以图像通信最为复杂和困难,因图像的数据处理量十分巨大,如传送彩色电视信号的速率达100M/S以上,要将这种高速率的数据实时传送出去,必须采用编码技术压缩信息的比特量。
在一定意义上讲,编码压缩是这些技术成败的关键。
(4)工业工程方面
在工业工程领域图像处理技术有着广泛的应用,它提高了工作效率,如流体力学图片的阻力和升力分析,自动装配线中质量检测,邮政信件的自动分类,在一定恶性环境中识别工件及物体的形状和排列状态,先进设计和制造技术中采用工业视觉等。
值得一提的是智能机器人的开发和研制,将会给工农业生产带来新的面貌,目前已在工业生产中的喷漆、焊接、装配中得到有效利用。
(5)军事公安方面
在军事和公安方面图像处理技术也举足轻重,在军事领域中,图像处理和识别用于图像的精确制导,各种侦查照片的判读,具有图像传输、存储和显示的军事化指挥系统和模拟训练系统等;
公安方面主要用于指纹识别、人脸识别、图像复原及交通控制、事故分析等。
目前已投入使用的高速公路不停车自动收费系统的车辆和车牌号自动识别就是数字图像处理技术的成功应用[7]。
(6)文化艺术方面的应用
目前这些方面的应用有发型设计、纺织工艺品设计、服装设计与制作、数字编辑、动画的制作、电子图像游戏、文物资料照片的修复,运动员动作分析和评分等等,计算机美术的时代正在到来。
(7)其它方面的应用
社会生活中各个方面都可以发现数字图像处理的影子,如地理信息系统中二维、三维电子地图的自动生成、修复等,教育领域中各种辅助教学系统研究、制作和流媒体技术领域等等。
一.3VisualStudio2005简介
VisualC++是微软公司提供的基于C/C++的应用程序集成开发工具。
VisualC++拥有丰富的功能和大量的扩展库,使用它能有效的创建高性能的Windows应用程序和Web应用程序。
目前已成为国内应用最广泛的高级程序设计语言之一[8]。
VC的优越性主要表现在以下几个方面:
(1)面向对象、开发分布式应用,面向对象的应用程序框架MFC的应用,极大地简化了程序员的编程工作,提高了模块的可重用性。
(2)由于面向对象编程的可重用性,就可以在应用程序中大量采用成熟的类库,从而缩短了开发时间。
开发的应用程序运行效率高、具有健壮性。
(3)能够生成多线程应用,而多线程应用对于增加并发响应有实际意义。
应用程序更易于维护、更新和升级。
继承和封装使得应用程序的修改带来的影响更加局部化。
在2005年,微软发布了VisualStudio2005,是能开发跨平台的应用程序,如开发使用微软操作系统的手机程序等。
VisualStudio2005能帮助用户直观的、可视地设计程序的用户界面,可以方便的编写和管理各种类,维护程序源代码,从而提高了开发效率[9]。
VisualStudio2005有以下优点:
(1)集成
用户界面集成:
VisualStudio2005提供横跨整个SDLC(同步数据链路控制)工具套件的、一致的用户体验。
对于开发人员而言,可以在他们当前的开发环境中使用某些活动。
数据集成:
通过使用一个公共的横跨工具集的数据仓库,VisualStudio2005解决了在大多数SDLC工具中建立数据仓库这一问题,并启动了一个聚合的项目状态视图。
工程集成:
在VisualStudio2005中,工具行为由项目开始时选择的过程决定。
通过将过程与工具相集成,VisualStudio2005帮助确保在项目各阶段之间或各种项目角色之间避免丢失任何内容。
(2)扩展性
用户界面扩展性:
VisualStudio2005利用现有的VSIP计划,将补充的产品和服务插入到VisualStudio2005集成开发环境之中。
数据扩展性:
VisualStudio2005利用TFCS将这些工具集成在一起。
TFCS提供一组能够将工具集成在一起的工具,无需工具间的紧密耦合。
过程扩展性:
VisualStudio2005使用方法论模板来定义每个项目将遵循的过程。
不存在使用于所有组织、以至于一个组织内所有项目的通用过程。
第二章图像的预处理
2.1图像的平滑滤波
在获取数字图像的过程中,由于要经过摄像、扫描等操作环节,在经过这些环节时会受到仪器及周围环境等外界因素的影响,使获取的数字图像的位置和形状发生变化,导致图像失真或者是图像上含有各种各样的噪声。
因而为了比较精确地提取图像的轮廓,这就需要对图像进行一定的预处理。
图像预处理的工作主要是对图像进行平滑滤波、边缘增强等。
在图像处理中经常会用到模板,也就是一个矩阵,即把图像中的相应像素点与这个模板进行卷积或者其它运算。
这种模板卷积的操作理解为相关,也就是说如果图像局部区域和这个模板比较相似,卷积结果就会大,不相似,结果就会小。
这样如果你的模板是一个平滑的(比如每个值都一样),那么图像里平滑的地方和模板卷积就很大,反而不平滑的地方和它卷积后就很小,甚至看不到了,这就是低通滤波[10]。
卷积运算可看作是加权求和的过程,使用到的图像区域中的每个像素分别于卷积核(权矩阵)的每个元素对应相乘,所有乘积之和作为区域中心像的新值。
卷积核就是卷积时使用到的权用一个矩阵表示,该矩阵与使用的图像区域大小相同,其行和列都是奇数,是一个权矩阵。
卷积示例:
3×
3的像素区域R与卷积核G的卷积运算:
R5(中心像素)=R1G1+R2G4+R3G7+R4G2+R5G5+R6G8+R7G3+R8G6+R9G9
式(2.1)
2.1.1图像平滑
如前所述,由于在获得图像的过程中有许多干扰因素(噪声)存在,所以为了能够比较精确的还原图像,一般首先要对图像进行平滑操作,以便消除图像中的噪声成分。
但是由于图像中的噪声和图像中物体的边缘信息十分类似,都表现为高频跃变。
所以对于图像滤波的基本要求就是要在不损坏图像的轮廓及边缘等重要信息的基础上,如何尽量使图像更清晰,机器视觉效果更好[11]。
如下是一种比较常用的图像平滑方法:
邻域平均法:
取输入图像上像素S(i,j)的邻域上所有像素的平均灰度值作为该像素的输出值P(i,j),这样就可以使原图像的噪声降低。
即当邻域大小为n
n时,上述平均过程可表示为:
式(2.2)
通常,我们在离散图像中一般是取3×
3邻域,则其相应的起平滑作用的加权矩阵为:
式(2.3)
采用这样的平滑矩阵对图像平滑后,反映在视觉效果上,就是我们能感觉到图像变得比原图柔和,噪声淡化,而灰度变化显得更加平缓。
只是这种方法没有仔细考虑边缘跃变和噪声的实质差别,所以滤波效果一般。
如图:
图2-1原图图2-2图像平滑处理效果图
2.1.2图像中值滤波
为了抑制噪声,通常我们会采用低通滤波,但由于边缘轮廓也包含有大量的高频信息,所以低通滤波在过滤噪声的同时,也使得边界变模糊,为了在过滤噪声的同时,还能很好的保护边缘轮廓信息,因此本文用了中值滤波方法。
它是一种非线性滤波器,取灰度值居中的像素值为窗口中心像素的灰度值。
中值滤波是基于排序统计理论的一种能有效抑制噪声干扰的非线性信号处理技术[12]。
中值滤波的基本原理是把数字图像或数字序列中一点的值用该点的一个邻域中各点值的中值代替,让周围的像素值接近真实值,从而消除孤立的噪声点。
此种方法是通过去掉某种结构的二维滑动模板,将模板内的像素按照像素值的大小进行排序,生成单调上升(或下降)的二维数据序列。
二维中值滤波输出可以用式子表示为g(x,y)=med{f(x-k,y-1,(k∈W))},其中f(x,y),g(x,y)分别为原始图像和经滤波处理后的图像。
W为二维模板,通常为2×
2,3×
3区域,也可以是不同形状,比如线状,圆形,十字形,圆环形等。
这种方法主要起到保留图像中的低频成分,减少高频成分的作用。
对图像进行傅立叶变换后,图像中尖锐的灰度跃变就反映在傅立叶频域的中高频分量上,因而用低通空间滤波的方法就正好可以用来去掉图像中的峰状噪声,可以弱化中高频分量。
我们一般通常使用的低通3×
3空间滤波模板如下:
式(2.4)
其效果图如下:
图2-3原图图2-4中值滤波处理效果图
另外,这些模板前面的加权系数用来保证在图像处理前后,图像的亮度不会出现偏差。
而对图像中没有高频成份的区域来说,这个区域中的像素值应该保持不变或者变化缓慢。
当用一个低通滤波函数对这个区域进行卷积时,加权系数与邻域像素分别相乘并求和,即可得到邻域中心像素的新值。
如果邻域中所有像素的值都相同,则中心像素的新值与原值相同。
这就是所有的低通滤波卷积核与其卷积系数之积均为l的原因,经过这样的卷积处理后就保留了图像的低频部分。
而当卷积核移动到图像的高频区域时,像素值之间的任何快速变化经过卷积计算,必须与邻域中其它像素取平均,这样就降低了高频成份[13]。
反映在视觉效果上,图像经过低通滤波处理后,会显得有些模糊。
这是由于削弱了图像的高频成份,图像中像素值的突变被平均值所代替。
但是由于低通滤波中大量采用浮点数进行卷积计算,因此如果用软件来实现,运算时间会很长。
低通滤波也可以用来锐化图像,如果我们从原图像中减去经过低通滤波卷积处理过的图像,也就是说若从原图像中减去该图像的低频成分,则所得图像的高频成份就将相对增强,并且没有增加新的噪声。
经过这样处理的图像看上去比原图像的边缘特征会显得更突出一些,我们可以利用这个方法来锐化那些由于雾或遮盖而变得很不清晰的图像。
2.2图像增强
图像的边缘增强采用的是去卷积的处理方法。
为了更好地识别图像中的某些特征,需要加强这些特征的轮廓,也就是边缘增强操作,然后对增强后的图像进行二值化处理以提取图像特征。
边缘增强算法处理的目的是要突出图像的边缘,除边缘以外图像中的其它内容经过这一处理后通常都被削弱甚至被完全去掉。
因此,处理后的图像往往就不像原图了,而且增强后边界的亮度与原图中边缘周围的亮度变化率成正比。
下面简要说明以下三种不同的边缘增强方法。
这些方法都是以待处理像素为中心的领域作灰度分析为基础的,并且正是利用像素邻域中灰度变化信息来判别与突出边缘的。
还应该注意这里所有采用卷积的边缘增强算法都是线性的,这些算法都是一次乘积的和。
2.2.1拉普拉斯锐化
有时为突出图像轮廓,使图像轮廓变得更清晰一些,需要对图像进行锐化(增强)处理,对图像实行微分运算可实现锐化的目的[14]。
拉普拉斯算法就是一种常用的锐化模型,其具体描述如下所示:
式(2.5)
上述算法是用来针对连续函数的,它还有一个对应的离散形式的公式可以适用于离散数字图像,在这个公式中用差分运算代替了微分运算:
式(2.6)
其相应的加权矩阵为:
式(2.7)
这是一种高通滤波方法,可增强图像的高频成份。
虽然高通空间滤波可增强图像的高频成份而不改变图像的低频成份,但是相对于图像中的高频成份来说,图像的低频成份还是被削弱了。
由于图像的边缘和细节主要反映在图像频谱的高频分量,因而对图像进行高通滤波就相应的对图像作了边缘增强。
在采用高通滤波的方法锐化图像时,通常也伴随着会放大图像中的噪声。
常用的高通3×
式(2.8)
利用这些模板对f(x,y)进行卷积,所得到的图像将使边缘突出、细节清晰。
在高频滤波器中卷积核中心点的值最大的那个卷积系数起着关键的作用。
当这个卷积系数经过图像中的高频部分(即灰度值有突变部分)时,由于卷积核中心点卷积系数很大,所以在卷积结果中占了很大的比重(卷积核中除中心点以外其余各负的卷积系数值只是对上述放大效应起一些削弱作用),所以卷积结果是使己有的灰度突变变得更突出,也就是说经过处理后,图像中像素值之间的灰度差得到增强,而对像素值较恒定的区域则保持不变。
像素值变化不大的区域(低频成分区域)不受此变换的影响。
另外人们还发展了一种图像增强算法,它是完全基于图像中的每个像素点灰度值的统计结果并进行一定的模糊运算而进行的。
首先将待处理的图像影射为一个模糊矩