66-边缘检测算子及其在火焰图像中的应用

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

边缘检测算子及其在火焰图像中的应用徐小军,邵英,郭尚芬(海军工程大学电气与信息工程学院,湖北省武汉市430033)摘要:本文介绍了几种经典的火焰图像边缘检测算子,并利用这些算子进行火焰图像的边缘检测,总结出相对比较有效的火焰图像边缘检测算子,为进一步施行火焰特征参数的提取提供依据。关键词:火灾探测;火焰图像;边缘检测算子EdgeDetectionOperatorsandTheirApplicationinFlameImageXUXiao-jun,ShaoYing,GuoShang-fen(Dept.ofElectricalEngineering,NavalUniversityofEngineering,Wuhan430033,HubeiProvince,China)Abstract:Inthisarticle,severalkindsofclassicalflameimageedgedetectionoperatorsareintroduced.Thenweappliedtheminflameimageedgedetection.Atlastweconcludedthebesteffectiveflameimageedgedetectionoperator.Thatwillaffordgistforustopickupflame'scharacterparameters.Keywords:firedetection;flameimage;edgedetectionoperator1引言火焰图像是火灾图像探测方法的主要信息来源,其信息的丰富和直观,为早期火灾的辨识和判断奠定了基础。对火焰图像进行边缘检测既可以为火焰图像的恢复、增强和重构提供理论与方法,又可以为火焰特征的提取提供依据,成为火灾图像探测方法中不可缺少的一步。边缘一般是指图像中像素灰度有阶跃变化或屋顶状变化的那些像素的集合,可以粗略地分为阶跃边缘(stepedge)与屋顶边缘(roofedge),它存在于目标与背景、目标与目标、区域与区域、基元与基元之间[1]。边缘对图像识别和分析十分有用,它能勾画出目标物体轮廓,使观察者一目了然,包含了丰富的信息(如方向、阶跃性质、形状等),是图像识别中抽取的重要属性。近年来,随着数学和人工智能的发展,出现了一些新的边缘检测方法,如数学形态法[2]、小波变换法[3]、神经网络法、模糊检测法[4]、IFS边缘检测算子等等。而常用的方法有:基于一阶微分算子的罗伯特(Roberts)算子、索贝尔(Sobel)算子、Prewitt算子、坎尼(Canny)算子方法和基于二阶微分算子的拉普拉斯(Laplacian)算子。本文简要地介绍了几种经典算子的原理,设计了相关实验来提取火焰图像,并使用Matlab对火焰图像进行边缘检测,分析这几种经典算子的优劣,找出适合进行火焰图像边缘检测的最佳算子,以确保提取的火焰参数的准确性,提高火灾的判别精度。2边缘检测算子经典的边缘提取方法是考察图像的每个像素在某个邻域内灰度的变化,利用边缘邻近一阶或二阶方向导数变化规律,用简单的方法检测边缘,这种方法称为边缘检测局部算子法[5]。边缘检测的基本思想是通过检测每个像元和其邻域的状态,以决定该像元是否位于一个物体的边界上。如果每一个像元位于一个物体的边界上,则其邻域像元灰度值的变化就比较大。假如可以应用某种算法检测出这种变化并进行量化表示,那么就可以确定物体的边界[6]。常用的边缘检测算子主要有:罗伯特(Roberts)边缘算子、索贝尔(Sobel)边缘算子、Prewitt边缘算子、拉普拉斯(Laplacian)边缘算子、高斯-拉普拉斯(LaplacianofGaussian)边缘算子和坎尼(Canny)边缘算子。2.1罗伯特(Roberts)边缘算子罗伯特(Roberts)边缘算子是一种斜向偏差分的梯度计算方法,梯度的大小代表边缘的强度,梯度的方向与边缘走向垂直。该算子通常有下列计算公式表示:221/2[(,)]{(,)(1,1)(1,)(,1)}Gfxyfxyfxyfxyfxy(1)式中),(yxf是具有整数像素坐标的输入图像,平方根运算使该处理类似于在人类视觉系统中发生的过程,罗伯特(Roberts)操作实际上是求旋转±45°两个方向上微分值的和。罗伯特(Roberts)边缘算子定位精度高,在水平和垂直方向效果较好,但对噪声敏感。2.2索贝尔(Sobel)边缘算子索贝尔算子是一组方向算子,从不同的方向检测边缘。索贝尔算子不是简单求平均再差分,而是加强了中心像素上下左右四个方向像素的权重,运算结果是一幅边缘图像。该算子通常有下列计算公式表示:'(,)(1,1)2(,1)(1,1)(1,1)2(,1)(1,1)xfxyfxyfxyfxyfxyfxyfxy(2)'(,)(1,1)2(1,)(1,1)(1,1)2(1,)(1,1)yfxyfxyfxyfxyfxyfxyfxy(3)''[(,)]|(,)||(,)|xyGfxyfxyfxy(4)式中'(,)xfxy、'(,)yfxy分别表示x方向和y方向的一阶微分,[(,)]Gfxy为Sobel算子的梯度,),(yxf是具有整数像素坐标的输入图像。求出梯度后,可设定一个常数T,当[(,)]GfxyT时,标出该点为边界点,其像素值设定为0,其它的设定为255,适当调整常数T的大小来达到最佳效果。索贝尔(Sobel)算子通常对灰度渐变和噪声较多的图像处理得较好。2.3Prewitt边缘算子Prewitt边缘算子是一种边缘样板算子,利用像素点上下、左右邻点灰度差,在边缘处达到极值检测边缘,对噪声具有平滑作用。由于边缘点像素的灰度值与其邻域点像素的灰度值有显著不同,在实际应用中通常采用微分算子和模板匹配方法检测图像的边缘[7]。该算子通常有下列计算公式表示:'(,)(1,1)(1,1)(1,)(1,)(1,1)(1,1)xfxyfxyfxyfxyfxyfxyfxy(5)'(,)(1,1)(1,1)(,1)(,1)(1,1)(1,1)yfxyfxyfxyfxyfxyfxyfxy(6)'2'2[(,)](,)(,)xyGfxyfxyfxy(7)式中'(,)xfxy、'(,)yfxy分别表示x方向和y方向的一阶微分,[(,)]Gfxy为Prewitt算子的梯度,),(yxf是具有整数像素坐标的输入图像,。求出梯度后,可设定一个常数T,当[(,)]GfxyT时,标出该点为边界点,其像素值设定为0,其它的设定为255,适当调整常数T的大小来达到最佳效果。Prewitt算子不仅能检测边缘点,而且能抑制噪声的影响,因此对灰度和噪声较多的图像处理得较好。2.4拉普拉斯(Laplacian)边缘算子拉普拉斯算子是一个二阶导数算子,而前面提到的三种算子均为一阶导数算子。该算子是一个与方向无关的各向同性(旋转轴对称)边缘检测算子。若只关心边缘点的位置而不顾其周围的实际灰度差时,一般选择该算子进行检测。该算子通常有下列计算公式表示:2(,)(1,)(1,)(,1)(,1)4(,)fxyfxyfxyfxyfxyfxy(8)式中2(,)fxy表示数字图像中每个像素关于x轴和y轴的二阶偏导数之和,即处理后像素(x,y)处的灰度值,),(yxf是具有整数像素坐标的输入图像。由于拉普拉斯算子为二阶差分,其方向信息丢失,常产生双像素,对噪声有双倍加强作用,因此它很少直接用于边缘检测。鉴于此,Marr和Hildreth将高斯滤波和拉普拉斯边缘检测结合在一起,形成了LoG(LaplacianofGaussian)算子,即高斯-拉普拉斯算子,也常称为马尔算子(Marr-Hildreth)。该算子先用高斯算子对图像进行平滑,然后采用拉普拉斯算子根据二阶微分过零点来检测图像边缘[8]。高斯-拉普拉斯算子通常具有如下形式:2224221()1exp22rrGr(9)式中,是方差,r是离原点的径向距离,即2r=22xy,x、y为图像的横坐标和纵坐标。高斯拉普拉斯算子是两种算子的结合,既具备高斯算子的平滑特点又具备拉普拉斯算子锐化特点。平滑和锐化,积分和微分是一对矛盾的两个侧面,统一在一起后就变成了最佳因子。因为图像中包含噪声,平滑和积分可以滤掉这些噪声,消除噪声后再进行边缘检测(锐化和微分)会得到较好的效果。2.5坎尼(Canny)边缘算子坎尼算子是一类最优边缘检测算子,它在许多图像处理领域得到了广泛应用。Canny考核边缘检测算子的指标是:(1)低误判率,即尽可能地把边缘点误认为是非边缘点;(2)高定位精度,即准确地把边缘点定位在灰度变化最大的像素上;(3)抑制虚假边缘[1]。Canny从这三项指标出发,推导出了最佳边缘检测算子-Canny边缘算子。该算子的基本思想是:先对处理的图像选择一定的Guass滤波器进行平滑滤波,抑制图像噪声;然后采用一种称之为“非极值抑制”(NonmaximaSuppression)的技术,细化平滑后的图像梯度幅值矩阵,寻找图像中的可能边缘点;最后利用双门限检测通过双阈值递归寻找图像边缘点,实现边缘提取。Canny方法也使用拉普拉斯算子,该方法与其它边缘检测方法的不同之处在于,它使用2种不同的阈值分别检测强边缘和弱边缘,并且仅当弱边缘与强边缘相连时才将弱边缘包含在输出图像中,因此这种方法较其它方法而言不容易被噪声“填充”,更容易检查出真正的弱边缘。3火焰图像边缘检测本文的实验系统为火灾图像探测系统的基础部分,如图1中虚线框部分。首先用CCD摄像头摄取火焰图像,通过MV8000视频采集卡把火焰的模拟图像转化为数字图像,用MV8000自带的SDK软件开发包获取帧图像;然后经过数字图像处理实现图像模式的转换、环境光的消除、图像平滑及增强等处理,经灰度拉伸提高图像的对比度;最后分别利用上述各边缘检测算子对单帧图像进行边缘检测。其中一幅火焰图像的边缘检测结果如图2所示。一般认为,边缘线清晰、连贯性较好、能检测结果。从火焰图像边缘检测效果图中可以看图1火灾图像探测原理框图CCD摄像头MV8000视频采集卡软件开发包SDK火源火焰图像边缘检测计算火焰特征参数结果输出火灾识别系统获得帧图像数字图像处理灰度拉伸构成封闭边界线的边缘检测图为理想的图像边缘出,Roberts算子、Sobel算子和Prewitt算子的结果图边缘连续性较差(如边缘检测结果图中箭头指示部分,出现了断边),不利于火焰图像特征参数的提取。LoG算子和Canny算子的检测结果图边缘连续性好,由于Canny算子能检查出真正的弱边缘,其边缘定位比较精确,但边缘连续性稍差于LoG算子(如边缘检测结果图中箭头指示部分,出现了断边),并且容易受噪声的影响,如果配合理想的滤波器首先滤除背景噪声,Canny算子也是一种很好的火焰图像边缘检测算子,但这将使操作变得比较复杂。由此可知,LoG算子相对来说比较简单,且效果理想,是相对比较有效的火焰图像边缘检测算子。(a)火焰图像(b)Roberts算子(c)Sobel算子(d)Prewitt算子(e)LoG算子(f)Canny算子图2火焰图像边缘检测结果4结束语本文首先介绍了对火焰图像进行准确的边缘检测对整个火灾图像探测的重要性,然后对目前常用的几种经典边缘检测算子进行了分析,在此基础上,设计火灾探测实验,提取火焰帧图像并进行相应的处理,最后在Matlab中分别采用这几种边缘检测算子对火焰图像进行边缘检测。通过反复实验可以证明,罗伯特(Roberts)边缘算子、索贝尔(Sobel)边缘算子和Prewitt边缘算子对噪声较为敏感,它们只是进行简单的边缘检测,而不会对要处理的图像事先进行滤波,得到的往往是断续的、不完整的结构信息,为了能成功地检测到真正的边缘,一般都要先对原图像进行平滑来去除图像中的噪声,再进行边缘检测。

1 / 5
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功