冠琳机械网 >> 鳗鱼养殖

一种基于特征的车辆检测方法热水系统

2022-07-15

一种基于特征的车辆检测方法

一、前言

在智能车研究领域,车辆检测技术是FCW(forward collision warning)、ACC(adaptive cruise control)、Stop & Go Cruise Control等主动安全系统的一项关键技术。用于准确地识别前方车辆并获取相关参数,为各种主动安全系统提供驾驶环境信息。

机器视觉是一种用于车辆检测的有效传感器,许多研究者针对机器视觉提出了多种车辆检测方法。(1)利用基于视觉流的方法对车辆进行检测[]。在把视觉流方法应用于车载摄像机的车辆检测时,由于汽车是实时运动的,所以对本车运动的分析精确度不高,且计算量较大,不易保证实时性。(2)基于立体视觉的车辆检测方法[3]。该方法的缺点在于成本较高,算法较复杂,对车辆本身的运动敏感,而且对摄像机的标定容易产生漂移。(3)利用基于训练的方法对车辆进行检测[]。此类方法具有较高的鲁棒性,缺点是对用于训练的样本数据的选取以及对车辆位置的精确定位比较困难。

作者采用基于特征的车辆检测方法,其算法执行速度比较快,能够适应单目视觉系统的使用需要,而且也无须像基于训练的方法那样利用选取的车辆特征集对样本数据进行训练。本方法直接从图像中提取用于车辆检测的特征,以此来判断车辆是否存在并确定车辆的位置。对图像进行分析发现,投射在路面上的车辆下方的阴影是判断车辆是否存在的一个非常稳定的特征,因此将车辆下方的阴影以及车辆的边缘作为检测的主要特征。依赖单纯一种传感器(例如机器视觉或者雷达)去完成车辆检测往往面临误检率、漏检率较高等问题[7]。为了提高车辆检测的准确性以及算法的速度,在算法中融合了雷达探测到的障碍物数据。

二、基于特征的车辆检测算法

车辆检测算法的结构图如图1所示。

该算法主要由4个模块构成。预处理模块负责对摄像机拍摄到的原始图像进行处理,从而得到后续识别所需要的图像,包括:车辆下方的阴影图像、抽取出的水平边缘图像以及垂直边缘图像。跟踪模块根据上一轮的车辆识别结果,利用原始图像数据以及预处理后得到的图像数据对这些目标进行跟踪,如果确认目标依然存在,则划定为本轮检测到的车辆;如果目标已消失,则将此目标从跟踪档案中删除。使用车辆跟踪技术可减少算法的执行时间。雷达探测模块将雷达数据和跟踪模块检测到的车辆位置进行对比,对雷达新探测到的目标物,雷达探测模块负责在图像中进行确认,如果目标物得到确认,则加入本轮检测结果中。视觉探测模块则对图像进行补充检测,对跟踪模块和雷达探测模块已检测到的车辆区域,视觉模块不再进行重复检验,因此大大地缩小了需要检测的图像区域。为了降低视觉模块的误检率,在此部分采用了较为严格的确认条件。

(一)自适应双阈值的图像预处理

从图1的车辆检测算法结构图中可以看出,对原始图像的预处理是后续车辆检测的基础。原始图像中包含了很多无用的信息和噪声,为了从原始图像中提取出所需的车辆边缘信息和车辆投射在路面上的阴影信息,必须对原始图像进行预处理。

首先利用Sobel算子对原始图像进行边缘强化,所使用的Sobel算子形式如图2所示。

GOLD系统采用了自适应阈值对图像进行二值化处理[8]。

其中m(c,r)表示经过边缘增强后图像中像素点(c,r)周围m×m大小区域内的最大灰度值,k为常数。在GOLD系统中m=7,k=2。

GOLD系统所采用的自适应阈值可以对图像的不同部分区别对待,从而得到更好的整幅图像二值化结果。但是其代价是要增加计算量来执行统计分析,降低了处理的实时性,而且在复杂的行驶环境中其稳定性也不易得到保证。因此,作者对GOLD系统所采用的自适应阈值进行了改进,提出了自适应双阈值方法对车辆在路面上的阴影进行识别。

在每一次进行图像预处理的时候,在图像上选取两个相邻的10×10个像素的正方形,分别计算两个正方形区域的平均像素灰度值,记为V1和V2。这两个正方形区域选取在图像的中下部,并且相邻,用于保证选取的区域反映的是图像中路面的平均灰度。因为单纯依靠对水平边缘的识别来确定车辆下方阴影的位置往往会受到较多噪声的干扰,所以在对阴影图像进行二值化的时候设定了两个阈值:用于经过Sobel算子进行水平边缘强化后图像的自适应阈值Ttreat和用于原始图像的自适应阈值Torigin。

式中Ctreat为计算Torigin的加权系数;Corigin为计算Torigin的加权系数。文中Ctreat=0.25,Corigin= 0.5。只有当一个像素点的原始灰度值小于Torigin并且该点经过Sobel算子进行水平边缘强化后的灰度值大于Ttreat时,该点才被认为是阴影候选点。

采用自适应双阈值图像预处理方法的好处是:

(1)通过对每一幅图像计算V1和V2值,能够自适应不同光照条件下的图像二值化要求;

(2)与GOLD系统所采用的自适应阈值相比,计算量大幅下降,每幅图像只需计算2个10×10像素的正方形区域的平均像素灰度值,无须对每一个像素点都统计其邻近区域的灰度情况;

(3)因为选取了两个正方形区域并计算它们的平均像素灰度值,取小值作为自适应阈值,能够排除路面上车道线等因素的干扰,使得最后用于分割阈值计算的平均灰度值能够更好地反映路面情况;

(4)采用当前我国土壤污染防治的严峻情势双阈值,有力地抑制了阴影图像中的噪声。

对采用GOLD系统的自适应阈值和采用作者提出的自适应双阈值方法进行算法平均执行时间的统计,如表1所示(仅图像预处理部分)。

从表1可以看出,采用本文的自适应双阈值方法进行图像预处理,会使算法效率有大幅度的提高。

利用自适应双阈值方法提取车辆阴影的效果如图3所示。

如果仅使用单阈值对阴影图像进行二值化,得到的效果如图4所示。

从图4可以看出,采用单阈值对阴影图像进行二值化会在图像中保留很多噪声,不利于后续的识别与处理。

如果不使用自适应阈值,而是使用固定阈值对强光照条件下的阴影图像进行二值化,由于选取的固定阈值是适用于弱光照条件的,当光照变强时,则根本无法从图像中提取出阴影信息,因此固定阈值方法不能够适应不同光照条件下的使用要求。采用了作者提出的自适应双阈值方法解决了上述问题,能够在各种光照条件下有效地保留车辆阴影信息,最大限度地抑制噪声。

为得到只保留水平边缘和垂直边缘的二值图,同样采用了自适应阈值。用于水平边缘图像二值化的分割阈值Thori和垂直边缘图像二值化的分割阈值Tvert分别为

式中Chori为计算水平边缘分割阈值的加权系数; Cvert为计算垂直边缘分割阈值的加权系数。文中Chori=2,Cvert=1.5。

(二)用于车辆跟踪的能量密度验证

经过图像预处理之后,得到了包含水平边缘信息的图像、垂直边缘信息的图像以及阴影信息的图像,在此基础上,跟踪模块将对上一轮检测到的数据进行跟踪检测,判断目标物是否依然存在。

跟踪算法首先根据上一轮识别到的车辆的下边界位置规划本轮下边界识别的区域,在车辆阴影图像的这个区域内对目标车的下边界进行识别。在完成本轮下边界检测的基础上,结合上一轮左、右边界的识别结果,对本轮的车辆左、右边界进行识别。在实际应用中,对于车辆左、右边界的跟踪检测常常会受到路边栏杆、树木等的干扰,尤其是当前方车辆行驶在边道时,因为路边的干扰物的垂向边缘也非常明显,所以会使得车辆垂向边界的检测结果偏离准确位置。在本文的跟踪算法中加入了对边界识别结果的能量密度验证,即当左边界识别结果右侧一定区域内或者右边界识别结果左侧一定区域内的能量密度(阴影点出现的频率)低于一定值时,则根据两条边界的置信度高低重新运行车辆垂向边缘检测。定义能量密度D如式(6)所示。

式中Ntotal是用来验证能量密度的区域的像素点数目(文中取车宽的1/4),Nshade是该区域内阴影点的数目。当D小于固定阈值Ddensity时,车辆垂向边缘检测将被重新启动(文中Ddensity=0.5)。

加入能量密度验证后,当车辆垂向边界的识别偏离准确值之后,能够很快被发现他说:“作为人类并予以校正,截取了几幅利用能量密度方法来校正垂向边界偏差的连续图像如图5所示。

图5中左侧车辆左边界的能量密度变化如表2所示。

在图5的前3幅图中,由于路边栏杆的干扰,最左边一辆车的左边界识别误差逐渐加大,当小于了能量密度验证所设定的阈值0.5后,垂向边缘检测程序重新启动,在第4幅图像中左边界识别的偏差得以校正。在完成了车辆的左、右边界跟踪检测之后,还要对车辆的上边界进行跟踪检测,最后则要完成车辆的形状验证,看跟踪得到的车辆轮廓是否在经验的形状范围之内。

(三)用来规划车辆检测范围的可变模型

为提高车辆检测准确性以及算法速度,车辆识别算法中加入了雷达探测模块。在完成了对上一轮检测到的车辆跟踪之后,该模块主要负责对雷达数据中新探测到的目标物在图像中进行确认,看其是否存在,以减小误检的可能,与此同时,缩小了下一步视觉探测模块的检测范围,提高了算法的实时性。视觉探测模块的主要功能是补充检测,即对跟踪结果和雷达探测结果之外的区域进行车辆检测。

在雷达探测模块和视觉探测模块中都使用了可变模型来规划车辆的检测范围。因为距离本车近的车辆在图像中所占的区域较大,距离远的则所占区域小。采用统一模型来进行车辆识别不能很好地与各种距离下的车辆形状吻合,因此在识别的过程中,提出了可变模型来规划车辆检测范围,从而可以满足不同距离车辆的检测需要。对于雷达探测模块,可变模型根据雷达探测到的前方车辆距离本车的纵向距离来规划相应的车辆检测范围。可变模型的距离比例S为

式中Slidar为雷达探测的前方目标物与本车间的纵向距离。

根据距离比例S定义可变模型为

式中(Xs,Ys)是利用可变模型规划的车辆阴影检测矩形区域的左下角点坐标(单位为像素);(Xe,Ye)是该矩形的右上角点坐标;(Xl,Yl)是雷达探测到的目标物位置在图像中的对应像素点坐标。视觉探测模块下的可变模型与雷达探测模块下的模型相似。

利用可变模型规划检测区域不仅可使模型能够更好地匹配车辆形状,而且能够缩小在图像中的检测范围,降低计算量。

三、试验验证

为验证算法融合雷达数据和摄像机采集的图像进行车辆识别的效果,在多种工况下进行了试验。选取其中几种工况的识别结果,如图6所示。

对205组对应的雷达数据和图像的识别结果进行统计,如表3所示。

对算法的执行时间进行了统计,在CPU为AMD 1800MHz,内存为512MB的计算机上,算法所需的最长执行时间为34.3ms,最短执行时间为14.8ms,平均执行时间为17.9ms。

由统计结果可以看出作者提出的基于特征的车辆检测算法具有较高的识别准确率,并且能够满足智能车实际应用中的实时性要求。

但是在某些特定工况下,算法的效果还有待提高,例如当路边建筑或者树木在路面上投射大片阴影时,会使车辆的阴影及边缘相对背景的对比度降低,给识别带来困难。对于夜晚的工况,则需要加入其他识别特征,例如车尾灯等协助进行车辆识别。

四、结论

文中提出了一种基于特征的车辆检测方法,该方法通过图像预处理模块、跟踪模块、雷达探测模块以及视觉探测模块的协同工作完成对本车前方车辆的识别工作。验证试验表明,该方法有较高的车辆检测准确率,算法能够满足智能车应用中的实时性要求,并且能够在多种工况下稳定工作。

参考文献

[1] KrugerW,Enkelmann W,Rossle S. Realtime Estimation and Tracking of Optical Flow Vectors for Obstacle Detection [C].Proc. IEEE IV. Detroit, M I:1995:.

[2] 谭晓军,沈伟,郭志豪.一种基于视频的道路交通流量监测方法[J].计算机应用,2005,25(5): .

[3] Franke U,Gavrila D,G rzig S,et al. Autonomous Driving Goes Downtown[J].IEEE Intelligent Systems & Their App lications,1998,13 (6):40 -48.

[4] Sun Z C919大飞机上H,George B,Ronald M. Quantized Wavelet Features and Support Vector Machines for Onroad Vehicle Detection[C].Seventh International Conference on Control, Automation, Robotics and Vision ( ICARCV’02) . Singapore, 2002: 1641 - 1646.

[5] Li X,Yao X C,Murphey YL,et al. A Real2time Vehicle Detection and Tracking System in Outdoor Traffic Scenes[C]. Proceedings of the 17th International Conference on Pattern Recognition ( ICPR’04) . Cambridge,UK,2004:.

[6] 赵英男,杨静宇.基于Gabor滤波器和SVM分类器的红外车辆检测[J]. 计算机工程,2005,31(10): 191- 92.

[7] Hofmann U,RiederA,Dickmanns E D. EMS2vision: Application to Hybrid Adaptive Cruise Control[C].Proceedings of the IEEE Intelligent Vehicle Symposium. Dearborn (MI) , USA, 2000: 468- 473.[ 8 ] BertozziM, Broggi A. GOLD: a Parallel Realtime Stereo Vision System for Generic Obstacle and Lane Detection[J]. IEEE Transactions on Image Processing, 1998,7(1):.(end)

HTML/CSS项目实例
ZooKeeper分布式
Go语言实战
友情链接