基于深度学习的非机动车骑车带人行为识别的检测方法
文献发布时间:2023-06-19 11:57:35
技术领域
本发明涉及深度学习算法技术领域,具体涉及基于深度学习的非机动车骑车带人行为识别的检测方法。
背景技术
随着时代的发展,目前道路交通情况越来越复杂。而针对非机动车这类目标小、移动灵活的物体,会涉及到较多的交通监管和安全问题。非机动车违法行为有很多种形式,如多次在机动车道行驶、逆向行驶、未佩戴头盔以及骑车带人等。而不同的违法行为对应不同的业务场景,需要不同的数据集来支持训练相应的模型。研究表明,骑车带人在发生交通事故时会引起较大的伤亡率。因此,禁止骑车带人是减少交通事故致人伤亡的有效手段,可以使得伤者的比例大大下降。
随着深度学习的兴起,一些深度学习的方法已经运用于目标检测网络,其中以深度卷积神经网络CNN最为突出。2013年R-CNN作为深度学习目标检测应用领域的先驱,将传统机器学习和深度学习进行了创造性的结合。
而后Fast R-CNN整合了R-CNN和SPP-Net的优点,使得在复杂的交通图象中可以相对快速准确地检测到非机动车车主是否骑车带人的现象。然而通过改进图像处理的方法,可以使得算法的运行速度加快,可以使得模型的检测速度大大加快,从而对于该违法行为可以有更高效的处理机制;但在解决检测同一类物体且物体间重叠部分较多时存在一定的问题,它会将原本的预测框删除,这很容易误删可能分高的预测框,影响检测的准确率。
发明内容
针对现有技术中存在的问题,本发明提供了基于深度学习的非机动车骑车带人行为识别的检测方法,在复杂的交通图象中可以快速准确地检测到非机动车是否骑车带人的现象,用于非机动车骑车带人行为识别的检测。
本发明的技术方案如下:
基于深度学习的非机动车骑车带人行为识别的检测方法,其特征在于,包括如下步骤:
步骤1)准备数据集:建立路口场景骑电动车的数据集,从路口摄像头保存的视频数据中读取帧保存图像数据;
步骤2)数据预处理:按比例裁剪图,并对图片进行数据增强的操作;
步骤3)构建模型:
3.1)用目标区域定位网络分离图片中的电动车骑行者和背景;
3.2)在骨干网络训练时,提前训练窄化子网,加入纹理特征和空间差异特征;在整体卷积网络训练时,固化窄化子网结构;
3.3)对RPN网络进行初始化,独立训练RPN网络,对产生的候选框进行Soft-NMS,并设置训练时长或训练次数;
3.4)将产生的候选区域作为输入图片,训练一个Faster R-CNN网络,引入ROI进行分类和位置参数的回归,并设置训练时长或训练次数;
3.5)使用步骤3.4)中训练得到的Faster R-CNN网络的参数,重新训练RPN网络,保持RPN网络和Faster R-CNN网络所共享的卷积层的参数不变;
3.6)对Faster R-CNN网络专有的层的参数进行调整,使得最后可以达到快速准确检测图像的效果,设置好训练时长或训练次数;
步骤4)模型测试:将准备好的测试图片或者视频对训练好的框架进行测试,通过评价指标来评判模型的质量;
步骤5)模型部署:将模型部署到服务器上进行应用。
所述的基于深度学习的非机动车骑车带人行为识别的检测方法,其特征在于,所述步骤1)中保存图像数据后,采用labelImg工具对图像格式文件进行标记,将图像中的电动车和骑行者连车带人画好框,作好是否骑车带人的正确标注,并形成相对应的xml配置文件。
所述的基于深度学习的非机动车骑车带人行为识别的检测方法,其特征在于,所述步骤2)中数据增强的操作为:对图片进行填充、翻转以及色彩搅动。
所述的基于深度学习的非机动车骑车带人行为识别的检测方法,其特征在于,所述步骤2)中对按比例裁剪及数据增强处理后的图片,结合图片大小的改变、框的相对移动,通过脚本将xml文件解析成txt格式的数据文件,将图片和文本保存在同一文件夹,按照一定比例划分训练集、验证集以及测试集。
本发明的有益效果是:
1)通过进一步改进SPP-Net算法,提出了感兴趣区域池化(Region ofInterestPooling,即ROI Pooling);感兴趣区域池化是空间金字塔池化的一个简化版本,即只有一层金字塔,也就是感兴趣区域池化只包含一种尺度;经过实验证明,通过ROI进行图像处理,比原有的R-CNN算法运行速度加快数十倍。
2)为了解决检测同一类物体且物体间重叠部分较多时会将原本的预测框删除的问题,我们采用Soft-NMS算法替代NMS,可以根据当前得分重新递归评分,而不是直接删除分数较低的相邻方框,在同一类物体高度重叠时降低了误删预测框的情况,且Soft-NMS算法在训练阶段不需要引入任何超参数,不会增加计算的复杂度。
3)将主题窄化在卷积神经网络中并联协作,在一个深度网络中,可以包含多种窄化主题,使得特征分别作为窄化子网络融入到主题框架中,得到更为优化的网络参数。
4)本发明在图像检测速度上提升了一定程度,较以往可以更快速地检测到图像数据;一定程度上提高了准确率,且模型有一定泛化能力和鲁棒性,对于协助打击非机动车违法行为有很大的意义。
附图说明
图1为本发明的Faster R-CNN算法框架图;
图2为本发明的网络训练流程图。
具体实施方式
以下结合说明书附图,对本发明作进一步描述。
如图1-2所示,基于深度学习的非机动车骑车带人行为识别的检测方法,具体实施步骤如下所述:
步骤1:准备数据集,建立路口场景骑电动车的数据集,从路口摄像头保存的视频数据中读取帧保存图像数据;采用labelImg工具对图像格式文件进行标记,将图像中的电动车和骑行者连车带人画好框,作好正确标注(是否骑车带人),并形成相对应的xml配置文件。
步骤2:数据预处理,将标注完成的图片和xml文件放在一起;为了模型有较好的效果,对图片数据进行预处理;按比例裁剪图,并对图片进行填充、翻转以及色彩搅动等数据增强的操作;结合图片大小的改变、框的相对移动,通过脚本将xml文件解析成txt格式的数据文件,将图片和文本保存在同一文件夹,按照一定比例划分训练集、验证集以及测试集。
步骤3:构建模型,
步骤3.1)用目标区域定位网络分离电动车骑行者和背景;由目标区域定位网络、目标区域生成网络以及Faster R-CNN卷积神经网络构成一个层级窄化网络,并对其进行训练;
步骤3.2)在骨干网络resnet101训练时,提前训练窄化子网,加入纹理特征和空间差异特征;在整体卷积网络训练时,固化窄化子网结构;
步骤3.3)对RPN网络进行初始化,独立训练RPN网络,设置好训练时长(训练时长为24小时,根据样本量大小可调整;或者设置训练次数为2000);
步骤3.4)将产生的候选区域作为输入图片,训练一个Faster R-CNN网络,并设置本次的训练时长(训练时长为24小时,根据样本量大小可调整;或者设置训练次数为2000);
步骤3.5)使用上一步中训练得到的Faster R-CNN网络的参数,重新训练RPN网络,保持RPN网络和Faster R-CNN网络所共享的那些卷积层的参数不变;令RPN网络特有的卷积层重新训练,设置好训练时长(训练时长为24小时,根据样本量大小可调整;或者设置训练次数为2000);
步骤3.6)保持RPN网络和Faster R-CNN网络所共享的那些卷积层不变,只微调Faster R-CNN网络专有的那几层的参数(调整学习率和优化器),使得最后可以达到快速准确检测图像的效果,设置好训练时长(训练时长为24小时,根据样本量大小可调整;或者设置训练次数为2000)。
步骤4:模型测试,将准备好的测试图片或者视频对训练好的框架进行测试,通过评价指标来评判模型质量的好坏。
步骤5:将模型部署到服务器上进行应用。
本说明书实施例所述的内容仅仅是对发明构思的实现形式的列举,本发明的保护范围的不应当被视为仅限于实施例所陈述的具体形式,本发明的保护范围也及于本领域技术人员根据本发明构思所能够想到的等同技术手段。
- 基于深度学习的非机动车骑车带人行为识别的检测方法
- 一种基于共享单车多模态数据的非机动车交通违规行为识别方法