2同济大学,电子与信息工程学院,上海
收稿日期:2023年7月14日;录用日期:2023年8月17日;发布日期:2023年8月28日
摘要
交通信号灯的识别对于辅助驾驶系统是至关重要的,它可以帮助减少事故和提高行车安全。本文提出了基于YOLOv8的交通信号灯标志识别方法,该方法包括数据集的构建、模型的训练、自然场景测试三个主要部分。首先,通过网络公开的交通信号灯数据集进行标注,使用YOLOv8算法框架对数据集进行训练,得出最优模型。最后,在真实道路场景中对训练好的模型进行了测试,得到了较为准确的结果。通过实验对比,我们发现YOLOv8训练后的模型性能优异,在保证精度的情况下提高检测速度,还可以解决目标部分遮挡和小尺寸目标检测等问题,从而提高了识别的准确性和效率。在辅助驾驶系统中应用该方法可以更加精确地判断箭头指向性信号灯和全屏型信号灯,帮助提高车辆在路面上的运动安全性和稳定性。目前的大多方法仅仅针对于交通信号灯的颜色以及整体交通信号灯位置进行判断识别,本文会更细化交通灯上各式各样的方向标志颜色做出分类识别,通过YOLOv8算法在减少参数的情况下还能够大幅度减少计算资源,通过实验结果表明,迭代200轮后的模型mAP50-95便达到了82.6%,FPS达到了27.2帧/毫秒。
关键词
YOLOv8,交通信号灯,模型训练,目标检测
TrafficSignalsRecognitionBasedonYOLOv8
EnxingZhao1,ChaoWang1,2
1SchoolofInformaticsandEngineering,SuzhouUniversity,SuzhouAnhui
2SchoolofElectronicsandInformationEngineering,TongjiUniversity,Shanghai
Received:Jul.14th,2023;accepted:Aug.17th,2023;published:Aug.28th,2023
ABSTRACT
Keywords:YOLOv8,TrafficSignals,ModelTraining,PatternRecognition
ThisworkislicensedundertheCreativeCommonsAttributionInternationalLicense(CCBY4.0).
1.引言
随着汽车工业的快速发展,自动驾驶技术逐渐成为了未来汽车行业的发展方向和趋势。在实现自动驾驶的道路上,交通灯信号灯标识是非常重要的交通设施,在保障交通安全和顺畅通行方面起到至关重要的作用。对于自动驾驶车辆来说,识别路面交通标志是必不可少的一项任务。
Figure1.Trafficlightrecognition
2.算法概述
2.1.YOLOv5概述
2.2.YOLOv8概述
Figure2.YOLOv8architecture
3.实验
3.1.数据集
Figure3.Datasetexample
由可视化结果经分析可以看出gcircle类和rleft类的数量较多,反应了国内道路交通状况。从label大小分布可以看出label的大小主要分布在0.3~0.7之间,其中,x表示目标框中心点在图像的水平方向上的位置,y表示目标框中心点在图像的垂直方向上的位置。也反映了道路交通信号灯数据的另一个特点就是整体识别目标而言小目标较多。这将直接影响模型对目标检测的准确性,也是交通信号灯目标检测的难点。
Figure4.Number,sizeandcenterpointdistributionoflabels
3.2.实验环境与模型训练
Table1.Systemresultingdataofstandardexperiment
3.3.性能评估
Figure5.Precision-confidencecurve
3.4.实验结果
混淆矩阵(confusionmatrix)是一种可以直观反映算法性能的可视化效果图,通过对混淆矩阵的分析可以直观的看到模型对于每一类目标的检测准确率,以及识别错误的主要原因。以下将通过分析混淆矩阵得到本文训练的模型的准确率以及影响准确率的主要因素,它以矩阵形式呈现了模型在不同类别上的预测结果与实际标签之间的对应关系。预测为正类TP(真正例)FP(假正例)预测为负类FN(假反例)TN(真反例)其中,TP表示模型将正类正确预测为正类的样本数量,FP表示模型将负类错误预测为正类的样本数量,FN表示模型将正类错误预测为负类的样本数量,TN表示模型将负类正确预测为负类的样本数量。
Figure6.Recall-confidencecurve
Figure7.Confusionmatrix
Figure8.Testresultexample
4.模型部署
Figure9.Exampleofweb-sideinference
5.总结
本文提出一种基于YOLOv8实现的交通信号灯标志识别,实现不同环境下图像或者视频中交通信号灯标志的识别。在训练数据集的过程中需要注意迭代次数不能过少,在实验过程中就出现了因迭代次数过少而过欠拟合从而导致训练模型精度下降的现象,后来经过调整迭代次数,识别精度又回归正常。下一步笔者将继续扩大数据集中交通信号灯标志数量,主要增添不常见的、地域不同的,数据集中实例较少的交通信号灯标志种类实例,以及增加其他极端情况下的图像,从而进一步提高模型分类以及训练精度。另外对已有的基于深度学习的各模型与各优化算法进行优化研究,并探寻两者之间更好的融合方式,以达到更高的识别准确率,能够更好适应现实道路情况。