基于 YOLOv3 的前车行驶状态识别与预警技术研究论文

2023-06-14 09:59:48 来源: 作者:xiaodi
摘要:在交通事故中接近60%是由于车与车的追尾碰撞所造成。更有大量研究显示,如果能在车辆追尾事故发生前一秒给驾驶员发出预警,可以避免90%以上的交通事故发生。因此,为了预防追尾事故的发生,开展对前车行驶状态识别与预警的研究很有必要。使用YOLOv3算法来深度学习训练并生成行驶中的车辆尾部检测模型,并将此模型作为车尾灯状态识别的基础框架。设计了车尾灯状态识别模型与语音报警系统,构成一个前车行驶状态识别与预警的模型。通过实验得出模型对前车状态识别的准确率达87.5%,即设计的前车行驶状态识别与预警模型具有一定的可行
摘要:在交通事故中接近60%是由于车与车的追尾碰撞所造成。更有大量研究显示,如果能在车辆追尾事故发生前一秒给驾驶员发出预警,可以避免90%以上的交通事故发生。因此,为了预防追尾事故的发生,开展对前车行驶状态识别与预警的研究很有必要。使用YOLOv3算法来深度学习训练并生成行驶中的车辆尾部检测模型,并将此模型作为车尾灯状态识别的基础框架。设计了车尾灯状态识别模型与语音报警系统,构成一个前车行驶状态识别与预警的模型。通过实验得出模型对前车状态识别的准确率达87.5%,即设计的前车行驶状态识别与预警模型具有一定的可行性。
关键词:机器视觉;车辆尾灯状态识别;YOLOv3
0引言
近些年,随着时代的进步和科技的发展,人们的消费水平越来越高,汽车已经是人们生活必不可少的代步工具。据中国新闻网已发布的消息,截止2021年底,我国汽车的保有量达到了3.02亿辆[1],全国新注册登记机动车就达3 674万辆。与2016年相比增长了近55.7%。车辆增多,必然带来交通拥堵,交通事故频发,特别是汽车追尾事故,给人民的生命财产造成重大损失。
根据调查,超过60%的车祸是因为车辆相撞造成的[2]。所以,从行车安全性的观点出发,汽车的防撞和警告就变得非常的关键。一份调查显示,在车祸之前提前预警司机,90%的车祸都可以得到预防[3]。目前的汽车探测技术主要是利用毫米波雷达、超声波雷达、激光雷达、红外线探测等多种探测手段来对汽车进行探测[4-6]。然而,由于这种新型的感应器具有造价昂贵、维护难度大等问题,因此许多学者都采用了照相机进行相关的实验。相机比其他的传感器成本低,实用性强,抗干扰能力强,信息量大,通过摄像头的视角,可以让研究者们对当前的情况做出更准确地分析,从而达到最好的效果。通过相机摄像头捕捉行驶中前车的行驶状态,及时向驾驶员发出预警信号,实现司机的安全驾驶。
总之,与雷达等相比较,采用具有更低廉的费用的照相机传感器,用作车辆的驾驶状况辨识和早期预警的图象资料收集器,并利用建立的车辆的驾驶状况辨识和警报模式来探测和辨识影像资料,能够帮助司机实现车辆的安全行驶,实现汽车正面碰撞预防。
1车辆尾部检测
对于车辆尾部,采用YOLOv3算法[7-10]训练道路实拍样本,并据此生成车辆尾部的检测模型。
1.1车辆尾部检测模型
针对车辆尾部检测模型,使用YOLOv3代码[11]来对实拍道路的样本集进行训练,代码细节已在Github上开源,从而获得车辆尾部检测模型。
(1)准备训练集
要生成车辆尾部检测模型,训练集需涵盖车辆尾部,通过道路实拍得到636张车尾样本作为训练集,使用标注工具labellmg[12]对目标进行框定标注,框选出车尾的位置,如图1所示。标注为后续检测和模型生成提供了预处理便利。
(2)模型
在开源的YOLOv3数据集代码以及原作者训练好的权重基础上进行网络调参,以得到更适应车尾模型的训练网络。
loss曲线根据训练日志数据绘制得到。损失值越小,说明模型越好。损失曲线图如图2所示,可以反映许多信息,从图中可以判定停止训练的时机,训练迭代到3700次后,loss[13]在0.04左右达到稳定,记录该权重。
IOU(Intersection-over-Union)[14]是数据集中对目标准确度检测的一个判准,图3所示曲线图展示了样本中被识别为车尾的目标的概率变换,图示值越接近1表示效果越好。由图可知训练权重过小IOU值在0.6左右,不符合训练标准。而2000次左右训练权重对应的IOU值变化不够稳定,模型不具有鲁棒性。综合上述情况,最终拟定的训练权重取到3700次。
(3)模型评估
对于生成的模型,通过混淆矩阵来分析评价,具体细节如表1所示[15-17]。TP表示模型预测为正的和实际为正的样本数量;TN表示模型预测为负和实际为负的样本数量;FP表示模型预测为正而实际为负的样本数量;FN表示模型预测为负而实际为正的样本数量。
本文用查准率(精度),查全率(漏检率),F1分数进行模型的评估,查准率和查全率是一对对应指标,当查准率高的时候,查全率一般很低;查全率高时,查准率一般很低。
使用该模型对未受训练的正负各100张测试集进行检测。结果查准率为P=100%,查全率为R=99%。则模型准确率为F1=99.5%。
(4)模型验证
在对模型评估后,进行道路实测实验,在车辆的前挡风玻璃上安装USB摄像头并将其与笔记本电脑连接,运行检测模型,以实时检测道路车辆。如图4所示,从检测效果图可以看出,即使在光线不充足的情况下,该车辆尾部检测模型仍能检测出车尾的轮廓,且有很高的准确率,验证该模型是可行的。
2识别车尾灯状态
要想识别车辆的行驶状态,主要的方法是识别车辆尾灯的变化来判断车辆的行驶状态。在车辆状态识别的研究中,假设驾驶员在驾驶车辆时遵守交通法规,并在转弯时使用转向灯。根据尾灯的变化,可以在车辆准备转弯或正在制动时,模型可以立即捕获并预警。即当驾驶员注意力不集中时,通过模型的预警就能起到辅助安全驾驶的作用。
2.1定位车辆尾灯
定位车尾灯时,首先检测识别车辆尾部状态,然后再对车尾识别框中的车尾灯进行定位。
定位的方法:通过划分灯具面积锁定车辆尾灯灯具的大致位置。由于大多数车型的尾灯区在车辆后部垂直方向的中间位置,也有部分车型在中间偏上位置,故设置灯定位框为长0.4,宽0.4,其中X、Y为车辆后部检测模型检测到车辆后部后的识别框尺寸。根据行驶中的车辆尾部检测图像中尾框尺寸的变化,尾灯定位框也会随着行驶中的车辆发生变化,以保证定位的瞬间准确性,如图5所示。
如图6所示,该模型检测到行驶中的车辆尾部后,将该车辆尾部框定,然后根据汽车尾部被车灯分割的面积,自动提取出车灯的大概位置。通过这种方法即可以把车灯的位置锁定。
2.2识别车灯状态
对于RGB彩色通道图像,由于其他颜色通道中红色图像的像素比小,红色通道中红色图像的像素比大,而且尾灯(示宽灯、刹车灯)一般均为红色,因此提取了图像中车辆尾灯所在区域的红色通道信息,减少了非车灯处像素影响车灯状态变化的判断。
如图7所示,在红色通道下二值化后的两车灯位置为白色,与车身和背景的二值化效果对比明显,而绿色通道和蓝色通道的车灯位置没有明显白色,这说明红色通道对车灯的处理效果优于其他两个通道,可以利用红色通道处理后的图像进行车灯定位。也即在车灯定位框中,红色通道下二值化后的白色像素点数变化更能反映车灯状态的变化情况。
事实上,理想状态是当前照灯关闭时,该区域为黑色,而当车灯打开时,白色像素出现。而轻微反光带来的干扰对车灯状态的判断没有太大影响,因为在实际检测时,摄像机获取的前后视频帧之间主要像素变化在于车是否亮起。对车灯状态的判断方法如下。
式中:Qr为该帧之前右车灯二值化后像素点为白色的个数;Hr为该帧之后右车灯二值化后像素点为白色的个数;Ql为该帧之前左车灯二值化后像素点为白色的个数;Hl为该帧之后左车灯二值化后像素点为白色的个数;R为该帧前后二值化后右车灯像素点为白色的数目差的绝对值;L为该帧前后二值化后左车灯像素点为白色的数目差的绝对值;Rb为后一帧减去前一帧右车灯二值化后像素点为白色的数目差绝对值;Lb为后一帧减去前一帧左车灯二值化后像素点为白色的数目差绝对值;Dr为R与L差值;Dl为L与R差值;Db为Rb与Lb差值的绝对值。
若Dl≥20且L≥25,左灯亮右灯不亮,车向左转;若Dr≥20且R≥25,右灯亮左灯不亮,车向右转;若Db≤10、Rb并且Lb≥25,车子制动。
3检测道路的分割
在实际检测时,一个检测窗口无法同时判断车辆行驶状态,因此需要检测检测窗口进行分割。
车辆在道路上行驶时,其位置的视觉状态有3种:车辆前面、左前面和右前面。如图8所示,将摄像头拍摄并传入计算机的画面分为左、中、右3个部分。用左侧画面检测车辆右转情况,中间画面检测车辆制动情况,用右侧画面检测车辆左转情况。
对于道路分割,根据车辆摄像头的安装位置,安装位置的不同,分割也有所不同。将相机安装在车辆前面挡风玻璃的中间位置,并划分3车道中间道路。如果车辆和摄像头之间的距离太近,就不能包含整个尾部,大约5 m左右就可以包含整个尾部,大于5 m的自然也可以包含在内。在模型执行程序中,左侧测量和右侧划分的测试窗口大小均为600×600,中间测试的窗口大小为600×400。
4车辆状态识别与预警模型实验
车辆状态识别与预警模型由车辆尾部检测模型结合车尾灯状态识别方法以及语音报警系统所构成。下面对车辆状态识别与预警模型进行检测实验。
4.1实验流程
使用大众汽车对模型进行实况评估,将摄像头放置于车前玻璃中部,利用USB线将电脑和摄像头相连,使得实时路况可以在笔记本上显示。录制视频路段为华南快速大道、大广高速公路和白云大道3大路段。在录制的视频中,有16段视频是车辆运行状态发生变化,尾灯可以正常工作的。其中右前车左转的视频片段有4个,前车制动的视频片段有6个,左前车右转的视频片段有6个。整个检测过程如图9所示。
编程进行语音预警包的设计,当检测到前车的运动状态后会进行前车状态的语音播报,当前车制动时播报注意前方车辆;当前车左车灯亮起会播报注意前车左转;当前车右车灯亮起会播报注意前车右转。
4.2实验结果
对以上16个视频段的检测结果如表2所示,其中检测结果为假即为识别失败,检测结果为真即为识别成功。根据检测结果计算可得出数据,经计算,所给条件下模型的准确率为87.5%。
如图10所示为检测效果图示例,在检测过程中,前方车辆在转向或制动时,前后视频帧之间车灯区域的白色像素点数的差值都大于25,所以能够准确预警。实验结果表明,提出的模型基本能对前车行驶状态进行识别与预警。
5结束语
(1)对于车辆尾部检测模型。使用深度学习方法中的YOLOv3算法训练道路实拍的数据集,生成了车辆尾部检测模型,经过评估检测得到识别准确率达到99.5%。
(2)尾灯的状态识别。本文提出对行驶中的汽车进行尾部状态识别的方法,基本框架是训练好的汽车尾部检测模型,在汽车尾部检测模型的基础上设计了一种大灯状态识别方法,即在大灯所在区域进行阈值分割,判断大灯的开灭,进而判断汽车行驶状态。实验结果表明,该方法具有一定的可行性。
(3)前车行驶状态识别预警模型。包括以下3部分:对YOLOv3算法训练的车辆尾部检测模型、大灯状态识别方法和语音报警系统。并分别对构成的前车行驶状态识别预警模型进行了实验。实验结果表明:模型基本可以实现前方车辆状态识别与预警的功能,而且模型准确率可达87.5%。
(4)实验时,出现识别失败的主要原因是模型对车尾轮廓定位的准确率还有待提高,在后期研究中可对车尾的检测模型进行完善。
综上所述,提出的前车状态识别与预警模型具有一定的意义和应用价值。
参考文献:
[1]新华社.2021年全国机动车保有量达3.95亿辆[EB/OL].http://epaper.yzwb.net/pad/con/202201/12/content_ 1020252.html,2022-01-22.
[2]胡定强,黄有,张付林.高速公路上的"头号杀手"——汽车追尾事故[J].汽车运用,2010(1):39.
[3]National Transportation Safety Board,Special Investigation Re⁃port-Highway Vehicle and Infrastructure-based Technology.For the Prevention of Rear-end Collision[R].Washington,D.C:Na⁃tional Transportation Safety Board(NTSB)Number SIR-01/01,May 2001.
[4]李斌.智能车辆前方车辆探测及安全车距控制方法的研究[D].长春:吉林大学,2002.
[5]李勇.人工智能发展推动信息安全范式转移-基于百度无人驾驶汽车的案例分析[J].信息安全研究,2016,2(11):958-968.
[6]谭华春,周洋,李克强,等.基于车尾部特征的对车辆的视觉精确定位[J].汽车安全与节能学报,2016,7(3):285-290.
[7]Redmon J,Divvala S,Girshick R,et al.You Only Look Once:Unified,Real Time Object Detection[C]//Computer Vision and Pattern Recognition.IEEE,2016:779-788.
[8]葛恭豪.机器学习算法原理及效率分析[J].电子世界,2018(1):65-66.
[9]宋焕生,张向清,郑宝峰,等.基于深度学习方法的复杂场景下车辆目标检测[J].计算机应用研究,2018,35(4):1270-1273.
[10]朱伟达.基于改进型人工势场法的车辆避障路径规划研究[D].镇江:江苏大学,2017.
[11]Alexey AB.Darknet[EB/OL].https://github.com/AlexeyAB/darknet,2018-03.
[12]Tzutalin.labelImg[EB/OL].https://github.com/tzut alin/.labe⁃lImg,2018-01.
[13]Peter Christoffersen K J.The Importance of the Loss Function in Option Pricing[J].Journal of Financial Economics,2004,72(2):291-318.
[14]Nowozin S.Optimal Decisions from Probab-ilistic Models:The Intersection-over-Union Case[C]//IEEE Conference on Com⁃puter Vision&Pattern Recognition.IEEE Computer Society,2014:548-555.
[15]王成,刘亚峰,王新成.分类器的分类性能评价指标[J].电子设计工程,2011,19(8):13-15.
[16]凌秋斌.基于机器视觉的前车行驶状态识别与预警应用研究[D].广州:华南农业大学,2019.
[17]燕红文,刘振宇,崔清亮,等.基于改进Tiny-YOLO模型的群养生猪脸部姿态检测[J].农业工程学报,2019,35(18):169-179.
