基于深浅层卷积神经网络的目标检测方法转让专利

申请号 : CN201811035114.4

文献号 : CN109241982B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张灿龙何东城李志欣程庆贺

申请人 : 广西师范大学

摘要 :

本发明公开一种基于深浅层卷积神经网络的目标检测方法,首先对训练图像进行特征提取网络,包括深层神经网络和浅层神经网络,得到联合特征图;其次利用推荐网RPN对联合特征图进行进一步提取,得到区域推荐特征图;接着对区域推荐特征图进行特征降维;之后利用降维后的区域推荐特征图对模型进行分类和回归,得到目标检测模型;最后利用该目标检测模型对待测试图像进行检测。本发明能够在保持大目标检测准确率不变的同时,能显著提升对小目标检测的准确率,且目标检测速度没有明显降低。

权利要求 :

1.基于深浅层卷积神经网络的目标检测方法,其特征是,包括步骤如下:

步骤1、以ImageNet数据集预训练的目标检测模型为基础,对目标检测模型进行参数初始化;

目标检测模型分为四部分:第一部分是特征提取网络,包括深层神经网络和浅层神经网络;第二部分是区域推荐网RPN;第三部分是特征降维网络;第四部是全连接层和分类回归层;

在浅层神经网络中,从conv2-1开始,只使用4个卷积层,每个层都有24个内核大小为5×5,填充系数为3的过滤器;在每个卷积层后都设计内核大小为4×4,步长为2的平均池化层;

在深层神经网络中,从conv1-1到pool4的参数与VGG16相同;将conv5-1到conv5-3三个层都改进为填充系数为2,内核大小为3×3,步长为1,扩张系数为2的扩张卷积层;对于7×7的特征区域,其实际卷积内核大小为3x3,空洞值为1;

步骤2、对训练图像进行特征提取,即:

步骤2.1、将训练图像经过两层具有64个内核大小为3×3的过滤器的卷积层进行卷积运算提取图像的卷积特征,这两层卷积层使用ImageNet数据集预训练的模型来固定参数,不参与反向传播;

步骤2.2、将步骤2.1所得到的卷积特征分别送入到浅层卷积神经网络和深层卷积神经网络进行特征提取;其中浅层卷积神经网络包含4层卷积层和4层平均池化层;深层卷积神经网络包含11层卷积层和4层最大池化层;

步骤2.3、将步骤2.2所得到的浅层卷积神经网络所提取的特征和深层卷积神经网络所提取的特征进行有机联合,并压缩成一个统一的空间,得到联合特征图;

步骤3、对步骤2.3所得到的联合特征图使用滑动窗口进行遍历与卷积,并使用区域推荐网络的锚机制,在联合特征图上生成一定数量的区域推荐框,并根据这些区域推荐框从联合特征图中提取出区域推荐特征图;

步骤4、使用特征降维器对步骤3所得到的区域推荐特征图进行降维;

步骤5、对步骤4所得到的降维后区域推荐特征图送入到目标检测模型中,对目标检测模型进行分类训练和回归训练,得到最终的目标检测模型;

步骤6、将待测试图像送入到步骤5所得到的最终的目标检测模型中,并获得待测试图像的分类和回归结果。

2.根据权利要求1所述的基于深浅层卷积神经网络的目标检测方法,其特征是,所述步骤3还进一步包括对联合特征图中的区域推荐框进行筛选的过程:对所得到的区域推荐框使用非最大抑制方法,保留与真实区域重叠率大于等于α的区域推荐框作为正样本区域推荐框,而重叠率小于β的区域推荐框作为负样本区域推荐框,最后根据区域推荐框的得分高低,从正样本区域推荐框的和负样本区域推荐框中选取得分最高的δ个区域推荐框作为最终保留在联合特征图中的区域推荐框,并根据这些最终保留在联合特征图中的区域推荐框从联合特征图中提取区域推荐特征图;其中α、β和δ均为设定值,0<α<1,0<β<1,δ>1。

3.根据权利要求2所述的基于深浅层卷积神经网络的目标检测方法,其特征是,α>β。

说明书 :

基于深浅层卷积神经网络的目标检测方法

技术领域

[0001] 本发明涉及目标检测技术领域,具体涉及一种基于深浅层卷积神经网络的目标检测方法。

背景技术

[0002] 目标检测技术在智能交通、道路检测、军事目标探测等方面有着广泛应用。随着深度学习技术和大型视觉识别数据集的出现,深度目标检测技术得到了快速发展,其中以基于R-CNN(Region-based Convolutional Neural Networks)的两阶段目标检测框架和基于直接回归的单阶段目标检测框架最具代表性。基于R-CNN的目标检测框架主要由图像卷积特征生成、目标候选区域推荐、候选区域分类与回归三大部分组成。与传统的目标检测方法相比,R-CNN系列方法免去了人为提取特征的主观片面性,同时实现了目标特征提取与分类过程的二合一。基于直接回归的单阶段目标检测框架目标检测方法免去了候选区域推荐的环节,通过直接在图像的多个位置回归出目标的类别和边框来完成目标检测。与基于直接回归的方法相比,虽然R-CNN系列方法的检测速度要慢一些,但检测精度普遍要高,由于大多数的目标检测任务对精确度要求更多,因而基于R-CNN系列方法的应用更为广泛。
[0003] 论文“Rich feature hierarchies for accurate object detection and semantic segmentation Tech report(使用丰富的功能层次结构于精确的目标检测和语义分割的技术报告)”(发表于《Conference on Computer Vision and Pattern Recognition(计算机视觉和模式识别会议)》)提出了一种基于区域推荐与CNN相结合的R-CNN目标检测方法,开启了深度目标检测的新纪元。论文“Fast R-CNN(基于快速区域的卷积网络方法)”(发表于《International Conference on Computer Vision(计算机视觉国际会议)》)在R-CNN的基础上嵌入感兴趣区池化层,并在网络中加入多任务损失函数进行边框回归,使目标的候选框检测更准确。论文“Faster R-CNN:Towards Real-Time Object Detection with Region Proposal Networks(更快的R-CNN:利用区域建议网络实现目标实时检测)”(发表于《International Conference on Neural Information Processing Systems(国际神经信息处理系统会议)》)在Fast R-CNN的基础上嵌入区域推荐网络(Region Proposal Network,RPN),较大地提升了目标检测的速度,且真正意义上实现了端到端的训练和测试模式。然而,由这一系列的方法可以看出,目前该类型的目标检测方法都围绕检测精度和速度的提升而改进模型的结构或者加入新的检测手段,但大多数方法都致力于对目标检测方法的改进,容易忽略目标特征的提取方法,这导致目标检测对小物体的检测能力不足,因此有必要发明一种既能提高小物体检测能力又能保持大物体检测能力的方法。

发明内容

[0004] 本发明所要解决的是现有目标检测方法实时性差和对小目标检测准确率不高的问题,提供一种基于深浅层卷积神经网络的目标检测方法,其在保持大目标检测准确率不变的同时,能显著提升对小目标检测的准确率,且目标检测速度没有明显降低。
[0005] 为解决上述问题,本发明是通过以下技术方案实现的:
[0006] 基于深浅层卷积神经网络的目标检测方法,包括步骤如下:
[0007] 步骤1、以ImageNet数据集预训练的目标检测模型为基础,对目标检测模型进行参数初始化;
[0008] 步骤2、对训练图像进行特征提取,即:
[0009] 步骤2.1、将训练图像进行卷积运算提取图像的卷积特征;
[0010] 步骤2.2、将步骤2.1所得到的卷积特征分别送入到浅层卷积神经网络和深层卷积神经网络进行特征提取;
[0011] 步骤2.3、将将步骤2.2所得到的浅层卷积神经网络所提取的特征和深层卷积神经网络所提取的特征进行有机联合,并压缩成一个统一的空间,得到联合特征图;
[0012] 步骤3、对步骤2所得到的联合特征图使用滑动窗口进行遍历与卷积,并使用区域推荐网络的锚机制,在联合特征图上生成一定数量的区域推荐框,并根据这些区域推荐框从联合特征图中提取出区域推荐特征图;
[0013] 步骤4、使用特征降维器对步骤3所得到的区域推荐特征图进行降维;
[0014] 步骤5、对步骤4所得到的降维后区域推荐特征图送入到目标检测模型中,对目标检测模型进行分类训练和回归训练,得到最终的目标检测模型;
[0015] 步骤6、将待测试图像送入到步骤5所得到的最终的目标检测模型中,并获得待测试图像的分类和回归结果。
[0016] 作为改进,所述步骤3还进一步包括对联合特征图中的区域推荐框进行筛选的过程:对所得到的区域推荐框使用非最大抑制方法,保留与真实区域重叠率大于等于α的区域推荐框作为正样本区域推荐框,而重叠率小于β的区域推荐框作为负样本区域推荐框,最后根据区域推荐框的得分高低,从正样本区域推荐框的和负样本区域推荐框的中选取得分最高的δ个区域推荐框作为最终保留在联合特征图中的区域推荐框,并根据这些最终保留在联合特征图中的区域推荐框从联合特征图中提取区域推荐特征图;其中α、β和δ均为设定值,0<α<1,0<β<1,δ>1。
[0017] 上述方案中,α>β。
[0018] 与现有技术相比,本发明具有如下特点:
[0019] (1)在特征提取网络中,深层网络主要用于捕捉大目标的高层语义,而浅层网络主要用于保留小目标的底层图像特征,本发明将两种网络相结合能充分利用不同卷积层的特征来提高对目标检测能力的目的;
[0020] (2)使用的RPN通过使用“锚”机制在卷积特征图上直接产生候选区域。虽然其本质上仍然是采用窗口滑动的方式,但由于它的区域推荐、分类与回归一起共享卷积层特征,从而使得整个网络的检测速度得到大幅提升;
[0021] (3)特征降维器不但可以使结构更紧凑,还能对特征图进行降维,此外特征降维器取代了一层全连接层,使速度有所增加;
[0022] (4)SoftmaxWithLoss函数和SmoothL1Loss函数是目前使用最广泛的目标检测损失函数,因此能较好完成目标检测任务。

附图说明

[0023] 图1为基于深浅层卷积神经网络的目标检测方法的原理图。
[0024] 图2为扩张卷积的原理图,(a)为普通的卷积特征图;(b)为扩张系数为2的扩张卷积特征图。

具体实施方式

[0025] 为了更好地理解本发明的技术方案,下面结合附图对本发明的实施例作详细说明。本实施例是以本发明技术方案为前提进行实施的,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
[0026] 基于深浅层卷积神经网络的目标检测模型,其大致分为四部分:第一部分是特征提取网络,包括深层神经网络和浅层神经网络;第二部分是区域推荐网RPN;第三部分是特征降维网络;第四部是全连接层和分类回归层。
[0027] 在浅层神经网络中,我们不再需要捕获图像的高层语义特征,而是希望获得底层图像特征,因此不需要太深的网络,即不需要使用大量的卷积层。为了让并联结构获得更优的效果,从conv2-1开始,我们只使用4个卷积层,每个层都有24个内核大小为5×5,填充系数为3的过滤器。为使的深层网络和浅层网络拥有相同的空间分辨率,本文还在浅层网络中每个卷积层后都设计内核大小为4×4,步长为2的平均池化层,此结构中使用平均池化可以确保不会因为最大池化而损失过多的图像信息。
[0028] 在深层神经网络中,从conv1-1到pool4的参数与VGG16相同,我们把conv5-1到conv5-3三个层都改进为填充系数为2,内核大小为3×3,步长为1,扩张系数为2的扩张卷积层。扩张卷积是图像分割领域的常用方法,可以在不改变特征图大小的情况下增大感受野,即包含更多的全局信息,其实现原理如图2所示,其中,(a)是普通的卷积特征图,(b)是扩张系数为2的扩张卷积特征图。对于7×7的特征区域,其实际卷积内核大小为3x3,空洞值为1,即除9个黑点外其它点权重为0。虽然相对于普通的卷积特征图内核大小没有变化,但其的感受野已经增大到了7x7,这让每个卷积输出都包含了更多的全局信息。
[0029] 模型需要使用交替优化训练法进行联合训练,整个模型具体的训练过程为:第一步,使用ImageNet数据集预训练的模型来初始化特征提取网络,并用PASCAL VOC数据集单独训练RPN得到候选框。第二步,使用ImageNet数据集预训练的模型重新初始化特征提取网络,并加入第一步生成的候选框,此时使用DS-CNN模型在PASCAL VOC数据集上训练一个单独的检测网络,目的是通过全连接层的损失值以及RPN的候选框得到卷积层参数。第三步,重新训练DS-CNN模型,使用第二步得到的模型初始化并固定卷积层参数,使卷积层不参与反向传播,再利用第一步中单独训练的RPN模型初始化并固定DS-CNN中RPN的参数,使RPN不参与反向传播。训练的目的是使特征提取网络和RPN相连。第四步,利用第三步得到的模型的卷积层参数和RPN参数重新初始化并固定DS-CNN模型,使卷积层和RPN均不参与反向传播,本次训练的目的是微调全连接层,得到最优化的结果。
[0030] 参见图1,一种基于深浅层卷积神经网络的目标检测方法,其具体包括如下步骤:
[0031] 步骤(1)以ImageNet数据集预训练的模型为基础,对目标检测的训练模型进行参数初始化。
[0032] 步骤(2)对训练图像进行特征提取。
[0033] 步骤(2.1)将输入的图像经过两层具有64个内核大小为3×3的过滤器(filter)进行卷积运算提取图像的卷积特征,这两层卷积层使用ImageNet数据集预训练的模型来固定参数,不参与反向传播。
[0034] 步骤(2.2)利用步骤(2.1)得到的卷积层特征,继续送入浅层卷积神经网络进行特征提取。浅层卷积神经网络包含4层卷积层和4层平均池化层。
[0035] 步骤(2.3)在步骤(2.1)进行的同时,步骤(2.1)中的卷积层特征也送入深层卷积神经网络进行特征提取。深层卷积神经网络包含11层卷积层和4层最大池化层。
[0036] 步骤(2.4)Concat特征组合器将(2.2)和(2.3)中的特征进行有机联合,并压缩成一个统一的空间,联合后的维度是536维。
[0037] 步骤(3)获得目标候选区域推荐特征图。
[0038] 对联合后的特征图使用3×3的滑动窗口进行遍历与卷积,使用区域推荐网络(Region Proposal Network,RPN)的“锚”机制,每滑动一次,窗口的中心点位置都能产生12种“锚”,即产生12个区域推荐框,并根据这些区域推荐框从联合特征图中提取出一定数量的推荐特征图,其中一个区域推荐框对应一个推荐特征图。
[0039] 在本实施例中,RPN对联合后的特征图使用3×3的滑动窗口进行遍历与卷积,在3×3滑动窗口的中心点位置,对应输入图像的4种尺度(64,128,256,512)与3种长宽比(1:1,1:2,2:1),共可产生12种不同的区域推荐框,即产生12种锚。因此对于输入的14×14的特征图,共有约2300(14×14×12)个区域推荐框。
[0040] 为了筛选有效的区域推荐框,对RPN部分参数进行调整,使用非最大抑制方法保留与真实区域重叠率大于等于0.5的作为正样本,而重叠率小于0.3的作为负样本,最后根据区域推荐得分高低,选取得分最高的500个区域推荐框作为最终保留在联合特征图上的区域推荐框。
[0041] 在获得区域推荐框后,RPN会把区域推荐框及对应的特征图取出作为新的特征图即区域特征图。则每输入一张训练图片,最终会输出500个区域推荐特征图。
[0042] 步骤(4)使用特征降维器对区域推荐特征图进行降维。
[0043] 特征降维器由感兴趣区池化层和单核卷积层组成。感兴趣区池化层可以在RPN后输出固定大小的特征图,在本文中起压缩特征图的作用。单核卷积层为内核大小为1×1且步长为1的卷积层,在感兴趣区池化层后使用不但可以使结构更紧凑,还能对区域推荐特征图进行降维。通过使用降维器可将特征映射大小固定为7×7,并将维度从536降为512后再征送入全连接层。
[0044] 步骤(5)利用区域推荐特征图对模型进行分类与回归训练,获得目标检测训练模型。
[0045] 降维后的区域推荐特征图经过全连接层(fully connected,FC)处理得到4096维的特征图,随后进行分类训练和回归训练。
[0046] 分类层包含2个元素,用于判别目标和非目标的估计概率。分类训练是4096维的特征图经过全连接层cls_score层得到21维的特征图,cls_score层用于分类,输出K+1维数组p,表示属于K类和背景的概率。因为所使用的训练数据集PASCAL VOC有K=20个类,而背景属于1个类,则全连接层的输出为21。
[0047] loss_cls层使用SoftmaxWithLoss函数作为分类的损失函数。其由真实分类u对应的概率决定,计算公式为
[0048] Lcls=-log pu  (1)
[0049] 回归层包含4个坐标元素(x,y,w,h),用于确定目标位置。回归训练是4096维的特征图经过全连接层bbox_prdict层得到84维的特征图,bbox_prdict层用于调整候选区域位置,输出4*K维数组t,表示分别属于K类时应该平移缩放的参数。
[0050] loss_bbox层使用SmoothL1Loss函数作为检测框定位的损失函数。其用于比较回归时预测的平移缩放的参数tu和真实的参数v之间的差别,计算公式为
[0051]
[0052] 其中函数g为Smooth L1误差,其取值公式为
[0053]
[0054] 分别使用SoftmaxWithLoss函数和SmoothL1Loss函数作为损失函数进行迭代求Loss的最小值。迭代完成后得到最终的训练模型。损失函数的结果为分类结果和回归结果的加权和,如果分类为背景则不考虑回归的损失,其计算公式为
[0055]
[0056] 步骤(6)以训练得到的模型作为初始化模型,固定测试网络中的所有参数,使用Softmax分类器以及目标候选区域推荐方法,获得待测试图像的分类和回归结果。
[0057] 需要说明的是,尽管以上本发明所述的实施例是说明性的,但这并非是对本发明的限制,因此本发明并不局限于上述具体实施方式中。在不脱离本发明原理的情况下,凡是本领域技术人员在本发明的启示下获得的其它实施方式,均视为在本发明的保护之内。