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

一种基于注意力机制的轻量级行人检测方法

文献发布时间:2023-06-19 16:04:54



技术领域

本发明属于目标检测技术领域,特别涉及一种基于注意力机制的轻量级行人检测方法。

背景技术

由于人工智能技术的快速发展,近些年涌现出一大批基于深度学习的行人检测算法,成为当前行人检测的主流方法。随着基于深度学习的行人检测算法的广泛应用,如何在算力有限的边缘硬件上部署行人检测算法成为新的挑战。现有技术针对算力有限的边缘硬件部署应用,以一些大型行人检测模型为基础框架,通过对其轻量化,使其参数量和计算量减少,以便在算力有限的边缘硬件部署时能保持实时性。然而大型行人检测模型进行轻量化后仍存在参数量和运算量对于边缘硬件仍旧过大以及检测精度下降过大的缺点。

发明内容

为了克服上述现有技术的缺点,解决目前通过深度学习训练出的行人检测模型因参数量和运算量过大无法部署在算力有限的边缘硬件上,以及一些行人检测模型进行轻量化后参数量和运算量仍过大,并且检测精度下降过大的问题,本发明的目的在于提供一种基于注意力机制的轻量级行人检测方法,以在损失较小检测精度的情况下,减小行人检测模型的参数量和运算量。

为了实现上述目的,本发明采用的技术方案是:

一种基于注意力机制的轻量级行人检测方法,包括如下步骤:

步骤一:训练轻量级行人检测模型

所述轻量级行人检测模型采用轻量化ShuffleNet网络以及PanNet中的轻量化FPEM网络组成的网络结构作为基础框架,所述轻量化ShuffleNet网络作为轻量级行人检测模型的主干网络,所述轻量化FPEM网络作为轻量级行人检测模型的颈部网络;其中,在轻量化ShuffleNet网络的ShuffleBolock局部网络中嵌入混洗注意力机制模块;通过预设的损失函数训练所述轻量级行人检测模型;

步骤二:采集包含行人目标的图像数据,输入至训练好的轻量级行人检测模型,通过所述轻量级行人检测模型对所述图像进行判断和预测,得到行人目标的位置信息。

可选地,在轻量化ShuffleNet网络的ShuffleBolock局部网络中嵌入混洗注意力机制模块,得到SA_ShuffleBolck局部网络,并形成由SA_ShuffleBolck局部网络叠加组成的重复单元。

可选地,所述轻量化ShuffleNet网络是在ShuffleNet网络基础上去掉最后三层得到的,所述最后三层包括:1×1的卷积层,7×7的全局池化层和一层全连接层;

所述轻量化FPEM网络是在PanNet中的FPEM网络的基础上修改得到的,其中修改操作包括:

(1)将FPEM网络中的3次上采样和下采样操作改为2次上采样和下采样操作,使输入图像依次通过2、4、8倍上下采样的尺度改变为依次通过2、4倍的上下采样尺度;

(2)在FPEM网络上采样过程中,将第一个加和操作后的一个步长为1的深度可分离卷积模块替换为一个1×1卷积层,将第二个加和操作后的步长为1的深度可分离卷积模块去除,将第三个加和操作后步长为2的深度可分离卷积模块移动到第三个加和操作前,将第四个加和操作后步长为2的深度可分离卷积模块移动到第四个加和操作前。

可选地,所述混洗注意力机制模块嵌入在ShuffleBlock局部网络主干分支的最后一个卷积层之后。

可选地,所述混洗注意力机制模块执行步骤如下:

步骤1:先将输入的特征图F按通道尺度分组为n个子特征图F

步骤2:并行处理所有F

步骤3:对所有子特征F

可选地,所述损失函数LOSS由边框回归损失函数L

可选地,所述损失函数LOSS由完全交并比损失函数L

LOSS=L

所述完全交并比损失函数L

其中,b和b

可选地,所述图像数据通过可移动边缘硬件采集,所述训练好的轻量级行人检测模型部署于所述可移动边缘硬件。

本发明基于深度神经网络,提出针对算力有限边缘硬件上行人检测的轻量化方法,以ShuffleNet和PanNet中的FPEM为基础,进行了一系列的改进和优化。与现有技术相比,本发明具有体积小和运算速度快的优点,尤其适用于部署在类似手机端这样的算力有限的边缘硬件上,有效提高在算力有限的边缘硬件上进行行人目标检测的精度和速度。相比现有的网络结构,对摄像机在需要移动的场景下所拍摄的图像进行行人检测,如手机端、无人机和一些对移动场景要求较高的场景下,都可以实现较高实时性与精确率。本发明模型的大小相比现有的一些网络结构有大幅降低,同时保证了检测精度不大幅下降,符合移动场景下前端轻量化的应用需求。

附图说明

图1是本发明流程图。

图2是本发明基于注意力机制的轻量级行人检测模型的网络结构示意图。

图3是本发明混洗注意力机制模块的结构示意图。

图4是本发明SA_ShuffleBlock局部网络的结构示意图。

具体实施方式

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

如图1所示,本发明为一种基于注意力机制的轻量级行人检测方法,目的是在损失较小检测精度的情况下,减小行人检测模型的参数量和运算量,以便部署在算力有限的边缘硬件上实现实时性检测。其具体步骤主要包括:

步骤一:训练轻量级行人检测模型

行人检测模型主要由输入层Input、主干网络Backbone、颈部网络Neck和输出层Output四个部分组成。其中,输入层Input对所输入图像进行自适应缩放以便后续网络的处理;主干网络Backbone对输入图像处理,提取出包含图像特征的特征图,然后将特征图输出至颈部网络Neck中;颈部网络Neck通过融合低尺度和高尺度来增强不同尺度的特征,加强网络特征融合的能力;输出层Output用于生成预测边界框。

参考图2,在本发明的一个实施例中,轻量级行人检测模型采用轻量化ShuffleNet网络以及PanNet中的轻量化FPEM网络组成的网络结构作为基础框架。其中,轻量化ShuffleNet网络作为轻量级行人检测模型的主干网络,轻量化FPEM网络作为轻量级行人检测模型的颈部网络。通过对网络的轻量化处理,本发明的行人检测模型成为一个轻量级卷积神经网络,具有较低的参数量和计算量,从而使行人检测模型对时间和空间的开销较小,在占用更少内存的同时具有较高的检测速度,使得行人检测模型能够更好地部署在算力有限的边缘硬件上,实现实时性检测。

基于该基础框架,本发明在轻量化ShuffleNet网络的ShuffleBolock局部网络中嵌入混洗注意力机制模块,得到SA_ShuffleBolck局部网络,并形成由SA_ShuffleBolck局部网络叠加组成的重复单元。此时,即形成了本发明基于注意力机制的轻量级行人检测模型。本发明通过在行人检测模型中嵌入混洗注意力机制模块,在特征提取网络中加入经过分组的空间和通道两个维度的注意力机制,同时对空间和通道两个维度的特征信息进行筛选,并对聚合得到的子特征进行混洗操作,使网络感受野扩大的同时也对不同特征间的信息进行了融合,提高了特征提取网络的特征表达能力。

在实施例中,如图2主干网络所示,本发明的轻量化ShuffleNet网络是在ShuffleNet网络基础上去掉最后三层得到的,其中最后三层(即去掉的三层)包括:1×1的卷积层,7×7的全局池化层和一层全连接层。

与之相应,如图2颈部网络所示,本发明轻量化FPEM网络是在PanNet中的FPEM网络的基础上修改得到的,其中修改操作包括:

(1)将FPEM网络中的3次上采样和下采样操作改为2次上采样和下采样操作,使输入图像依次通过2、4、8倍上下采样的尺度改变为依次通过2、4倍的上下采样尺度。在本发明的图2中,颈部网络部分(即轻量化FPEM网络)中的Upsample即上采样操作,DwSConv即下采样操作,图2是最终优化完成的网络,颈部网络具有两个UpSample和两个DwSConv,所以是2次。而FPEM网络本身具有3个,除此之外,FPEM网络和图2所示的颈部网络的区别不大。

(2)在FPEM网络上采样过程中,将第一个加和操作后的一个步长为1的深度可分离卷积模块替换为一个1×1卷积层,将第二个加和操作后的步长为1的深度可分离卷积模块去除,将第三个加和操作后步长为2的深度可分离卷积模块移动到第三个加和操作前,将第四个加和操作后步长为2的深度可分离卷积模块移动到第四个加和操作前。

在这里,深度可分离卷积使用3×3的深度卷积(Depthwise Convolution)以及1×1的单点卷积(PointWise Convolution),因此颈部网络能够以较小的计算开销扩大感受野和加深网络。

在实施例中,本发明混洗注意力机制模块执行步骤如下:

步骤1:先将输入的特征图F按通道尺度分组为n个子特征图F

步骤2:并行处理所有F

其中,如图3右分支所示,通道维度注意力机制的最终输出特征图F

首先,通过使用全局平均池化生成一维特征向量来获取全局信息,其中全局平局池化计算公式如下:

其中,s为通过全局平均池化生成的一维特征向量,H和W为特征图F′

其次,通过参数W

最后,将M

F

其中,W

如图3左分支所示,空间维度注意力机制的最终输出特征图F

首先,采用组归一化GN获得F′

其中,t为通过组归一化GN操作生成的二维特征向量,c

其次,通过参数W

最后,将M

F

其中,W

本发明中,W(W

步骤3:对所有子特征F

参考图3所示,Aggregation表示聚合操作,Channel Shuffle表示通道混洗操作。ShuffleNet v2中的通道混洗固定为两组特征图的混洗,与之稍有区别,本发明混洗注意力机制模块中的通道混洗操作可以自由设定组数(比如2,4,8,一般为偶数)。

在嵌入方式上,示例地,参考图4,SA_Attention即本发明混洗注意力机制模块,图4中的两个网络是Shufflenet的ShuffleBlock局部网络,左图为DwSConv卷积核步长为1时的ShuffleBlock局部网络,右图为步长为2时的ShuffleBlock局部网络。将SA_Attention嵌入在ShuffleBlock局部网络主干分支(即右分支)的最后一个卷积层(即靠下的Conv(c_in,c_out,1,1))后,靠下的Conv(c_in,c_out,1,1)的输出作为SA_Attention模块的输入,SA_Attention的输出,作为下一层的输入。

在ShuffleBlock局部网络嵌入混洗注意力机制模块(SA_Attention)得到SA_ShuffleBolck局部网络,形成由步长为2和步长为1的SA_ShuffleBolck局部网络组成的重复单元。SA_Attention是一个非常轻量级的即插即用模块,可以显著提高特征提取网络的性能。

步骤二:通过预设的损失函数训练轻量级行人检测模型,其中,损失函数可由边框回归损失函数和置信度损失函数组成,也可由完全交并比损失函数和置信度损失函数组成。

具体地,对构建好的轻量级行人检测模型,本发明实施例使用adam优化方法,采用预设的损失函数以端对端的方式进行训练,可选的,训练的图像大小为640*640,batch_size设置为16,epoch设置为300。

在本发明的一个实施例中,损失函数LOSS由边界框回归(Bounding box)损失函数L

LOSS=L

针对基于IoU的损失函数无法正确反映目标框与预测框之间的紧密程度,存在当预测框和目标框没有重叠时损失值为0的问题,并且收敛的速度较慢的情况,本发明实施例还可将边框回归损失函数L

其中,完全交并比损失函数可以缩小行人检测中的预测框和目标框的距离,并且在预测框和目标框的中心点距离和宽高比两个尺度上增加惩罚项,使得损失函数更快地收敛,且预测框可以经过回归更符合目标框。

完全交并比损失函数由三部分组成:第一部分为预测框和目标框计算交并比所产生的损失值;第二部分为计算预测框和目标框中心点距离所产生的的损失值;第三部分为计算预测框和目标框宽高比差异所产生的损失值。如果预测框越符合目标框,损失值会越小。完全交并比损失函数的表达式如下式所示:

其中,b和b

对于行人检测模型,本发明采用精确率(Precision)、召回率(Recall)、平均精度(Average Precision,简称AP)、参数量(params)、模型复杂度(Floating point of persecond,简称FLOPs)和帧率(Frames Per Second,简称FPS)作为评价指标。

步骤三:采集包含行人目标的图像数据,输入至训练好的轻量级行人检测模型,通过轻量级行人检测模型对图像进行判断和预测,得到行人目标的位置信息。

示例地,本发明以提高算力有限的边缘硬件处理摄像机在需要移动的场景下所拍摄的图像中的行人检测的速度以及精确率为目标。即,在进行行人检测时,是对摄像机在需要移动的场景下(可移动边缘硬件)所拍摄的图像进行目标检测,通过移动设备所搭载的摄像机(如智能手机、车辆或飞机等工具搭载的摄像头等)拍摄包含行人目标的图像,本发明训练好的轻量级行人检测模型可直接部署于所述可移动边缘硬件。从而有效提高对移动场景下的行人检测精度和速度,且符合移动场景下前端轻量化的应用需求。

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

相关技术
  • 一种基于注意力机制的轻量级行人检测方法
  • 一种基于注意力机制的遮挡行人检测方法
技术分类

06120114692428