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

技术领域

本发明涉及图像识别领域,特别涉及一种对于YOLOV3网络的检测算法改进方法。

背景技术

2016年,J Redmon等人,提出了YOLO算法。从YOLO开始,该算法仅需要一个卷积神经网络(CNN)计算,并且该网络是端到端的预测。YOLO网络通过卷积神经网络提取特征,最后的全连接层输出预测结果。尽管预测精度不如Faster-RCNN,但它具有极高的实时性能,并开创了One-Stage算法,为后续算法的改进和创新奠定了基础。 YOLOV3是官方YOLO系列的最新结果。它不仅保留了前两代算法的本质,而且还吸收了其他高级算法的优点。目标检测算法中各种技术和先进方法的广泛应用使网络模型更加复杂:特征图金字塔旨在解决多尺度问题,基础网络使用类似于残差网络(ResNet) 的Darknet-53改善骨干网的特征提取能力。YOLOV3算法同时考虑了实时性和准确性。其结构清晰,易于改进,它是业界首选的算法之一,图1显示了YOLOV3网络框架。

YOLOV3的主干结构使用具有更多层的Darknet-53,尽管这在一定程度上提高了网络的特征提取能力,但降低了转发速度。如果盲目地减少Darknet-53的网络层数,该算法将减少,很难在两者的准确性之间取得平衡。

同时,特征图金字塔是YOLOV3性能提高的关键之一,但是特征图金字塔的设计仅将高级语义信息应用于低级特征图,从而融合了深浅的特征,但只能通过直接拼接这种加法不能完全集成多尺度特征。具体表现是,YOLOV3算法在缩放图片变化方面不强健,并且容易错过检测和错误检测。

另外,遮挡和照明等问题一直是目标检测算法的重要挑战,并且YOLOV3的检测性能也会产生影响。

发明内容

发明目的:本发明的目的是提供一种对于YOLOV3网络的检测算法改进方法,用于解决上述问题。

技术方案:本发明所述的一种对于YOLOV3网络的检测算法改进方法,包括以下步骤

步骤1,将主干网络的改进,主干网络加入残差模块Res-Inc;

步骤2,特征图金字塔的改进;特征图金字塔加入自适应特征融合模块、注意力机制与特征增强模块;

步骤3,图像的数据进行增强处理;

步骤4,对于输出结果的损失函数的改进:输出结果加入分类损失函数和包围框位置损失函数。

进一步的,在步骤1中,对输入的特征图按通道对特征图进行切分,然后切分后特征图进入Res-Inc模块进行通道混合操作。

进一步的,主干网络由若干个Res-Inc模块串联而成,为了与YOLOV3统一,每隔两个Res-Inc模块后会设置一个步长为2个的3*3卷积进行下采样。

进一步的,在步骤2中,自适应特征融合模块的各层对不同尺度的特征图进行自适应加权融合后输出本层的特征图,定义x

权重参数α,β和γ是对重定义过大小的level1~level3的特征图经过1*1卷积后得到三个参数;

采用自适应特征融合模块方式,梯度的公式为:

通过控制权重使

进一步的,在步骤2中,注意力机制模块用于前馈卷积神经网络的有效注意,注意力机制模块依次沿着两个独立的维度,通道和空间推断注意图,将注意图倍增到用于自适应特征细化的输入特征映射,

进一步的,在步骤2中,特征增强模块用参数rate来表示空洞卷积层的空洞率参数,可根据需要自行修改,在特征增强模块中最后会将不同尺寸和空洞率的卷积层输出进行通道上的拼接。

进一步的,在步骤3中,增强方式包括图像翻转、图像平移、图像尺寸缩放以及图片旋转。

进一步的,在步骤4中,使用focal loss作为分类损失函数,focal loss对分类损失函数交叉熵损失的改进,focal loss的公式为:

FL(p

其中,γ为注意参数,γ>=0,(1-p

进一步的,在步骤4中,使用GIOU对包围框的损失函数进行修改,提升检测任务的效果,GIOU对于交并比指标改进。

进一步的,GIOU的计算方法如下:

步骤1,输入:预测框A,真实框B,S为所有框的集合,其中对于A和B,求得属于A、B得最小框C,C也属于集合S;

步骤2,计算A、B的IOU值,

计算GIOU值:

步骤3,输出:GIOU值。

有益效果:本发明与现有技术相比:

(1)针对行人检测任务中算法的实时性要求,对主干网络中的残差模块进行了改进,提出了一种结合残差思想的新型Res-Inc模块,而又不降低网络特征提取能力并减少网络参数数量和提高网络的实时性能;

(2)针对行人目标的多尺度问题,为解决特征图金字塔不能有效整合多尺度特征的问题,设计了自适应特征融合模块,将特征图金字塔中的特征图自适应加权然后融合以充分利用多尺度信息,以增强网络检测多尺度行人目标的能力;解决复杂场景中的行人遮挡问题,增加注意力机制,提高算法提取和识别行人目标局部特征的能力;

(3)最终输出层从普通卷积层更改为可变形卷积,可以根据需要识别的当前图像内容动态调整它。卷积核采样点在不同位置的位置将根据图像内容进行自适应改变,以适应不同物体的形状,大小等几何变形,从而进一步提高网络预测的准确性;

(4)鉴于被监视图像中行人的姿势和比例存在很大差异,在训练网络的过程中使用了图像数据增强方法,以提高网络检测多尺度和多岗位行人目标的能力;

(5)针对样本中正负样本的不平衡,提高分类损失功能,提高网络挖掘疑难案件的能力,增强检测网络提取和使用浅层特征的能力,提高检测精度。网络;并使用GIOU作为边界框位置损失功能来优化预测框并获得更准确的定位。

附图说明

图1是背景技术中的现有的YOLOV3网络框架图;

图2是对于YOLOV3网络的检测算法改进方法的示意图;

图3是原始版本YOLOV3检测结果;

图4是改进后YOLO-CRD检测结果。

具体实施方式

如图2所示,一种对于YOLOV3网络的检测算法改进方法,包括以下步骤

步骤1,将主干网络的改进,主干网络加入残差模块Res-Inc。

其中,改进后的YOLO-CRD网络的主干架构,依旧沿用残差网络的思想,避免深层次网络带来的梯度消失问题,使网络更容易优化。

本方法鉴参数量更小、特征提取能力更强的Inception模块,Inception能够对输入并行地执行多个卷积、池化操作。

提出并设计了如图所示的残差模块Res-Inc对原始的残差模块进行替代。

首先对于输入的特征图,为了进一步降低网络的参数,按通道对特征图进行切分,分为左右两个分支,左分支各有两对1*3、3*1卷积进行串联。Res-Inc模块在最后进行了通道混合(Channel Shuffle)操作,在Res-Inc模块的输入端,为了降低参数,进行了通道切分,在模块输出特征图前,进行通道混合操作,通道混合主要操作为:假设输入到通道混合层的特征图通道为C,将特征图分成g组(C能够被g整除),每组通道数n=C/g, 将通道维度拆分成(g,n)两个维度,然后将这两个维度进行转置,最终再转换为一个维度,实现多通道之间的信息融合。

改进后的YOLO-CRD的主干网络由10个Res-Inc模块串联而成,为了与YOLOV3 统一,每隔两个Res-Inc模块后会设置一个步长为2的3*3卷积进行下采样,为了实时性,改进后的主干网络延续了YOLOV3主干网络DarkNet53的全卷积网络设计。在Res-Inc 中超参数空洞率可以设为1构成普通的卷积,或者根据需要进行设置来扩大主干网络的感受野,此外通过对Res-Inc两个分支中的空洞率设置不同的参数可以使模块并行的提取多尺度信息,从而提高主干网络整体的特征提取能力。

步骤2,特征图金字塔的改进;特征图金字塔加入自适应特征融合模块、注意力机制与特征增强模块;

对特征图金字塔的改进

相比于传统的特征图金字塔,自适应特征融合模块(AFFM)结构中的各层对不同尺度的特征图进行自适应加权融合后输出本层的特征图。设x

因为采用相加的方式,所以需要将第一层到第三层的输出的特征统一到相同的空间大小和通道数大小,因此需要对不同特征图做上采样或下采样并调整通道数。对于需要上采样的层,例如上图中的自适应特征融合模块3,需要将第一层的特征图x

对于权重参数α,β和γ,是对重定义过大小的level1~level3的特征图经过1*1卷积后得到三个参数。

对于原始的特征图金字塔,根据链式法则,在反向传播时候梯度的计算如下:

其中因为不同尺度的层之间的尺度变化基本为上采样或下采样,因此

假设level1(I,j)对应位置的特征图上有物体且为正样本,其他level上对应的(i,j)位置上可能为负样本,这种情况下在反向传播过程中,梯度既包含正样本也包含负样本,这种不连续性会对梯度造成干扰,造成训练的低效。而采用自适应特征融合模块方式,梯度的公式为:

面对如上的情况,通过控制权重使

与传统的特征图金字塔直接将不同层的特征上采样或下采样后直接对应位置相加的融合方式相比,自适应特征融合模块(AFFM)能够有效过滤冲突信息,自适应地对应的大物体的特征和小物体特征进行分类,根据输出层自适应地融合特征信息,此外,自适应特征融合模块(AFFM)是一个轻量级的全卷积构成的模块,相比于原始的特征图金字塔没有增加过多的参数,对网络的前向速度的影响非常小。

加入注意力机制与特征增强模块。

注意力模块通常通过构建一组网络生成与特征图相同大小的筛选图,按照规则对输入进行筛选,或者给输入特征图上的每个值,分配不同的权重。本次研究中的注意力机制主要指代神经网络中的注意力机制,使用注意力机制来对卷积神经网络的通道和空间区域进行选择。

本方法中所使用的注意力机制模块(Convolutional Block Attention Module,CBAM)示意图,这是一个简单的用于前馈卷积神经网络的有效注意模块。给出一个中间特征映射,模块依次沿着两个独立的维度,通道和空间推断注意图,然后将注意图倍增到用于自适应特征细化的输入特征映射。

在通道分支,同时使用平均池化和最大池化操作来聚合特征映射的空间信息,送到一个共享网络,压缩输入特征图的空间维数,逐元素求和合并,以产生通道注意力图Mc;在空间分支,还是使用平均池化和最大值池化对输入特征图进行压缩操作,这里的压缩变成了通道层面上的压缩,连接起来,用7*7卷积生成空间注意力图谱。CBAM集成网络很好的学习目标对象区域中的信息并从中聚合特征。通过实验发现串联两个注意力模块的效果要优于并联。通道注意力模块放在前面要优于空间注意力模块放在前面。

本方法还引入了特征增强模块RFB进一步提高网络的特征提取能力。突出了感受野大小和偏心率之间的关系,其中较大的权重分配给较小卷积核靠近中心的位置,表明它们比周围的特征点更为重要,RFB模块中用参数rate来表示空洞卷积层的空洞率参数,可根据需要自行修改。在RFB模块中最后会将不同尺寸和空洞率的卷积层输出进行通道上的拼接,达到融合不同特征的目的。通过这种方式能够更好的结合多尺度、多感受野的特征,提高网络的特征提取能力。

步骤3,图像的数据进行增强处理;

图像进行翻转

在深度学习领域,数据增强是研究人员常用的提高模型能力的手段之一,能够有效的提升网络的泛化能力。为更好的表述数据增强的形式,设图像原始的坐标为(x

图像进行平移

本方法图像翻转是采用垂直和水平翻转,通过对图像进行垂直和水平翻转,能够为网络提供更对不同方向上的数据,有利于网路学习到多姿态、多方向上的行人的特征,提升整体的检测效果。

在垂直翻转时,将变换矩阵设为

图像进行尺度缩放

在数据增强中,图像平移也是常规操作,其指的是对图像中的像素在水平、垂直等方向上移动dx,dy个标准像素点距离。设dx为水平方向上的位移量,dy为垂直方向上的位移量。

由此,将变换矩阵设为

图像进行旋转。

图像旋转是以图像的中心为原点,按照随机或者指定的角度进行旋转。由于摄像头位置摆放规范,数据集中的行人多为垂直站立或走动的姿态,在实际的场景中,摄像头的摆放位置可能不一定是水平的,或因为外力原因发生角度便宜,导致采集到的视频出现一定程度上的旋转,且为了拟合行人姿态的多样性,使用旋转后的图像对网络进行训练可以使网络学习到多姿态的行人的特征。

在这个操作中,将变换矩阵设为

步骤4,对于输出结果的损失函数的改进:输出结果加入分类损失函数和包围框位置损失函数。

加入分类损失函数

为解决检测任务中固有的样本不均衡问题,本次研究在改进后的YOLO-CRD算法中,使用focal loss作为分类损失函数,focal loss对分类损失函数交叉熵损失的改进,采用该损失函数目的在于减少易分类样本的权重,使得模型在训练时提高对难分类样本的区分能力。

交叉熵损失以二分类为例,原来的分类损失值是各训练样本交叉熵的总和,并且每个样本采用相同大小的权重。公式如下:

因为是二分类,p表示预测样本属于1的概率(范围为0-1),y表示类别标签,取值为{+1,-1}。当类别标签(y)为1,假如某个样本x被预测为类别1的概率p=0.7,由公式(3-3)可知,交叉熵损失为-log(0.7)。如果p=0.9,那么损失就是-log(0.9),比较两个损失,p=0.7的交叉熵损失大于p=0.9时的损失。多分类的情况以此类推。

为了方便,用p

为了表示简便,用p

CE(p,y)=CE(p

先对交叉熵损失做一个改进作为基础函数:既然单阶段检测算法在训练的时候正负样本的数量差距很大,那么可以给正负样本加上大的权重,负样本出现的频次多,那么就给其一个较小的权重,因此可以通过设定a的值来控制正负样本对总的loss的共享权重。a取比较小的值来降低负样本(多的那类样本)的权重。

CE(p

上述公式在添加权重后能够控制正负样本,但对于容易分类和难分类样本依然没有控制权重的能力,于是继续改进添加系数得到focal loss:

FL(p

γ为注意参数,γ>=0,其作用是调节简单样本权重降低的速率,(1-p

加入包围框位置损失函数

目前目标检测中主流的边界框优化采用的都是包围框的回归损失(MSE loss,L1-smooth loss等),这些方式计算损失值的方式都是根据检测框的“代理属性”——距离,而忽略了检测框本身最显著的性质——IOU。

本方法,将使用GIOU对包围框的损失函数进行修改,提升检测任务的效果。GIOU可看作是对于交并比(Intersection over Union,IOU)指标的一个改进。

GIOU的计算方法流程如下:

输入:预测框A,真实框B,S为所有框的集合

输出:GIOU值

方法:1、对于A和B,求得属于A、B得最小框C,C也属于集合S

2、计算A、B的IOU值,

3、计算GIOU值:

GIOU损失函数替代了原始的YOLOV3的包围框位置损失函数。

使用上述方法,进行模拟处理。网络结构的改进是这项针对YOLOV3的研究中最大的改进。主要设计是Res-Inc模块,用于在原始YOLOV3中重建主干网络Darknet-53。实验中使用的测试集是校准的监控图像。图像尺寸为416*416。如表2所示,在改进骨干网络后,与原始的YOLOV3骨干网络Darknet-53相比,改进后的骨干网络参数减少了约30%。速度也得到了显着提高。

表1对主干网络改进前后参数及实时性对比

至于改进骨干网后的准确性比较,本研究也在测试集上进行了测试。结果示于表4-3。可以看出,虽然减少了骨干网的参数,但是提高了检测的准确性。证明改进后的骨干网不仅有效地减少了网络参数,而且保证了特征提取能力,并具有一定程度的增强

表2对主干网络改进后在验证集上的结果

除了对主干网络的改进,本次研究还设计了自适应特征融合模块(AFFM)、引入了注意力机制模块(CBAM)和特征增强模块(RFB),为更直观的展示这些改进的效果,如表4-4所示,将这些新模块分别与YOLOV3原始网络结合后进行了对比。

表3不同模块的效果对比

如表4所示,在所有新模块中,自适应特征融合模块(AFFM)对骨干网络的改进最大。主要原因是当融合多尺度特征时,自适应特征融合模块解决了原始YOLOV3网络中的特征图金字塔信息。冲突问题使多尺度对象的特征可以根据输出层进行自适应加权和融合。这是改进算法的关键。通过将其他模块的数据与原始YOLOV3的数据进行比较,提高了精度,这表明该改进设计的模块和方法已基本达到了提高算法性能的目的。

表4算法改进前后参数量和实时性对比

最后,将所有改进的方法结合起来,以形成本研究中提出的YOLO-CRD算法与YOLOV3之间的多方向比较,如表5和图3以及图4所示。

表5算法改进前后在测试集上精度对比

从表5和图3以及图4可以看出,改进后的YOLO-CRD在模型参数方面略小于YOLOV3,并且前进速度也有一定程度的提高,但是由于减少参数。与原始的YOLOV3 网络相比,其精度有非常明显的提高,约为15%,这证明YOLO-CRD具有强大的特征提取能力和更准确的预测能力,并在考虑实时性的同时提高了算法的性能。

相关技术
  • 一种对于YOLOV3网络的检测算法改进方法
  • 一种基于YOLOv3与SSR的行人检测算法
技术分类

06120112316585