首页> 中国专利> 一种应用于嵌入式设备的轻量级目标检测网络及训练方法

一种应用于嵌入式设备的轻量级目标检测网络及训练方法

摘要

本发明提供了一种应用于嵌入式设备的轻量级目标检测网络及对应的训练方法。检测网络包括主干网络,预测网络,以及连接主干网络和输出端的neck网络。其中主干网络和neck网络在压缩参数量的同时保留了较强的特征表现力,兼顾了检测精度和效率。检测网络将输入图像通过主干网络映射成不同尺度的特征图用于检测不同尺寸的目标,并通过上采样将小尺寸特征图与近邻的大尺寸特征图融合以补充大尺寸特征缺乏的语义信息。将融合后的特征图利用neck网络中的轻量级残差块进一步提高特征表现后预测输出目标中心位于特征图每一个像素点的概率大小,以及相应的中心和宽高的偏移量。

著录项

  • 公开/公告号CN112464954A

    专利类型发明专利

  • 公开/公告日2021-03-09

    原文格式PDF

  • 申请/专利权人 上海悠络客电子科技股份有限公司;

    申请/专利号CN202011411218.8

  • 发明设计人 王伟栋;沈修平;

    申请日2020-12-06

  • 分类号G06K9/46(20060101);G06K9/62(20060101);G06N3/04(20060101);G06N3/08(20060101);

  • 代理机构31213 上海新天专利代理有限公司;

  • 代理人徐伟奇

  • 地址 200000 上海市青浦区徐泾镇华徐公路888号6幢

  • 入库时间 2023-06-19 10:08:35

说明书

技术领域

本发明属于计算机视觉中的目标检测领域,尤其涉及一种适用于嵌入式设备端的轻量级目标检测网络和相应的训练方法。

背景技术

随着深度学习技术的出现,目标检测作为计算机视觉领域的热门研究方向近年来取得了巨大的进步。相较于传统目标检测技术,基于深度神经网络的目标检测具有速度快,精度高的特点。从最初如Fast/Faster RCNN这样的双阶段检测网络,发展到今天如ssd,yolo等单阶检测网络,检测网络在保证检测精度的同时,检测效率有着显著的提高。

深度神经网络的主要组成部分为卷积,池化和激活,通过将其组合构造出一系列的非线性变换。网络的参数量越多,意味着更强的非线性表达能力及泛化能力,同时参数的增加会进一步提高计算的复杂度,因此深度学习的良好性能往往需要设备强大的计算能力作为支撑。有限的算力和存储空间导致主流的深度神经网络无法在嵌入式设备上运行。

由于神经网络的计算复杂度高,对于设备的计算能力有着严苛的要求,故目标检测网络通常需要在搭载了高性能gpu的设备(如云端服务器)上运行。但是在当下网络带宽有限,又要满足实时响应的前提下,对实时性要求较高的应用无法依靠基于云端的处理方式。相较之下嵌入式设备具有计算不依靠于网络,没有计算延迟等特点。

然而嵌入式设备的计算能力有限,在嵌入式设备上运行实时目标检测依赖于高效的神经网络,这意味着嵌入的神经网络必须经过结构简化和参数压缩。

发明内容

本发明的目的在于提供一种应用于嵌入式设备的轻量级目标检测网络及相应的训练方法,以实现嵌入式设备(如摄像头)对于目标的实时检测及定位。

第一方面,本项发明提供一种应用于嵌入式设备的轻量级目标检测网络,该网络由主干网络,neck网络和预测网络组成;

其中,检测网络中主干网络的输入对象为预处理后的待测图像,主干网络将输入图像映射到多个尺寸的特征图,用于检测不同尺寸的目标。neck网络由多个轻量级残差块组成,neck网络的输入端连接主干网络的输出端,其依次融和尺寸近邻的特征图,内部每个残差块在后续进一步增强对应尺寸特征图的特征表现力,最后将融合后的特征图输出到后续的预测网络进行结果预测。

主干网络由数个双路密集模块组成,对于输入的特征图,分别获取其在不同尺度感受野下的特征,网络每一个输出层输出的特征图尺寸分别为上一个输出特征图尺寸的1/2。neck网络将当前尺寸的特征图通过近邻插值的方式进行特征上采样后与对应的上一层输出的特征图通过拼接的方式融合。预测网络与传统单阶目标检测的预测网络类似,是一个双路网络,两条支路分别预测目标的类别以及相对于当前像素位置,目标的中心和宽高的偏移量。

最后通过使用非极大值抑制处理所有的预测结果,过滤不含物体的坐标框和包围相同目标的多个无效坐标框。

作为可选的实现方式,根据检测目标尺寸的分布及检测效率,可以令主干网络输出2-3种尺寸的特征图。

作为可选的实现方式,基于检测目标坐标框的纵横比分布,可以自行调整主干网络输入层的尺寸。

作为可选的实现方式,根据检测目标的尺寸相对于原始图像大小,可令主干网络第一个输出特征图的大小为输入尺寸的1/8或1/4。

作为可选的实现方式,可在预测网络中加入空间注意力机制,加强预测网络对于目标中心位置的预测能力。

作为可选的实现方式,基于同种类检测目标之间的遮挡程度,可以使用改进版的非极大值抑制方法,如:Soft-NMS,DIoU。

第二方面,本项发明提供了该轻量级网络的训练方法,该方法包含以下步骤:

1)随机抽取数量为batch_size*2的训练样本图像,将其两两拼接,拼接方式在水平和垂直拼接中随机选择;

2)将拼接后的图像缩放至固定尺寸并将像素值归一化至0~1区间;

3)将预处理后的训练样本图像输入主干网络,获取多个尺寸的特征图;

4)利用Kmeans聚类算法获取训练样本中目标框尺寸的聚类中心,根据不同数量的聚类中心计算坐标框宽高与聚类中心宽高的平均重合度,基于平均重合度和聚类中心数量变化的曲线图寻找梯度变化显著的最大聚类中心个数并将对应的聚类中心尺寸从小到大均匀分配给对应尺寸的特征图;

5)以特征图中的每一个像素作为中心,根据分配到的不同尺寸的聚类中心尺寸构建对应数量的先验框;

6)计算样本的目标框在不同尺寸下与对应先验框的重合度,将与目标框重合度大于等于0.5的先验框作为包含目标的正样本,反之为背景样本;

7)计算每个先验框的预测类别与6)中真实类别的分类误差以及包含目标的的先验框相较于真实目标框在中心点和宽高上的偏移误差;

8)通过Adam算法优化网络参数,使7)中两种误差最小化。

作为可选的实现方式,数据预处理可增加翻转和色彩抖动。

作为可选的实现方式,可使用focal loss或ce loss计算分类误差。

作为可选的实现方式,可以使用欧氏距离,Smooth L1,GIoU等计算偏移误差。

作为可选的实现方式,使用所有先验框计算分类误差。

作为可选的实现方式,随机选择一定数量的先验框计算分类误差。

作为可选的实现方式,使用OHEM寻找分类困难的先验框用于计算分类误差。

作为可选的实现方式,使用OHEM寻找分类困难的先验框以及在其余易分类的先验框中随机选择部分共同用于计算分类误差。

附图说明

图1是轻量级检测网络的主干网络结构图。

图2是主干网络中双路密集模块(ddm)的结构图。

图3是轻量级检测网络的neck网络结构图。

图4是轻量级残差块(lrm)结构图。

图5是轻量级检测网络的预测网络结构图。

图6是本项发明中网络训练方法的流程图。

具体实施方式

下面结合附图和具体实施方式对本发明作进一步详细的说明。

本发明提供一种应用于嵌入式设备的轻量级目标检测网络及训练方法。

网络输入尺寸大小为448x448,对于待测图像将其像素值从无符号的8位整型转换成32位浮点型后除以255,归一化至0~1之间后将其传入检测网络的主干网络。

图1和图2是主干网络和双路密集模块的结构图,如图所示主干网络中包含多个双路密集模块。在通过多层串联的双路密集魔块获取到不同尺度的感受野信息后,利用2x2的均值池化输出降采样后的特征图。对于输入图像,主干网络先后输出56x56及28x28两种尺寸的特征图。

如图3所示,主干网络输出的特征图作为neck网络的输入,特征图1通过上采样后与上一级特征融合得到特征图2,将两种特征图输入到对应的轻量级残差块中加强特征表现力。图4是轻量级残差块的结构图,其中一条支路为单个普通1x1卷积,另一条支路串联了两个普通1x1卷积和一个3x3深度可分离卷积,该结构在不增加太多计算量的前提下保证了较强的特征表现力。

图4预测网络的两个分支分别输出每个先验框所属类别的概率和先验框中心和宽高的偏移量,结合先验框的中心和宽高,目标框的左上和右下角点坐标可按下式求得:

Center(x,y)=pred(Δx,Δy)*prior(x,y)+prior(x,y)

(w,h)=prior(w,h)*e

top_left(x,y)=Center(x,y)-0.5*(w,h)

bottom_right(x,y)=Center(x,y)+0.5*(w,h)

上式中pred(Δx,Δy)和pred(Δw,Δh)表示网络预测得到的先验框中心和宽高的偏移量;prior(x,y)和prior(w,h)表示先验框初始的中心点坐标及宽高;Center(x,y)和(w,h)表示由调整后得到的目标框中心和宽高。

主干网络输出两种特征图的网络模型大小约3.5M,输入图像为448x448时,在GTX1080ti上的检测速度约200FPS,在海思AI芯片Hi3516CV500上的检测速度约35FPS,能够满足嵌入式设备端的实时检测。

在训练阶段根据检测网络定义的输入图像尺寸大小,利用kmeans聚类法计算训练样本中目标框尺寸的聚类中心(目标框的宽高对)以及坐标框宽高与聚类中心宽高的平均重合度,平均重叠度的计算公式如下:

上式中N表示训练样本中目标框的总数,n表示聚类中心的个数,n

在当前实现方法中,对于每一批训练图像两两拼接后调整尺寸至448x448,随后对图像进行色彩抖动或水平翻转。因主干网络输出两种尺寸的特征图,故将kmeans聚类法得到的聚类中心按面积从小到大均分成两组,尺寸较小的一组用于制作大尺寸特征图的先验框,而尺寸较大的一组则用于制作小尺寸特征图的先验框。随后对于所有尺寸的特征图上的每一个元素,将其行列索引号增加0.5作为先验框中心位置,接着围绕该中心按之前分配到的聚类中心构建对应数量的先验框。将样本数据中的真实目标框的中心和宽高映射至56x56和48x48的特征图中并与该特征图对应的所有先验框计算重合度。以0.5为阈值,将与任一真实目标框的重合度大于0.5的先验框作为正样本(包含目标),反之作为负样本(背景)。对于正样本,需要进一步计算正样本相对于真实目标框在中心坐标和宽高大小的偏移量。

由于自制数据集正负样本比例不均衡,分类误差和偏移误差的计算分别使用focal loss和Smooth L1 loss,公式如下:

式中α用于平衡正样本和背景样本的比例;γ用于区分易分类和分类困难的先验框,令误差的优化更注重于分类困难的先验框的分类结果;p和p’分别表示先验框的真实类别和网络预测的先验框类别。

式中x’和x∈{Δx,Δy,Δw,Δh},分别表示检测网络的预测的先验框偏移量和真实的先验框偏移量。

对于分类误差的计算,这里同时使用正样本和负样本;而偏移误差的计算则仅使用了正样本的偏移量。为了进一步减轻负样本远远多于正样本对训练带来的负面影响,这里仅采用部分负样本参与总分类误差的计算。同时为了避免误差的优化方向由易分类的负样本主导。故对于计算得到的每个先验框的分类误差,将所有负样本的分类误差从大到小进行排序,对于每一批输入图像,从该序列中取出分类误差最大的部分负样本,数量为正样本数量的3倍,同时从剩余的负样本中随机抽取一部分与上述分类困难的负样本共同用于总分类误差的计算。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号