一种基于深度学习的快速迭代目标检测方法与流程

文档序号:15462953发布日期:2018-09-18 18:36阅读:301来源:国知局

本发明涉及图像处理技术领域,尤其是一种基于深度学习的快速迭代目标检测方法。



背景技术:

目标检测是计算机视觉领域的研究方向之一,计算机视觉目标检测算法的作用是识别图像中出现的物体以及对其进行分类,并且得到物体在图像中的位置。目标检测算法可以分为两类,一是利用人为指定的静态特征及滑动窗口的传统方法,即传统的目标检测算法,二是利用神经网络进行特征提取的深度学习方法。传统的目标检测算法有一个致命的缺点,鲁棒性较弱,这导致了这类传统算法所能应用的场景十分受限。而利用神经网络进行特征提取的深度学习方法可以隐性地学习十分细微的潜在特征,在目标识别精确率上是传统静态特征算子算法的两倍以上,且具有强鲁棒性,被广泛应用在工业生产、视频监控等领域,但目前在深度学习中,目标检测训练数据所囊括的数据量较大,但并非都是有效数据,整体上训练起来非常耗费人力和时间,成本较高,不利于在中小型企业或科研团体中推广发展。



技术实现要素:

为了解决上述问题,本发明的目的是提供一种基于深度学习的快速迭代目标检测方法,可去除训练数据集中的忽略区域,从而免去对数据集中的无效数据进行训练,以节约人力、时间和成本。

为了弥补现有技术的不足,本发明采用的技术方案是:

一种基于深度学习的快速迭代目标检测方法,包括以下步骤:

S1、获取图像并进行标记处理,得到训练数据集;

S2、对所述训练数据集中的标记区域进行聚类,得到聚类信息;

S3、构建卷积神经网络、RPN网络和Fast R-CNN网络;

S4、根据所述聚类信息预设RPN网络并利用RPN网络去除训练数据集中的忽略区域,所述的忽略区域为相对于标记区域中图像清晰的区域的图像模糊区域或图像密集区域;

S5、训练所述的训练数据集,得到深度学习目标检测模型;

S6、判断所述的深度学习目标检测模型是否符合标准,若符合,则得到最终的深度学习目标检测模型,否则执行步骤S7;

S7、扩充训练数据集的容量并进行忽略区域二次剔除处理,执行步骤S5。

进一步,所述步骤S2中,对所述训练数据集中的标记区域进行聚类,得到聚类信息,包括:利用K-Means算法对所述训练数据集中的标记区域进行聚类,得到标记区域的大小及宽高比例信息。

进一步,所述步骤S3中,所述的卷积神经网络用于特征提取,包括十一层;第一层为卷积层,采用的卷积核窗口大小为7*7;第二层和第四层均为最大下采样层,下采样的核窗口大小为3*3;第三层、第五层、第六层、第七层、第八层、第九层、第十层和第十一层均为卷积层,采用的卷积核窗口为3*3;其中,第三层的输入为第五层和第七层的输出,第十一层的输入为第八层和第十层的输出。

进一步,所述卷积神经网络的输出为:

其中输入图像为I,卷积核为K,σ(x)为ReLU激活函数,即

进一步,所述步骤S3中,Fast R-CNN网络用于分类及预测坐标信息,包括:优化组合目标函数,所述的组合目标函数为:L(p,u,tu,v)=(1-pu)3[Lcls(p,u)+λLloc(tu,v)],其中Lcls(p,u)=-logpu,为分类目标函数;为位置目标函数,且所述的p为置信值向量且p∈RK+1,K为检测目标类别数量,u为标记类别,v=(vx,vy,vw,vh)为标记区域坐标向量,为预测区域坐标向量,λ为权重分量。

进一步,所述步骤S6中,判断所述的深度学习目标检测模型是否符合标准,若符合,则得到最终的深度学习目标检测模型,否则执行步骤S7,包括:利用下述公式计算出该深度学习目标检测模型下的检测精确率mAP:其中C表示类别,True_positivec表示在C中被正确检测出来的物体数量,False_positivec表示在C中被误当为物体的数量;若mAP大于或等于60.0,则符合要求,否则执行步骤S7。

进一步,所述步骤S7中,扩充训练数据集的容量,包括:从标记区域之外选出完全符合标准的第一区域和部分符合标准的第二区域,并将第二区域内不符合标准的部分区域标记为忽略区域。

进一步,所述步骤S7中,进行忽略区域二次剔除处理,包括:利用RPN网络扩充出若干个推荐区域,并通过计算最大交并比来剔除与忽略区域相交的推荐区域。

进一步,通过计算最大交并比来剔除与忽略区域相交的推荐区域,包括:利用IOUmax=max(IOU(s,ti)),ti∈T计算最大交并比IOUmax,其中S为RPN网络产生的推荐区域集合,T为忽略区域集合,对任意区域,s∈S;针对每一个推荐区域s,若IOUmax≥0.1,则剔除该推荐区域。

本发明的有益效果是:利用卷积神经网络、RPN网络和Fast R-CNN网络的设计,可进一步扩大深度学习的应用范围,提高其鲁棒性;采用预设好的RPN网络实现忽略区域的去除,简单方便,在加快数据标记的同时,保证了模型训练的有效性,可提高目标检测精确率;通过去除训练数据集中的忽略区域,从而免去对数据集中的无效数据进行训练,可以节约人力、时间和成本;并且对于深度学习目标检测模型进行结果判断及多次扩充训练,可进一步提高深度学习的目标检测精确率。因此,相对于传统目标检测方法,本发明的成本低且目标检测精确率高,可节约大量人力和时间,实现快速的目标检测,同时有效增强了目标检测的鲁棒性。

附图说明

下面结合附图给出本发明较佳实施例,以详细说明本发明的实施方案。

图1是本发明的步骤流程图;

图2是本发明的忽略区域的说明示意图;

图3是本发明的目标检测流程图。

具体实施方式

参照图1,本发明的一种基于深度学习的快速迭代目标检测方法,包括以下步骤:

S1、获取图像并进行标记处理,得到训练数据集;

S2、对所述训练数据集中的标记区域进行聚类,得到聚类信息;

S3、构建卷积神经网络、RPN网络和Fast R-CNN网络;

S4、根据所述聚类信息预设RPN网络并利用RPN网络去除训练数据集中的忽略区域,所述的忽略区域为相对于标记区域中图像清晰的区域的图像模糊区域或图像密集区域;

S5、训练所述的训练数据集,得到深度学习目标检测模型;

S6、判断所述的深度学习目标检测模型是否符合标准,若符合,则得到最终的深度学习目标检测模型,否则执行步骤S7;

S7、扩充训练数据集的容量并进行区域二次剔除处理,执行步骤S5。

具体地,步骤S1中的标记处理为小批量标注,小批量标注即指标注少量图像作为原始训练数据集,比如说标注1000张图像,实验表明单人完成这项任务只需2小时,此处的“小批量”和“少量”是相对于常见的深度学习目标检测算法训练过程中所需的十万级别图像数量而言的。

步骤S4中的忽略区域是指在标注图像的过程中所选定的不适合用来训练神经网络模型的区域,通过在训练过程中剔除该区域对应的特征数据,避免了这个区域的特征数据对目标函数优化的误导,而优化目标函数是基于Fast R-CNN网络来进行的;一般来说,图像中检测目标密集或者目标处于较远视野处的区域可以标记为忽略区域,这些区域的标注工作量大且容易误导目标函数的优化过程,比如在车辆检测任务中,如图2所示,整个图中的区域均为标记区域,各线条为道路的示意线,其中实线框区域内的车辆1、2较为清晰且离视野较近,这是需要研究的目标,而虚线框区域内的车辆3至10较为密集且远离视野处,并不是需要研究的目标,因此可将虚线框区域标记为忽略区域并予以剔除;其中RPN网络,即Region Proposal Network,具有忽略区域剔除功能,可用Python实现,剔除忽略区域的过程是基于RPN网络的Select_Proposal层而进行的。

在步骤S5中,可在Caffe上以随机初始化的方式训练来得到一个深度学习目标检测模型;参照图3,在目标检测时,可先将一幅图像输入至卷积神经网络,从而提取出特征,然后将卷积神经网络的相应输出再输入至RPN网络,最后由Fast R-CNN网络进行预测及优化处理,从而完成一次检测。

利用卷积神经网络、RPN网络和Fast R-CNN网络的设计,可进一步扩大深度学习的应用范围,提高其鲁棒性;采用预设好的RPN网络实现忽略区域的去除,简单方便,在加快数据标记的同时,保证了模型训练的有效性,可提高目标检测精确率;通过去除训练数据集中的忽略区域,从而免去对数据集中的无效数据进行训练,可以节约人力、时间和成本;并且对于深度学习目标检测模型进行结果判断及多次扩充训练,可进一步提高深度学习的目标检测精确率。因此,相对于传统目标检测方法,本发明的成本低且目标检测精确率高,可节约大量人力和时间,实现快速的目标检测,同时有效增强了目标检测的鲁棒性。

其中,所述步骤S2中,对所述训练数据集中的标记区域进行聚类,得到聚类信息,包括:利用K-Means算法对所述训练数据集中的标记区域进行聚类,得到标记区域的大小及宽高比例信息。其中K-Means算法是本领域的一种常用算法。以KITTI数据集为例,可以将Anchorboxes的比值设置为1:2、1:1、2:1,将Anchor boxes大小设置为16×16、32×32、64×64、128×128和256×256,一共得到15种组合,有效地覆盖了KITTI数据集的绝大部分标记数据统计分布情况。

其中,所述步骤S3中,所述的卷积神经网络用于特征提取,包括十一层;第一层为卷积层,采用的卷积核窗口大小为7*7;第二层和第四层均为最大下采样层,下采样的核窗口大小为3*3;第三层、第五层、第六层、第七层、第八层、第九层、第十层和第十一层均为卷积层,采用的卷积核窗口为3*3;其中,第三层的输入为第五层和第七层的输出,第十一层的输入为第八层和第十层的输出。这样设计使得得到的最终特征图像包含不同层次的特征,提高了对不同物理大小的目标物体的识别精确率,有利于增强深度学习的鲁棒性。

其中,所述卷积神经网络的输出为:

其中输入图像为I,卷积核为K,σ(x)为ReLU激活函数,即并且对于最大下采样层,其滑动窗口中心点的输出等于滑窗内的最大元素值。

其中,所述步骤S3中,Fast R-CNN网络用于分类及预测坐标信息,包括:优化组合目标函数,所述的组合目标函数为:L(p,u,tu,v)=(1-pu)3[Lcls(p,u)+λLloc(tu,v)],其中Lcls(p,u)=-logpu,为分类目标函数;为位置目标函数,且所述的p为置信值向量且p∈RK+1,K为检测目标类别数量,u为标记类别,v=(vx,vy,vw,vh)为标记区域坐标向量,为预测区域坐标向量,λ为权重分量,可分配分类目标函数和位置目标函数在组合目标函数中的权重,因子(1-pu)3可用于训练难预测的训练数据。

其中,所述步骤S6中,判断所述的深度学习目标检测模型是否符合标准,若符合,则得到最终的深度学习目标检测模型,否则执行步骤S7,包括:

利用下述公式计算出该深度学习目标检测模型下的检测精确率mAP:其中C表示类别,True_positivec表示在C中被正确检测出来的物体数量,False_positivec表示在C中被误当为物体的数量;若mAP大于或等于60.0,则符合要求,否则执行步骤S7;上述结论是根据申请人的实验所得,利用FasterR-CNN在公开数据集PASCALVOC2007和PASCALVOC2012上的mAP结合参数调整差异而得。

其中,所述步骤S7中,扩充训练数据集的容量,包括:从标记区域之外选出完全符合标准的第一区域和部分符合标准的第二区域,并将第二区域内不符合标准的部分区域标记为忽略区域,这样设计可实现有效扩充数据集的容量,进一步得到更适宜的深度学习模型。

其中,所述步骤S7中,进行区域二次剔除处理,包括:利用RPN网络扩充出若干个推荐区域,并通过计算最大交并比来剔除与忽略区域相交的推荐区域,说明RPN网络还具有区域推荐的功能。

其中,通过计算最大交并比来剔除与忽略区域相交的推荐区域,包括:利用IOUmax=max(IOU(s,ti)),ti∈T计算最大交并比IOUmax,其中S为RPN网络产生的推荐区域集合,T为忽略区域集合,对任意区域,s∈S;针对每一个推荐区域s,若IOUmax≥0.1,则剔除该推荐区域。交并比的定义运算较为常见,即A、B为区域,在此不作赘述。

以上内容对本发明的较佳实施例和基本原理作了详细论述,但本发明并不局限于上述实施方式,熟悉本领域的技术人员应该了解在不违背本发明精神的前提下还会有各种等同变形和替换,这些等同变形和替换都落入要求保护的本发明范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1