掌桥专利:专业的专利平台
掌桥专利
首页

基于截尾注意力机制的Yolov5道路车辆检测方法

文献发布时间:2024-04-18 20:02:18


基于截尾注意力机制的Yolov5道路车辆检测方法

技术领域

本发明涉及计算机视觉技术领域,尤其涉及一种基于截尾注意力机制的Yolov5道路车辆检测方法。

背景技术

随着人工智能技术的进步,深度学习在计算机视觉领域得到了广泛应用,尤其在车辆目标检测方面。车辆目标检测一直是一个具有挑战性的问题,并具有广泛的应用前景。传统的方法需要手动提取特征和构建分类器,容易受到环境变化的影响,需要大量的调整和优化。近年来,基于深度学习的车辆目标检测算法在准确率和处理速度方面取得了显著提升,成为研究的焦点。

邹伙宗,邓守城发表的《基于深度学习的车辆目标检测算法综述[J]》(时代汽车,2023,(15):16-18)的论文指出车辆目标检测算法分为传统的目标检测算法和基于深度学习的目标检测算法。传统的目标检测算法一般包含3个步骤:区域选择,特征提取和特征分类。区域选择是在输入图像中寻找可能包含待检测物体的区域的过程。滑动窗口技术是一种常见的区域选择方法。特征提取是从选定的区域中使用人工设计的方法来提取图像的特征。然而,手动设计特征需要大量的时间和精力,限制了算法的扩展性和泛化能力。特征分类是对提取的特征进行分类,以判断该区域是否包含待检测物体,并进行识别。基于深度学习的目标检测算法可以直接从原始图像中学习特征表示,避免了手动设计特征的过程。目前常见的深度学习目标检测算法分为两种类型:基于深度学习的两阶段检测算法(如R-CNN系列)和基于深度学习的单阶段检测算法(如YOL0系列)。这些算法都使用卷积神经网络作为特征提取器,并通过不同的网络结构和技巧来实现目标检测。与传统的手工特征方法相比,基于深度学习的算法在准确率和运行速度上都有较大的提升。但车辆检测任务要求算法有很高的准确率和很快的运行速度,上述深度学习算法在这两方面有所不足。综上所述,现有的车辆检测方法有以下问题:

1.传统的目标检测算法需要人工设计特征,这种方式不仅耗时而且限制算法的扩展性和泛化能力。

2.基于R-CNN系列网络的目标检测算法运算时间长。

3.基于YOLO系列网络的目标检测算法准确率稍差。

发明内容

本发明的目的是解决上述现有技术中存在的问题。具体地,采用MobileNetV2以及截尾注意力机制作为主干网络,采用融合检测头部作为检测头部,利用训练样本集来优化主干网络,利用测试样本集,挑选出优化效果最好的主干网络,作为道路车辆识别网络,并实现对道路车辆的识别工作。相较于传统检测方法,本发明方法,由于采用MobileNetV2作为主干网络,可以加快对于车辆目标的检测速度,适应车辆目标快速移动的特点,采用融合检测头部,提高对车辆目标检测速度,采用截尾注意力机制,抑制复制背景对检测能力的影响,提高对道路车辆的识别率。

为了实现上述目标,本发明提供了一种基于截尾注意力机制的Yolov5道路车辆检测方法,将采集到的道路车辆图像通过改进Yolov5网络结构,经训练得到最优检测效果的道路车辆识别网络,并使用该车辆识别网络对道路车辆完成识别,具体包含以下步骤:

步骤1,道路车辆图像的采集和处理;

采集D类道路车辆图像,其中D记为道路车辆图像的种类数;

在D类道路车辆图像中的每一类中选取M张道路车辆图像,得到M×D张道路车辆图像,然后对M×D张道路车辆图像分别采用Z种数据增强方法实现数据增强,获得Z×M×D张道路车辆图像,并将该Z×M×D张道路车辆图像组成一个训练样本数据集;

在D类道路车辆图像的每一类中再选取M张图像之外的N张道路车辆图像得到N×D张道路车辆图像,将该N×D张道路车辆图像组成一个测试样本数据集,其中N≠M;

步骤2,建立基于截尾注意力机制和MobileNetV2主干网络的改进Yolov5网络,具体的,所述改进Yolov5网络包括主干网络、Head结构和检测头部;

步骤2.1,采用MobileNetV2模块作为主干网络,所述主干网络结构包括:输入通道数为32的MobileNetV2模块α

主干网络的输入为MobileNetV2模块α

步骤2.2,采用改进FPN+PAN网络作为Head结构,所述Head结构包括:一个卷积核大小为1×1通道数为512的卷积层χ

Head结构有一个输入,记为输入Input,所述输入Input接主干网络的SPPF模块层γ

步骤2.3,采用融合检测头部作为检测头部,所述检测头部的结构包括:卷积核大小为1×1输入通道数为256的卷积层Z

融合检测头部的输入有三个,分别与Head结构的三条输出output

步骤3,对步骤2建立的改进Yolov5网络进行训练,获得实现最优检测能力的网络,并将该具有最优检测能力的网络作为道路车辆识别网络,具体步骤如下:

步骤3.1,将所获得训练样本集中的道路车辆图像的尺寸统一设置为E×E;

步骤3.2,从训练样本集中随机抽取B张道路车辆图像,并组成一个集合Γ,Γ=(y

随机为图像y

定义预测类别概率矩阵O

对预测类别概率矩阵O

步骤3.3,将步骤3.2随机抽取到的B张道路车辆图像输送进改进Yolov5主干网络中并更新每张道路车辆图像的预测类别概率矩阵O

步骤3.4,通过更新后的各个预测矩阵与实际矩阵之间计算的损失对主干网络进行优化,其具体过程为:

将道路车辆图像的各个预测矩阵和实际矩阵进行对比,获得损失函数loss,通过梯度下降法获得最小化损失函数loss,实现对主干网络的优化;

步骤3.5,重复步骤3.2至步骤3.4,直至训练样本集中的所有道路车辆图像都被选取过,其中,如果最后一轮选取中,样本训练集剩下的道路车辆图像数小于B,则从抽取过的道路车辆图像中再随机选取道路车辆图像加以补充;

将通过步骤3.2-步骤3.5实现优化的主干网络标记为第h世代的主干网络T

步骤3.6,采用测试样本集图像计算出第h世代的主干网络T

步骤3.6.1,定义D类道路车辆中任意一类道路车辆为第i类种车辆,i=1,2,...,D;

定义预测框为网格上标记的矩形框,其中预测类别概率矩阵O

步骤3.6.2,从0-1种随机选取不相等的n个小数组成重叠度阈值集K,K={K

定义TP表示第i类车辆中重叠度I≥第j个重叠度阈值K

步骤3.6.3,按照步骤3.6.2的方法计算重叠度阈值集K中所有重叠度阈值在第i类车辆中的精确度和召回率,获得n个召回率R

将P

步骤3.6.4,按照步骤3.6.2-步骤3.6.3的方法计算D类道路车辆中每一类道路车辆的AP值,获得D个AP值F

步骤3.7,设重复次数为G,G次重复步骤3.4-步骤3.6,得到一个网络集合T和一个平均AP值集合V,T={T

记V

步骤4,利用道路车辆识别网络对道路车辆进行识别。

优选地,所述的MobileNetV2模块结构包括:一个卷积核大小为1×1的卷积层χ

所述的MobileNetV2模块由沿主干网络输入-输出方向并联地两条支路构成,具体如下:

第一条通路由卷积层χ

优选地,所述Head结构由沿主干网络输入-输出方向依次串联的结构组成,具体如下:

将卷积层χ

优选地,所述截尾注意力机制TMA的实现步骤如下:

所述截尾注意力机制TMA的输入为特征图Q={Q

将通道水平展平向量C

对有序的通道水平展平向量

其中sort(·)表示对特征向量按从小到大的顺序排列,τ

所述沙漏形模块的具体操作如下:

对水平方向和垂直方向的通道描述符M

ReLU函数的表达式如下:

其中,

sigmoid函数表达式如下:

其中,e表示指数,

优选地,所述利用道路车辆识别网络对道路车辆进行识别的具体步骤如下:

步骤4.1,输入一张未识别的原始道路车辆图像,并完成以下的图像处理过程:将此未识别的原始道路车辆图像的尺寸设置为E×E;

将经过前述处理的未识别原始道路车辆图像记为图像Y

步骤4.2,在图像Y

步骤4.3,将图像Y

将置信度L

若L

若L

步骤4.4,重复步骤4.3,直到图像Y

与现有技术相比,本发明的有益效果如下:

1.本发明考虑到传统的目标检测算法不能很好的完成车辆检测任务,因此选用性能更好的深度学习算法。

2.本发明提出一种新型注意力机制,能自使用提出物体的重要特征,提高了深度学习算法的准确率。

3.本发明使用轻量化的主干网络来提取特征,能减少算法的运行时间。

4.本发明采用MobileNetV2以及截尾注意力机制作为主干网络,采用融合检测头部作为检测头部,利用训练样本集来优化主干网络,利用测试样本集,挑选出优化效果最好的主干网络,作为道路车辆识别网络,并实现对道路车辆的识别工作。相较于传统检测方法,本发明方法,由于采用MobileNetV2作为主干网络,可以加快对于车辆目标的检测速度,适应车辆目标快速移动的特点,采用融合检测头部,提高对车辆目标检测速度,采用截尾注意力机制,抑制复制背景对检测能力的影响,提高对道路车辆的识别率。

5.本发明的主干网络中将MobileNetV2替换原来的CSPDarknet53,使网络更加的轻量化。

6.本发明的Head结构包括基于截尾操作的注意力机制TMA,提高主干网络的特征提取能力。

7.本发明通过使用训练样本集对主干网络进行优化进而得到具有最佳识别能力的车辆检测网络,并通过该网络对车辆进行检测和识别。本发明相比于传统的检测方法,能更快更好的提取特征,提高网络的识别能力。本发明的方法在测试样本集中的准确度,均高于其他方法,能更好的适应复杂的车辆道路环境。

附图说明

图1是本发明道路车辆识别方法的流程图;

图2是本发明道路车辆识别方法的示意框图;

图3是本发明实施例中截尾注意力机制实现步骤示意图;

图4是本发明实施例中本发明车辆识别方法和其他方法的mAP对比图。

具体实施方式

下面将结合附图和具体的实施方式对本发明的技术方案进行清楚、完整的描述。

图1是本发明道路车辆识别方法的流程图,图2是本发明道路车辆识别方法的示意框图,由图1和图2可见,本发明提供了一种基于截尾注意力机制的Yolov5道路车辆检测方法,该检测方法将图像采集器采集到的道路车辆图像通过经训练得到最优检测效果的改进Yolov5网络,并使用该车辆识别网络对道路车辆完成识别,具体包含以下步骤:

步骤1,道路车辆图像的采集和处理。

采集D类道路车辆图像,其中D记为道路车辆图像的种类数;

在D类道路车辆图像中的每一类中选取M张道路车辆图像,得到M×D张道路车辆图像,然后对M×D张道路车辆图像分别采用Z种数据增强方法实现数据增强,获得Z×M×D张道路车辆图像,并将该Z×M×D张道路车辆图像组成一个训练样本数据集;

在D类道路车辆图像的每一类中再选取M张图像之外的N张道路车辆图像得到N×D张道路车辆图像,将该N×D张道路车辆图像组成一个测试样本数据集,其中N≠M。

在本实施例中,取D=2,M=1003,Z=8,N=250。

在本实施例中,Z=8,具体包括如下的8种图像变换方式:,随机平移,随机裁剪,亮度变换,附加随机高斯噪声,随机偏转,随机翻转,添加随机区块遮挡、马赛克数据增强。

步骤2,建立基于截尾注意力机制和MobileNetV2主干网络的改进Yolov5网络,具体的,所述改进Yolov5网络包括主干网络、Head结构和检测头部。

步骤2.1,采用MobileNetV2模块作为主干网络,所述主干网络结构包括:输入通道数为32的MobileNetV2模块α

主干网络的输入为Mobi1eNetV2模块α

在本实施例中,所述的MobileNetV2模块结构包括:一个卷积核大小为1×1的卷积层χ

所述的MobileNetV2模块由沿主干网络输入-输出方向并联地两条支路构成,具体如下:

第一条通路由卷积层χ

步骤2.2,采用改进FPN+PAN网络作为Head结构,所述Head结构包括:一个卷积核大小为1×1通道数为512的卷积层χ

Head结构有一个输入,记为输入Input,所述输入Input接主干网络的SPPF模块层γ

在本实施例中,所述Head结构由沿主干网络输入-输出方向依次串联的结构组成,具体如下:

将卷积层χ

将卷积层χ

在本实施例中,所述截尾注意力机制TMA的实现步骤如下:

所述截尾注意力机制TMA的输入为特征图Q={Q

将通道水平展平向量C

对有序的通道水平展平向量

其中sort(·)表示对特征向量按从小到大的顺序排列,τ

所述沙漏形模块的具体操作如下:

对水平方向和垂直方向的通道描述符M

ReLU函数的表达式如下:

其中,

sigmoid函数表达式如下:

其中,e表示指数,

图3为本发明实施例中截尾注意力机制实现步骤示意图。

步骤2.3,采用融合检测头部作为检测头部,所述检测头部的结构包括:卷积核大小为1×1输入通道数为256的卷积层Z

融合检测头部的输入有三个,分别与Head结构的三条输出output

步骤3,对步骤2建立的改进Yolov5网络进行训练,获得实现最优检测能力的网络,并将该具有最优检测能力的网络作为道路车辆识别网络,具体步骤如下:

步骤3.1,将所获得训练样本集中的道路车辆图像的尺寸统一设置为E×E;

步骤3.2,从训练样本集中随机抽取B张道路车辆图像,并组成一个集合Γ,Γ=(y

随机为图像y

定义预测类别概率矩阵O

对预测类别概率矩阵O

步骤3.3,将步骤3.2随机抽取到的B张道路车辆图像输送进改进Yolov5主干网络中并更新每张道路车辆图像的预测类别概率矩阵O

步骤3.4,通过更新后的各个预测矩阵与实际矩阵之间计算的损失对主干网络进行优化,其具体过程为:

将道路车辆图像的各个预测矩阵和实际矩阵进行对比,获得损失函数loss,通过梯度下降法获得最小化损失函数loss,实现对主干网络的优化;

步骤3.5,重复步骤3.2至步骤3.4,直至训练样本集中的所有道路车辆图像都被选取过,其中,如果最后一轮选取中,样本训练集剩下的道路车辆图像数小于B,则从抽取过的道路车辆图像中再随机选取道路车辆图像加以补充;

将通过步骤3.2-步骤3.5实现优化的主干网络标记为第h世代的主干网络T

步骤3.6,采用测试样本集图像计算出第h世代的主干网络T

步骤3.6.1,定义D类道路车辆中任意一类道路车辆为第i类种车辆,i=1,2,...,D;

定义预测框为网格上标记的矩形框,其中预测类别概率矩阵O

步骤3.6.2,从0-1种随机选取不相等的n个小数组成重叠度阈值集K,K={K

定义TP表示第i类车辆中重叠度I≥第j个重叠度阈值K

步骤3.6.3,按照步骤3.6.2的方法计算重叠度阈值集K中所有重叠度阈值在第i类车辆中的精确度和召回率,获得n个召回率R

将P

步骤3.6.4,按照步骤3.6.2-步骤3.6.3的方法计算D类道路车辆中每一类道路车辆的AP值,获得D个AP值F

步骤3.7,设重复次数为G,G次重复步骤3.4-步骤3.6,得到一个网络集合T和一个平均AP值集合V,T={T

记V

在本实施例中,B=16,S=416,G=51。

步骤4,利用道路车辆识别网络对道路车辆进行识别。

在本实施例中,所述利用道路车辆识别网络对道路车辆进行识别的具体步骤如下:

步骤4.1,输入一张未识别的原始道路车辆图像,并完成以下的图像处理过程:将此未识别的原始道路车辆图像的尺寸设置为E×E;

将经过前述处理的未识别原始道路车辆图像记为图像Y

步骤4.2,在图像Yd上等分网格并将其中任意一个网格记为网格K

步骤4.3,将图像Y

将置信度L

若L

若L

步骤4.4,重复步骤4.3,直到图像Yd的所有网格都被选取过,然后根据待识别道路车辆图像每一个网格中预测框判断的结果,将预测框标记在图像Y

在本实施例中,U≥3。

到此为止,对待识别道路车辆的检测完毕。

在以上检测过程中,步骤2所述SPPF模块、Concat模块层的具体设置如下。

所述SPPF模块由沿主干网络输入-输出方向依次串联的四层结构构成:第一层结构为卷积核大小为1×1通道数为512的卷积层;第二层结构为从第一层结构中所述卷积层输出的四条并列通路,分别记为通路κ1、通路κ2、通路κ3和通路κ4,通路κ1由沿主干网络输入-输出方向依次串联而成的三个池化层构成,通路κ2由沿主干网络输入-输出方向依次串联而成的两个池化层构成,通路κ3由沿主干网络输入-输出方向依次串联而成的一个池化层构成,通路κ4由第一层结构直接输出,其中,所述池化层均为卷积核大小为5×5的最大池化下采样层;第三层结构为Concat模块层,输入为第二层的四条通路,输出串行连接到第四层中,第四层结构为一个卷积核大小为1×1通道数为512的卷积层。

所述的Concat模块层结构如下:将输入的两通道矩阵前后连接,返回一个连接后的矩阵副本。

图4为本发明道路车辆检测方法和其他识别方法均值平均AP值V

总之,本发明方法通过对Yolov5网络添加MobileNetV2主干网络及截尾注意力机制,提高了对道路车辆的识别能力,道路车辆检测速度得到了较大提高,能够很好满足复杂道路环境的应用需求,更好的为道路安全事业服务。

相关技术
  • 一种加入注意力机制的YOLOv5神经网络车辆检测方法
  • 基于通道非降维注意力机制与改进YOLOv5的ESB-YOLO模型养殖鱼群检测方法
技术分类

06120116579844