吴 浩,胡永祥
(湖南工业大学 计算机学院,湖南 株洲 412000)
基于视频的夜间车辆检测
吴 浩,胡永祥
(湖南工业大学 计算机学院,湖南 株洲 412000)
由于夜间道路情况复杂,光照条件差,使得夜间车辆检测成为车辆检测技术的难点。提出一种基于视频的夜间车辆检测方法,首先通过图像处理的基本方法提取车前灯,然后通过对图像遍历以及遍历后缩小范围再遍历来对车灯进行定位,最后根据同一车辆两端车灯位置特征进行车灯的匹配。这种方法有效避免了对含有四个车前灯车辆的重复检测,以及不同车辆车灯之间的误匹配。
车辆检测;视频;车灯检测
随着计算机视觉技术的飞速发展,基于智能视频监控技术[1]的自动全天候进行实时分析报警的优势日益明显,使其在智能交通系统[2]、平安城市建设、航道管理和商业监控等领域普遍应用,其中在智能交通系统中的应用尤为突出。
基于视频的智能交通系统中车辆检测技术[3]是最关键的环节,路况分析、车辆计数、无人驾驶、车辆测速和智能停车等都必须进行车辆检测。由于道路情况的复杂多变、光照条件的变化以及天气的多变,都给车辆检测技术带来巨大的挑战。白天,光照条件较好,阴影问题和遮挡问题是其中的难点。在夜间,难点主要在于光线不足、光源相对较弱、遮挡问题以及背景和车辆对比度非常低。
目前,对夜间车辆检测的研究并不多,文献[4]提出联合时空信息的夜间车辆提取方法,这种方法使用帧差法提取运动区域,均值平滑滤波去除噪声,Otsu寻找分割阈值,最后提取运动车辆。这种方法比较局限于运动车辆,不能对静止车辆进行检测。文献[5]分为充足照明和低照度两种情况来检测车辆,充足照明情况下使用梯度滤波去除地面反光,再用帧间差分检测运动区域,低照度下还引入先验知识检测车前灯,但是该方法局限于运动车辆。文献[6]采用一种隔帧帧差和相邻帧差相结合的一种累积帧差的方法来检测夜间车辆。使用梯度滤波来消除路面对车灯的反光,使用连通域阈值的方法去噪,同样局限于运动车辆检测[7]。文献[8]使用了HLEPT算法[9],这种算法既可以进行车的提取,又可以进行车灯配对跟踪。文献[10]通过二值化的方法对车前灯进行分割,并根据车灯的面积、车灯之间的距离以及车灯的长宽等条件进行匹配,这种方法忽略了并排行驶车辆车灯近似,符合判断条件产生的误判。文献[11]引入改进的Boosting模糊算法,也是一种检测车灯的方法。通过SIFT方法[12]和融合多特征方法提取车灯特征,再通过改进的Boosting算法[13]进行加权投票,最后根据灯光颜色、运动信息以及车灯空间进行匹配。
本文主要研究四个车前灯车辆的检测以及并排行驶相似车辆误检率的降低,该方法主要包括车灯的提取和车灯的匹配。首先通过预处理以及车灯间的距离提取出同一车辆两端的车灯,然后再根据同一车辆两端车灯位置特征进行车灯的匹配。实验结果表明,这种方法误检率较低。
由于夜间车辆与背景对比度低,因此很难根据车辆整体的外形检测出车辆,车前灯在夜间照度高,较为明显且稳定性很好,所以可以根据车前灯来检测车辆。
首先将每一帧图像转化为灰度图像,再通过对图像的二值化处理将车灯从灰度图像中分割出来,二值化的公式为:
(1)
公式(1)中f(x,y)表示灰度图像中(x,y)处的灰度值,T为设置的二值化阈值,即若灰度图像中(x,y)处灰度值大于T,则在分割后图像中令其灰度值为255,反之令其灰度值为0。通过实验发现,当T的值设置较大时,会将一些车灯照明效果不佳的车辆误判为背景,且T越大误判率越高;而若T的值设置较小,就不会对车辆造成误判,但是受车灯光在地面产生的反射影响,且T越小影响越大。所以需要多次实验选择比较适中的T值。如图1所示,图1(a)为原图,图1(b)即为二值化处理后的图像。
图1 车前灯提取
由图1(b)可见,二值图像中车灯周围存在一些噪声,为了去除二值图像中产生的噪声,还应对图像进行腐蚀操作,图1(c)即为腐蚀操作的结果图像,由图可见,二值图像中的噪声明显减少,但是车灯区域变小,为了后期的车灯匹配,本文又对其进行了膨胀操作,结果如图1(d)所示。
处理后的图像上方即摄像头远处车灯灯光造成的反射依旧存在,但是离摄像头距离较近的部分反射已经完全去除,所以本文设置图像的下面部分作为检测区域,来进行车灯的检测匹配,其他区域不再考虑,这样不仅可以避免反射的问题,还可以提高运行速率。这里将检测区域的垂直距离设置为一辆车的长度,因为配合下文的检测区域内的车灯匹配,必须保持同一车道内最多同时出现一辆车的车前灯。检测区域划分结果如图1(e)所示,这样车灯就可以成功地从图像中提取出来了。
车灯分割出来后,需要对车灯进行定位,为后续的车灯匹配做准备工作。传统的定位方法一般是寻找分割后车灯的轮廓,然后再根据寻找到的轮廓,计算出轮廓的最小外接矩形,这样就可以定位出单个车灯。但是部分车辆夜晚开启四个车前灯,传统方法会定位出四个车灯,匹配后就会造成车辆的重复检测。所以本文使用了一种新的定位方法来定位车灯,在定位四车灯车辆时会将同一侧上下两个车灯定位在一起,这样匹配后就不会造成车辆的重复检测。
首先对图像遍历,为了避免过多的重复计算,并不需要对图片中每个点进行计算,水平方向和竖直方向每隔一个固定值计算一次灰度值。每当计算出的灰度值为255时,即判断其为车灯上的一点。然后以该点为中心,周围固定大小的正方形区域进行遍历,寻找正方形区域中所有灰度值为255的点,取其中的最小横坐标、最大横坐标、最小纵坐标以及最大纵坐标。如图2所示,设点A为初次遍历得到的灰度值为255的点,对周围正方形区域进行遍历,最后得到X1,X2,Y1,Y2,则可以取(X1,Y2)和(X2,Y1)两点作为矩形对角点,进行定位。
对于正方形区域大小的设置,从两方面考虑,一是不能够将邻近车辆车灯或者同一车辆另一侧车灯包含进来,二是在开启四车灯的车辆中,必须能够完全包含一侧的两个车灯。如图2所示,B点周围的正方形区域即图中B点周围的虚线框,不能够包含到左边车灯任何一点,但必须将下方车灯完全包含,这样才能避免车辆的重复检测。两车并排行驶时,两车之间必须留有一定的车距,而且必须大于某个值,本文将最小车距称为安全距离,如图2中,X2X3即为安全距离,所以正方形区域的1/2边长必须小于X2X3,还要求B点周围的正方形区域要将C点所在车灯完全包含进来,然而不会包含到左边车辆的车灯,C点周围的正方形区域能够将B 点所在车灯完全包含进来。
图2 车灯的定位
图3 定位结果
图3即为定位的结果图,图中可以看出,检测区域的车灯都被定位出来了,且四车灯车辆与两车灯车辆的定位结果达到了预期的效果,为下一步车灯的匹配做好了准备。
车灯定位后,需要对其进行匹配,使得同一车辆车灯配对到一起,从而检测出该车辆。在匹配过程中,还需要考虑一些特殊情况引起的误匹配和无法匹配,比如摩托车等其他车辆车灯对车灯匹配造成的影响,由于摄像头角度问题导致的同一车辆两端车灯的大小形状不一致问题,同排车辆车灯大小形状相似带来的误匹配等问题。本文主要通过车灯的外部形态特征、车灯的位置以及设置车道来对车灯进行匹配。考虑到摩托车等只含单个车灯车辆的干扰以及汽车一端车灯不亮的概率较低,所以不对单个车灯的车辆进行检测处理。
以检测区域矩形的左下角为原点,水平方向为X轴,垂直方向为Y轴,建立坐标系,如图4所示,则车灯匹配必须满足一下所有条件:
(1)同一车辆两端的车灯几乎处于同一纵坐标上,但是由于摄像头位置以及车辆行驶不可能达到绝对地平行于Y轴,因此两车灯定位矩形的对角点纵坐标之差的绝对值必须都小于一个定值b,若b偏大,会造成不同车辆车灯的无匹配,若b偏小,会造成同一车辆车灯无法匹配,通过实验可以得到这个定值b,如图4(a)所示。
(2)
(2)同一车辆两端车灯横向距离也应该在一个范围内,距离太小和距离很大都不能判定为同一车辆的两个车灯,不能进行匹配,如图4(a)所示。
(3)
通过对检测区域的车辆取样,测出车前两灯距离,最后可以得到min和max的值。
(3)如果两辆车的车灯相似度很高,而且并排行驶,很容易同时符合条件(1)和条件(2),造成两车之间的误匹配。如图4(a)所示, 车灯I和车灯II很容易配对成功,检测为一辆车,从而形成误检。对于这种情况,选择了设置车道的检测方法,车道根据视频的角度采用手动添加的方法,摄像头固定,这种方法还分为无车辆变道和有车辆变道两种情况。
①如果在检测区域内没有车辆变道,如图4(a)所示,将检测区域划分为3个车道,分别为车道ABCD、CDEF、EFGH,车灯I和车灯II为不同车辆车灯,分别在三个车道内进行条件(1)和条件(2)的判别匹配,这样车灯I和车灯II就不会进行匹配。
图4车灯匹配模式
②如果在检测区域有车辆发生变道,如图4(b)所示,车灯III和车灯IV为同一车辆两端的车灯,但是在不同的车道,①的方法是无法进行匹配的。所以这里引入虚拟的车道IJKL和KLMN,由于之前将检测区域的宽度设置为一辆车的长度,所有一个车道最多只能有一辆车通过。首先对车道ABCD、CDEF以及EFGH进行判断,设置flag,flag1,flag2都为0,若车道ABCD有车,则设标志flag为1;若车道CDEF有车,则设标志位flag1为1;若车道EFGH有车,则设标志位flag2为1。
若flag+flag1=0,则说明车道ABCD和车道CDEF都没有车辆通过,即可启用车道IJKL,就可以判断车道ABCD和车道CDEF之间有无变道车辆。
若flag1+flag2=0,则说明车道CDEF和车灯EFGH都没有车辆通过,即可启用车道KLMN,就可以判断车道CDEF和车道EFGH之间有无变道车辆。
通过这种方法,车灯III和车灯IV就可以完成配对,即可检测出该车辆。
本文使用了夜晚九点左右的单方向三车道道路监控视频作为实验视频,对于由于摄像头角度问题不能完全出现在检测区域的车辆进行了人工计数,计算各种情况的准确率。
如图5即为实验结果截图,检测区域中的矩形即为设置的车道,图5(a)中为三辆车进入检测区域被检测出来,图5(b)中检测到四车灯车辆。根据实验条件,选取静止车辆30辆、运动车辆100辆、开启四车灯车辆50辆、开启两车灯车辆100辆进行实验,表1为对误检率、丢失率以及准确率的统计。
图5 实验结果图
静止车辆运动车辆合计两车灯四车灯合计误检率/%6.6723.08142丢失率/%3.3311.54222准确率/%90.009795.38979496
本文提出的车辆夜间检测算法包含了车灯的提取以及车灯的匹配,本文方法检测对象可以是运动车辆也可以是静止车辆,可以精确地检测出两车灯车辆以及四车灯车辆,虽然没有进行跟踪,但是通过设置车道的检测方法,可以避免车辆的误检,具有较低的误检率和丢失率。
[1] 黄凯奇,陈晓棠,康运峰,等.智能视频监控技术综述[J].计算机学报,2015,38(6):1093-1118.
[2] 陆化普,李瑞敏.城市智能交通系统的发展现状与趋势[J].工程研究——跨学科视野中的工程,2014,6(1):6-22.
[3] 张晖,董育宁.基于视频的车辆检测算法综述[J].南京邮电大学学报,2007,27(3):88-94.
[4] 李熙莹,唐佳林,罗东华.联合时空信息的夜间运动车辆提取算法[J].计算机应用与软件,2010,27(10):126-127,198.
[5] 陈柏生.基于图像处理的夜视车辆检测[J]. 微型机与应用, 2012, 31(5):36-38.
[6] 李从生,柏军,周广绿.基于帧差法的夜间城市道路车辆检测[J].制造业自动化,2011,33(2):212-214.
[7] 谭荣伟,雷蕴奇,陈柏生.夜间运动车辆检测[J].计算机工程与应用,2005,41(13):227-228.
[8] Wan Weibing, Fang Tao, Li Shuguang. Vehicle detection algorithm based on light pairing and tracking at nighttime[J].Journal of Electronic Imaging,2011,20(4):1-10.
[9] Wu Haitao, Hong Huo, Tao Fang, et al. Nighttime video vehicle detection in complex environment[J]. Application Research of Computers, 2007,435(3):927-939.
[10] Zhou Shifu, Li Jianxiong, Shen Zhenqian, et al.A night time application for a real-time vehicle detection algorithm based on computer vision[J].Research Journal of Applied Sciences ,Engineering and Technology,2013,5(10):3037-3043.
[11] 朱韶平.基于改进Boosting算法的夜间运动车辆检测[J].宁夏大学学报,2014,35(1):28-32.
[12] KE Y, SUKTHANKAR R. PCA-SIFT: a more distinctive representation for local image descriptors[J]. 2004, 2(2):506-513.
[13] SCHAPIRE R E. The boosting approach to machine learning: an overview[M]. Nonlinear Estimation and Classification. New York: Springer, 2003.
Nighttime vehicle detection based on video
Wu Hao, Hu Yongxiang
(School of Computer Science, Hunan University of Technology, Zhuzhou 412000, China)
Because of the complexity of the road conditions and the poor lighting at night, the vehicle detection at night time is a difficulty for vehicle detection technology. So a nighttime vehicle detection algorithm based on video is proposed. Firstly, the headlights are segmented by the basic method of image processing, and then the headlights are located by traversing the entire image. Finally, the headlights are matched by the position feature of headlights. The method avoids the duplicate detection on vehicle which contains four headlights, and reduces the error matching between different vehicle headlights.
vehicle detection; video; headlight detection
TP391
A
10.19358/j.issn.1674- 7720.2017.20.016
吴浩,胡永祥.基于视频的夜间车辆检测[J].微型机与应用,2017,36(20):54-56,60.
2017-04-21)
吴浩(1991-),通信作者,男,在读硕士研究生,主要研究方向:图像处理。E-mail:wuhaoycth@sina.com。
胡永祥(1973-),男,博士,副教授,主要研究方向:图像处理。