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

目标检测方法、装置、存储介质及终端

文献发布时间:2023-06-19 10:43:23


目标检测方法、装置、存储介质及终端

技术领域

本发明涉及信息技术领域,尤其涉及一种目标检测方法、装置、存储介质及终端。

背景技术

随着人工智能技术的快速发展,涌现一大批基于深度学习的目标检测算法,并被广泛应用于辅助驾驶、视频监控、机器人视觉、工业检测等领域的目标检测任务中。视觉感知是辅助驾驶中道路环境感知的重要组成部分,可自动对摄像机所拍摄图像进行分析,主动预测车辆周围存在的潜在危险状况,如行人是否不按交通规则横穿马路、前方车辆是否突然刹车等。

现有技术在针对驾驶场景下摄像机所拍摄图像进行目标检测时,以YOLOv3算法为基础框架,通过嵌入SENet结构以增强特征映射图的感受野,使网络学习到的特征信息更全面。然而此方法存在以下缺点:

(1)SENet只是在通道维度上对特征进行了筛选加权,无法较好获取的位置关系信息,检测精度欠佳。

(2)YOLOv3算法存在召回率不足,定位不够准确的缺点。与YOLOv1、YOLOv2等之前的版本相比,YOLOv3的精度有所提升,但是检测速度有所下降。

(3)对部分遮挡目标的检测精度较低,难以达到交通道路场景的应用需求。

(4)针对驾驶场景下的目标检测正负样本不均衡问题,模型会过多关注易分样本,导致模型性能较低。

发明内容

本发明实施例提供了一种目标检测方法、装置、存储介质及终端,以解决现技术在对驾驶场景下摄像机所拍摄图像进行目标检测时存在的检测精度、检测速度不高的问题。

一种目标检测方法,包括:

获取驾驶场景下摄像机所拍摄的图像;

将所述图像输入至已训练好的目标检测网络,通过所述目标检测网络对所述图像进行判断和预测,得到目标分类和位置信息;

其中,所述目标检测网络采用轻量化的YOLOv5s网络结构作为基础框架,在YOLOv5s主干网络的跨阶段局部网络中嵌入瓶颈注意力机制模块,以及在YOLOv5s主干网络的指定卷积层中采用深度可分离卷积运算。

可选地,所述目标检测网络在YOLOv5s主干网络的BottleneckCSP1_x层之中嵌入瓶颈注意力机制模块,得到基于瓶颈注意力机制模块的跨阶段局部网络。

可选地,所述目标检测网络将YOLOv5s主干网络中的指定CBH模块替换为MBH模块,所述CBH模块由卷积运算、归一化处理以及激活函数组成,所述MBH模块由基于深度可分离卷积运算的倒置残差模块、归一化处理以及激活函数组成。

可选地,所述基于深度可分离卷积运算的倒置残差模块包括第一单点卷积层、深度卷积层、第二单点卷积层和融合层,其中所述第一单点卷积层和深度卷积层采用BatchNorm操作和非线性ReLU6激活函数,所述第二单点卷积层采用BatchNorm操作而不采用非线性ReLU6激活函数;

所述第一单点卷积层用于将第一低维度特征表示扩展到第一高维度特征表示,所述深度卷积层用于基于深度可分离卷积运算对所述第一高维度特征表示进行特征提取,得到第二高维度特征表示;所述第二单点卷积层用于将第二高维度特征表示进行压缩,得到第二低维度特征表示;所述融合层用于采用跳层连接操作将输入的第一低维度特征表示和经过第一单点卷积层、深度卷积层与第二单点卷积层处理后的第二低维度特征表示进行融合,生成新的特征映射图。

可选地,所述目标检测网络将YOLOv5s主干网络中的第四CBH模块替换为MBH模块。

可选地,所述目标检测网络通过预设的损失函数训练得到;

所述损失函数由分类损失函数、边框回归损失函数和置信度损失函数组成。

可选地,所述目标检测网络通过预设的损失函数训练得到;

所述损失函数由梯度均衡机制损失函数、排斥力损失函数和置信度损失函数组成

一种目标检测装置,所述装置包括:

获取模块,用于获取驾驶场景下摄像机所拍摄的图像;

检测模块,用于将所述图像输入至已训练好的目标检测网络,通过所述目标检测网络对所述图像进行判断和预测,得到目标分类和位置信息;

其中,所述目标检测网络采用轻量化的YOLOv5s网络结构作为基础框架,在YOLOv5s主干网络的跨阶段局部网络中嵌入瓶颈注意力机制模块,以及在YOLOv5s主干网络的指定卷积层中采用深度可分离卷积运算。

一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序由处理器执行时实现如上所述的目标检测方法所述的步骤。

一种终端,所述终端包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如上所述的目标检测方法所述的步骤。

本发明实施例通过预先构建目标检测网络,所述目标检测网络采用轻量化的YOLOv5s网络结构作为基础框架,在YOLOv5s主干网络的跨阶段局部网络中嵌入瓶颈注意力机制模块,可同时对通道以及空间的特征信息进行筛选,提高网络通道以及空间特征表达能力,使得网络能够扩大对目标特征区域的感知范围;以及在YOLOv5s主干网络的指定卷积层中采用深度可分离卷积运算,可有效减少参数量,提升检测速度。在进行目标检测时,通过获取驾驶场景下摄像机所拍摄的图像;将所述图像输入至已训练好的目标检测网络,由所述目标检测网络对所述图像进行判断和预测,得到目标分类和位置信息,从而有效地提高了对驾驶场景图像的目标检测精度和速度,且符合驾驶场景下前端轻量化的应用需求。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是本发明一实施例中目标检测方法的流程图;

图2是本发明一实施例中目标检测网络的结构示意图;

图3是本发明一实施例中瓶颈注意力机制模块的结构示意图;

图4是本发明一实施例中CBH模块的结构示意图;

图5是本发明一实施例中BAM-CSP1_x网络模块的结构示意图;

图6是本发明一实施例中MBH模块的结构示意图;

图7是本发明一实施例中基于深度可分离卷积运算的倒置残差模块的结构示意图;

图8是本发明一实施例中目标检测装置的一原理框图;

图9是本发明一实施例中计算机设备的一示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本实施例提供了一种目标检测方法。所述目标检测方法应用于比如辅助驾驶系统中,使辅助驾驶系统及早、准确地检测到人与车等目标,结合其它的技术可以提醒驾驶员在紧急情况下及时采用刹车、转向等操作,避免发生碰撞,保障行车的安全和交通秩序。以下对本实施例提供的目标检测方法进行详细的描述,如图1所示,所述目标检测方法包括:

在步骤S101中,获取驾驶场景下摄像机所拍摄的图像。

在这里,本发明实施例是对驾驶场景下摄像机所拍摄的图像进行目标检测,包括机动车检测、非机动车检测以及行人检测,以及得到目标所在位置。

在步骤S102中,将所述图像输入至已训练好的目标检测网络,通过所述目标检测网络对所述图像进行判断和预测,得到目标分类和位置信息。

本发明实施例以提高驾驶场景下摄像机所拍摄图像中的目标检测的精确率为目标,设计一个深度神经网络模型,即上述的目标检测网络,以在提高目标检测精确率的同时实现模型的轻量化。

如图2所示,所述目标检测网络包括输入层Input、主干网络Backbone、颈部结构Neck和输出层Output四个部分组成。其中,输入层Input是对所输入的图像进行预处理,所述预处理包括但不限于增强、自适应缩放、自适应锚框;主干网络Backbone用于聚合不同图像细粒度并形成特征映射图,以及将特征映射图输出至颈部结构Neck中;颈部结构Neck用于从不同的主干层对不同的检测层进行特征融合,加强网络特征融合的能力;输出层Output用于生成边界框和预测目标的类别。

在本发明的一个实施例中,所述目标检测网络采用轻量化的YOLOv5s网络结构作为基础框架,在YOLOv5s主干网络的跨阶段局部网络中嵌入瓶颈注意力机制模块。本发明实施例通过将瓶颈注意力机模块制嵌入YOLOv5算法,在特征提取网络中加入通道注意力及空间注意力机制,通过注意力机制模块同时对通道以及空间的特征信息进行筛选,提高了网络通道以及空间特征表达能力,使得网络能够扩大对目标特征区域的感知范围。

在这里,瓶颈注意力机制模块(Bottleneck Attention Module,简称BAM)是一种 混合注意力机制模型,可以嵌入到前向传播卷积神经网络中,包括通道注意力机制和空间 注意力机制两个分支网络。如图3所示,为本发明实施例提供的瓶颈注意力机制模块的结构 示意图。设有特征映射图

在现有的YOLOv5s的网络结构中,将由卷积运算Conv2d、归一化处理BatchNorm以及HardSwish激活函数组成的模块称为CBH模块,如图4所示,为本发明实施例提供的CBH模块的结构示意图;BottleneckCSP1_x由CBH模块和X个残差结构Res unit模块组成;BottleneckCSP2_x与BottleneckCSP1_x结构相似,不同之处在于N个Bottleneck换成了N个CBH模块;空间金字塔池化结构(Spatial Pyramid Pooling,简称SPP)采用1×1、5×5、9×9、13×13的最大池化的方式,进行多尺度融合。为了提升网络的特征表达能力,本发明实施例将瓶颈注意力机制模块嵌入到YOLOv5s主干网络的BottleneckCSP1_x层之中,形成由CBH模块与BAM模块组成的重复单元,得到基于瓶颈注意力机制模块的跨阶段局部网络,这里记为BAM-CSP1_x网络模块。如图5所示,为本发明实施例提供的BAM-CSP1_x网络模块的结构示意图。将特征映射图传入BAM-CSP1_x网络模块,通过其中的通道注意力机制和空间注意力机制,在YOLOv5s的底层尽可能消除其它因素的影响,使得网络重点关注有效的特征信息,抑制不重要的特征信息,更加专注于驾驶场景下目标特征的提取,有利于提高检测精度。

在本发明的另一个实施例中,本发明实施例还在YOLOv5s主干网络的指定卷积层中采用深度可分离卷积运算。具体将YOLOv5s主干网络中的指定CBH模块替换为MBH模块。其中,所述MBH模块通过将CBH模块中的卷积运算Conv2d替换为基于深度可分离卷积运算的倒置残差(这里记为Mod模块)模块得到。作为本发明的一个优选示例,如图6所示,所述MBH模块由基于深度可分离卷积运算的倒置残差模块、归一化处理以及激活函数组成,所述归一化处理为BatchNorm2d,所述激活函数为HardSwish。特征映射图通过基于深度可分离卷积运算的倒置残差模块后,分别经过归一化BatchNorm2d和HardSwish激活函数操作。

如图7所示,所述基于深度可分离卷积运算的倒置残差模块包括第一单点卷积层、深度卷积层、第二单点卷积层和融合层,其中所述第一单点卷积层和深度卷积层采用BatchNorm操作和非线性ReLU6激活函数,所述第二单点卷积层采用BatchNorm操作而不采用非线性ReLU6激活函数;

所述第一单点卷积层用于将第一低维度特征表示扩展到第一高维度特征表示,所述深度卷积层用于基于深度可分离卷积运算对所述第一高维度特征表示进行特征提取,得到第二高维度特征表示;所述第二单点卷积层用于将第二高维度特征表示进行压缩,得到第二低维度特征表示;所述融合层用于采用跳层连接操作将输入的第一低维度特征表示和经过第一单点卷积层、深度卷积层与第二单点卷积层处理后的第二低维度特征表示进行融合,生成新的特征映射图。

在这里,深度可分离卷积使用3×3的深度卷积(Depthwise Convolution)以及1×1的单点卷积(Pointwise Convolution)拆分特征的空间维度和通道维度的相关性,可有效减少模型的计算量。由于深度可分离卷积不仅可以有效压缩卷积核计算量,还会压缩卷积核的探索空间,压缩卷积的特征空间探索能力后,特征表达能力会有所减弱。鉴于此,本发明实施例采用一个基于深度可分离卷积运算的倒置残差模型,通过在深度卷积前面添加一个1×1的卷积将低维度特征表示扩展到高维度特征表示,再使用深度可分离卷积运算进行特征提取,然后将模型压缩到低维度空间当中。在所述基于深度可分离卷积运算的倒置残差模型中,第一单点卷积层和深度卷积层之后使用BatchNorm操作和非线性ReLU6函数。在通道数量较多的情况下,特征会进入部分低维度的空间当中。虽然使用ReLU6函数可以保持较好的特征提取能力,但是当特征从高维度转换到低维度之后,ReLU6函数反而会降低网络的特征提取能力,因此在最后的第二单点卷积层操作中不使用ReLU6函数。最后,通过使用短连接操作将原始的特征映射图与深度可分离卷积的特征映射图进行融合,生成新的特征映射图。应当理解,所述第一低维度特征表示和第一高维度特征表示是相对而言的,第二高维度特征表示和第二低维度特征表示也是相对而言的。

作为本发明的一个优选示例,在所述目标检测网络中,具体可以将YOLOv5s主干网络中的第四CBH模块替换为MBH模块。本发明实施例通过采用网络参数规模较少、推理速度非常快的YOLOv5算法作为基础框架,并将主干网络中计算量比较大的卷积层替换为深度可分离卷积(Depthwise Separable Convolution),有效地减少了参数量,提升了目标检测速度,同时可得到较好的检测效果。

对构建好的所述目标检测网络,本发明实施例使用adam优化方法,采用预设的损失函数以端对端的方式进行训练。可选地,训练的图像大小为640*640,设置batch-size大小为16,epoch大小为300。

在本发明的一个实施例中,所述目标检测网络中YOLOv5s网络的损失函数LOSS由 分类损失函数

通常分类损失函数

在处理梯度范数的不均衡的问题,采用梯度密度

式(3)中,

可得用于分类的梯度均衡机制损失

本发明实施例针对驾驶场景下的目标检测正负样本不均衡问题,将分类损失函数

针对部分遮挡目标的情况,本发明实施例还可将边框回归损失函数

式(5)右侧第一个分式是一个回归模型的损失函数。其中,

对于所述目标检测网络,本发明实施例采用精确率(Precision)、召回率(Recall)、平均精度均值(mean Average Precision,简称mAP)和检测速度(Frames PerSecond,简称FPS)作为评价指标,具体计算和说明为:

1、Precision表示被分为正例的示例中实际为正例的比例,用字母

其中,TP+FP是预测的图片中是正类的图片的数目,TP是正类被预测为正类的图片的个数。

2、Recall表示是实际正类中有多少个被分为了正类,用字母

3、mAP为数据集中所有类别的平均精度的均值,AP为某个类别的平均精确度,对于 第

其几何意义是精确度和召回率所形成的曲线与水平轴围成的面积,可得类别数为

4、FPS为每秒检测图像帧数,该指标不仅仅与算法模型的计算量相关,还与实验过程中的硬件性能相关。一般地,如检测速度不小于25fps,可认为该算法模型满足实时性要求。

本发明实施例基于深度神经网络,提出针对驾驶场景中拍摄图像中目标检测的轻量化方法,以YOLOv5s为基础,进行了一系列的改进和优化,相比现有的SE+YOLOv3网络结构,在驾驶场景下的摄像机拍摄的图像数据集上,测试环境为GTX1080时的精确率有较大的提升,且预测框更加逼近真实目标框。本发明实施例中模型的大小相比原SE+YOLOv3网络结构有大幅降低,提高了检测精确度,符合驾驶场景下前端轻量化的应用需求。

应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。

在一实施例中,本发明还提供一种目标检测装置,该目标检测装置与上述实施例中目标检测方法一一对应。如图8所示,该目标检测装置包括获取模块81、检测模块82。各功能模块详细说明如下:

获取模块81,用于获取驾驶场景下摄像机所拍摄的图像;

检测模块82,用于将所述图像输入至已训练好的目标检测网络,通过所述目标检测网络对所述图像进行判断和预测,得到目标分类和位置信息;

其中,所述目标检测网络采用轻量化的YOLOv5s网络结构作为基础框架,在YOLOv5s主干网络的跨阶段局部网络中嵌入瓶颈注意力机制模块,以及在YOLOv5s主干网络的指定卷积层中采用深度可分离卷积运算。

可选地,所述目标检测网络在YOLOv5s主干网络的BottleneckCSP1_x层之中嵌入瓶颈注意力机制模块,得到基于瓶颈注意力机制模块的跨阶段局部网络。

可选地,所述目标检测网络将YOLOv5s主干网络中的指定CBH模块替换为MBH模块,所述CBH模块由卷积运算、归一化处理以及激活函数组成,所述MBH模块由基于深度可分离卷积运算的倒置残差模块、归一化处理以及激活函数组成。

可选地,所述基于深度可分离卷积运算的倒置残差模块包括第一单点卷积层、深度卷积层、第二单点卷积层和融合层,其中所述第一单点卷积层和深度卷积层采用BatchNorm操作和非线性ReLU6激活函数,所述第二单点卷积层采用BatchNorm操作而不采用非线性ReLU6激活函数;

所述第一单点卷积层用于将第一低维度特征表示扩展到第一高维度特征表示,所述深度卷积层用于基于深度可分离卷积运算对所述第一高维度特征表示进行特征提取,得到第二高维度特征表示;所述第二单点卷积层用于将第二高维度特征表示进行压缩,得到第二低维度特征表示;所述融合层用于采用跳层连接操作将输入的第一低维度特征表示和经过第一单点卷积层、深度卷积层与第二单点卷积层处理后的第二低维度特征表示进行融合,生成新的特征映射图。

可选地,所述目标检测网络将YOLOv5s主干网络中的第四CBH模块替换为MBH模块。

可选地,所述目标检测网络通过预设的损失函数训练得到;

所述损失函数由分类损失函数、边框回归损失函数和置信度损失函数组成。

可选地,所述目标检测网络通过预设的损失函数训练得到;

所述损失函数由梯度均衡机制损失函数、排斥力损失函数和置信度损失函数组成。

关于目标检测装置的具体限定可以参见上文中对于目标检测方法的限定,在此不再赘述。上述目标检测装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图9所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种目标检测方法。

在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:

获取驾驶场景下摄像机所拍摄的图像;

将所述图像输入至已训练好的目标检测网络,通过所述目标检测网络对所述图像进行判断和预测,得到目标分类和位置信息;

其中,所述目标检测网络采用轻量化的YOLOv5s网络结构作为基础框架,在YOLOv5s主干网络的跨阶段局部网络中嵌入瓶颈注意力机制模块,以及在YOLOv5s主干网络的指定卷积层中采用深度可分离卷积运算。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本发明所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。

以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。

相关技术
  • 一种目标检测方法、装置、存储介质及终端
  • 目标检测方法、装置、终端设备及存储介质
技术分类

06120112656617