一种快速行人检测方法及系统与流程

文档序号:20841268发布日期:2020-05-22 17:32阅读:158来源:国知局
一种快速行人检测方法及系统与流程

本发明涉及计算机视觉领域里的目标检测技术领域,尤其涉及一种快速行人检测方法及系统。



背景技术:

视觉信息是人类感知世界的重要来源,研究表明,人类获取外界信息中大约有80%到90%的信息来自于视觉信息。人类可以快速的分析感知到的信息并且对其中所有目标进行定位和识别。计算机视觉技术的最终目的就是让计算机可以像人类一样快速定位、识别以及分析目标,一旦计算机具备了人类的视觉识别能力,那么它在许多领域就可以替代人力,从而大大节约人力成本和生产成本。

目标检测是计算机视觉的重要分支,其目的是对图像中的目标进行精确的定位和分类,行人检测作为目标检测的一个具体的实际应用,是指给定图像和视频,判断出其中是否有行人,如果有,给出行人的具体位置。它是自动驾驶,智能视频监控以及人的行为分析的基础和前提,因此提高行人检测的准确率和鲁棒性具有重要的意义。

传统的行人检测方法是先提取人工设计的分辨率较强的特征,例如梯度直方图特征,haar(haar-likefeatures,哈尔特征)特征,然后使用机器学习中的方法训练出一个分类模型。预测的时候,在图像中,使用滑窗方法对每一个不同尺寸的窗口进行分类,得出前景窗口。然而,行人容易受到光照、姿势、服装、尺度、拍摄角度的影响,这些因素限制了此类模型检测的精度。

2012年以来,深度学习卷积神经网络(convolutionalneuralnetworks,cnn),被用于图像分类和目标检测,并被引入行人检测,大幅度提高检测的精度和鲁棒性,但是cnn的模型参数量大,预测时计算量较大,使得模型的实时性不高,mobilenet(中文名)(领域专有名词,无需中文名)的提出大幅度缓解了这一问题,mobilenet使用可分离卷积层,参数数量较少,但是再imagenet(一个用于视觉对象识别软件研究的大型可视化数据库)上的分类识别精度却只比vgg(visualgeometrygroupnetwork,vgg网络由牛津大学的视觉几何组(visualgeometrygroup)和googledeepmind公司的研究员一起研发的深度卷积神经网络)要低约1%。

cn105335716a公开了一种基于改进udn提取联合特征的行人检测方法,该方法包括一下步骤:(1)图像预处理:对原始输入图像中的人体的整体特征和头部特征进行不同的预处理,使图像边缘和颜色特征更加突出,便于神经网络特征提取;(2)基于卷积神经网络cnn模型对预处理的图像提取人体整体特征;(3)基于卷积神经网络cnn模型对预处理的图像的上1/3部分提取局部特征;(4)对步骤(2)和(3)输出的类别概率进行加权平均得到最终概率值,根据最终概率值判断原始输入图像是否包含行人。该方法利用人体头部区域易于和电线杆、树木等柱状物体区分开来的特点,联合整体特征和头部特征,加权平均它们在cnn上面的输出值,联合cnn和深度置信网络共同进行行人检测,有效提高行人检测的漏检率和误检率。该发明也存在一些明显的不足:(1)网络的深度不够,提取的特征判别性不强。(2)网络未在较大数据集上预训练,利用的数据较少。

cn106203506b公开了一种基于深度学习技术的行人检测方法,(1)其训练阶段采用“逐步迁移”的策略微调,将imagenet上的预训练的zf-net(深度神经网络,2013imagenet图像分类大赛分类任务的冠军)网络在inria(一种静态行人检测数据库)和eth(一种包含行人视频的行人数据库)上面微调;(2)使用“交叉优化”训练方式得到一个改进的fasterr-cnn(一种深度全卷积神经网络)。该方法涉及简单,利用了大量数据,使用改进的fasterr-cnn模型提取特征的鲁棒性强,检测准确率高,漏检率低。但是,该方法存在明显的不足:(1)使用fasterr-cnn模型,参数量大,模型前向传播速度慢,导致检测速度太慢。(2)训练出的模型性能不高。

因此,如何解决现有的行人检测方法及系统精确度和检测效率不兼容已成为本领域技术人员亟待解决的技术问题。



技术实现要素:

本发明提供了一种快速行人检测方法及系统,用以解决现有的行人检测方法及系统精确度和检测效率不兼容已成为本领域技术人员亟待解决的技术问题。

为解决上述技术问题,本发明提出的技术方案为:

一种快速行人检测方法,包括以下步骤:

将mobilenet(google针对手机等嵌入式设备提出的一种轻量级的深层神经网络)网络和rpn(regionproposalnetwork,区域生成网络)网络进行融合,得到mobilenet-rpn检测模型,所述mobilenet-rpn检测模型以待检测的图像为输入,以待检测图像上的预测的行人边框为输出;

获取包含标注有真实的行人边框的行人图像和没有行人的背景图像的训练数据集对所述mobilenet-rpn检测模型进行训练,得到训练好的mobilenet-rpn检测模型;

将待检测图像输入到所述mobilenet-rpn检测模型中,得到待检测图像的预测的行人边框。

优选的,构建mobilenet-rpn检测模型,包括以下步骤:

获取imagenet预训练的mobilenet网络,去掉网络的输出通道数为1024的卷积层及其后面的网络层,得到的网络输出特征层的featurestride(特征跨度)为16,用这个网络作为骨架网络替换fasterr-cnn中的rpn的vgg网络,得到mobilenet-rpn检测模型,并将所述mobilenet-rpn的anchorstride减小8,并设置所述rpn的预测输出层的任一个预测通道负责4个两两相邻的anchors中心点所对应的所有anchors的分类和回归。

优选的,获取包含标注有真实的行人边框的行人图像和没有行人的背景图像的训练数据集对所述mobilenet-rpn检测模型进行训练,具体包括以下步骤:

设置mobilenet-rpn检测模型的训练策略和验证策略;

获取caltech数据集(加州理工学院提供的一个图像物体识别数据集)作为训练数据集,并将所述训练数据集分为训练集和验证集,将所述训练集中的图片输入到mobilenet-rpn检测模型,依照训练策略对所述mobilenet-rpn检测模型进行迭代训练,并在训练过程中,将验证集输入mobilenet-rpn检测模型中,并使用验证策略对迭代次数不同的mobilenet-rpn检测模型进行多次验证,选取验证结果最好的mobilenet-rpn检测模型作为训练好的mobilenet-rpn检测模型。

优选的,所述训练策略为:当训练图片中包含行人时,按比例从预先设置在图片上的anchors中随机选取若干个正样本和若干个负样本计算损失函数并进行反向传播,其中,与图片中行人的真实边框的iou(intersectionoverunion,重叠度)大于第一真实阈值的anchors为正样本,与行人的真实边框的iou小于第二真实阈值的anchors为负样本;当训练图片中不包含行人时,使用onlinehardnegativemining找出loss(损失率)最大的b个anchors,输入至所述mobilenet-rpn模型计算loss进行反向传播,其中b为选择的样本数。

优选的,所述验证策略为:

设置验证时所述行人检测模型的迭代次数r,每迭代k次,就将验证集输入至得到的mobilenet-rpn检测模型进行一次验证,并计算得到的mobilenet-rpn检测模型验证时的logaveragemissrate(lamr,一种精度验证评价指标),当迭代次数r都迭代完,再对得到的mobilenet-rpn检测模型再进行一次验证,并计算最后得到的mobilenet-rpn检测模型验证时的logaveragemissrate,比较各次验证时,得到的mobilenet-rpn检测模型的logaveragemissrate,选取logaveragemissrate最低的mobilenet-rpn检测模型作为训练好的mobilenet-rpn检测模型。

一种计算机系统,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一所述方法的步骤。

本发明具有以下有益效果:

1、本发明提供的一种快速行人检测方法,使用参数量较少的mobilenet网络作为骨架网络替换fasterr-cnn中rpn的vgg网络构成mobilenet-rpn检测模型,使得模型前向传播的计算量小,速度快,从而大幅度提高了基于深度学习方法的行人检测速度。

2、在优选方案中,不同于rpn中的anchors中心点的间隔为16个像素,本发明将把anchors的中心点的间隔从16像素减小到8个像素,即anchorstride减小为8,使得anchors的分布更加的密集,这样anchors更容易包含小目标,其分类更加的精确,回归更加的容易。

3、在优选方案中,将caltech训练数据集进一步分成训练集和验证集,用训练集进行训练,得到不同迭代次数的模型,用验证集进行验证,找出最优的检测模型,防止过拟合;

4、在优选方案中,使用onlinehardnegativemining进一步提高了模型的判别力,减小了误检率,提高检测精度。

除了上面所描述的目的、特征和优点之外,本发明还有其它的目的、特征和优点。下面将参照附图,对本发明作进一步详细的说明。

附图说明

构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是本发明中的mobilenet-rpn检测模型结构示意图;

图2是本发明的优选实施例中的快速行人检测方法的检测效果示意图。

图3是本发明的优选实施例中的mobilenet-rpn检测模型的输出层一个通道负责4个相邻anchors中心点对应的anchors的分类和回归示意图。

图4是本发明中的快速行人检测方法的流程图。

具体实施方式

以下结合附图对本发明的实施例进行详细说明,但是本发明可以由权利要求限定和覆盖的多种不同方式实施。

实施例一:

如图4所示,本发明公开了一种快速行人检测方法,包括以下步骤:

将mobilenet网络和rpn网络进行融合,得到mobilenet-rpn检测模型,所述mobilenet-rpn检测模型以待检测的图像为输入,以待检测图像上的预测的行人边框为输出;

获取包含标注有真实的行人边框的行人图像和没有行人的背景图像的训练数据集对所述mobilenet-rpn检测模型进行训练,得到训练好的mobilenet-rpn检测模型;

将待检测图像输入到所述mobilenet-rpn检测模型中,得到待检测图像的预测的行人边框。

本发明提供的一种快速行人检测方法,使用参数量较少的mobilenet的算法构建轻量级的特征选取网络,使得网络前向传播的计算量小,速度快,从而大幅度提高了基于深度学习方法的行人检测速度。

实施例二:

实施例二是实施例一的拓展实施例,具体包括以下内容:

本发明基于深度学习开源框架pytorch(facebook的官方深度学习框架)实现。

s11:使用良好的分类网络进行迁移学习,利用到目标检测中来提取图像特征已经成为目标检测中基于深度学习的主流方法,常用的网络有在imagenet上预训练过的vgg(visualgeometrygroupnetwork,视觉几何组网络)和zf-net(深度神经网络,2013imagenet分类任务的冠军)网络,然而这两种网络的参数量极大,虽然可以提取判别力较强的特征,但是会导致模型前向传播的计算量太大,使得网络的检测速度极慢而不能应用于实际。

如图1所示,为了提高模型的检测速度,选择mobilenet作为本发明的骨架网络。由于mobilenet使用的是可分离卷积层,网络的参数量小,前向传播的速度快。去掉网络中输出通道数为1024的可分离卷积层,使其输出特征层的featurestride(特征跨度)为16,更易于检测小尺寸的行人。再使用得到的网络作为骨架网络替换fasterr-cnn中rpn的vgg网络,得到mobilenet-rpn检测模型。由于mobile网络在imagenet数据集上面预训练过,使得网络提取的图像特征更具有判别性,这种迁移学习的方式也可以使网络训练的结果更接近全局最优值。

s12:在图像中每隔8个像素点就选择一个像素作为中心,设置9个大小不同,高宽比固定的anchors,其宽度设置为:s=17.3*1.3i,i=0,1,2,3,4,5,6,7,8;

不同与现有的fasterr-cnn中的rpn网络的anchors中心点的间隔为16个像素,只使rpn输出预测层的宽高相比输入图像也缩小16倍,一个通道只负责1个anchors中心点对应的9个anchors的分类和回归。本发明中对现有的rpn网络中的anchors设置作出了改进,即将所述mobilenet-rpn的anchorstride减少至8(anchorstride=8),并且使本发明中的mobilenet-rpn检测模型中的rpn网络中的任一个预测通道负责4个两两相邻的中心点的36个anchors的分类和回归,通道数变为现有的fasterr-cnn的4倍,如图3所示,图3左边是一个64*64的图片,每隔8个像素点选择一个anchors中心点(图中的“+”),然后选择4个一组。图片经过4层kernel为2*2的max-pooling之后得到高宽为(4,4)的输出层,一个输出层负责4个中心点的对应的anchors的分类和回归,图中未画出以“+”为中心的anchors,本发明在每个中心点出设置9个anchors,从而使得anchors的分布更加的密集,这样anchors更容易包含小目标,其分类更加的精确,回归更加的容易。

设置anchors进行分类和预测在目标检测中已经成为一种常用方法,这种方法可以使网络训练、收敛更为简单,也更容易达到我们想要的效果,由于图像中行人的高宽比例都比较接近,可以考虑采用固定的高宽比的anchors。在本发明中,anchors的高宽比固定为0.4。

s2:使用caltech(加州理工学院提供的一个行人检测数据集)训练集训练网络,caltech数据集目前规模最大的行人数据集之一,采用车载摄像头拍摄。图像的标准化是将图像中像素值减去各个通道的均值再除以各个通道的标准差,输入图像的标准化减小了网络输入数据的分布范围,使得网络更容易训练。而回归目标值的标准化是指开始遍历一次数据集,求出正样本(与行人的真实边框的iou大于0.5的anchors)的预测目标,共(n,4)维数据,n是指的训练集上所有正样本的数量,然后求这些数据在每列上的均值和标准差,在训练时,行人anchors偏移的目标值是真实值减去均值再除以标准差之后的值,回归预测的偏移值标准化使得网络需要输出的范围变小,网络更容易收敛。

使用图像的宽和高分别为640像素和480像素,在本发明中,第一真实阈值为0.6,第二真实阈值为0.3,与图片中行人的真实框的iou大于第一真实阈值的特征anchors为正样本,与行人的真实框的iou小于第二真实阈值的特征anchors为负样本;

当图片中包含行人时,使用随机采样从所有的anchors中采集样本,正负样本的比例为1:5,训练的批量数为1,每1张图像选择120个anchors计算损失函数进行训练。

当图像不包含行人时,网络所有的anchors都是负样本,使得整个训练集的正负样本的比例不平衡,容易将负样本anchors误识别为行人,为了抑制这种情况,使用onlinehardnegativemining挖掘出loss较大的负样本训练,增加网络对于比较难分类的背景样本的判断能力,网络使用联合损失函数进行训练,分类损失函数为加权的softmax(逻辑回归模型),坐标回归损失函数为smoothl1(光滑l1函数),回归和分类损失函数的权重为5:1。使用sgd(stochasticgradientdescent,随机梯度下降算法)迭代算法,momentum(动量)=0.9,weight_decay(权重衰减)=0.005,防止过拟合,开始learningrate(学习率)=0.01,60000次迭代时×0.1一共80000次迭代。

s21:s2中的onlinehardnegativemining是指从softmax(激励函数)层输出的行人类别置信度的预测层中找出行人置信度最高(loss也最高)的若干个anchors,从中随机选择部分anchors,再结合随机采样得到的若干个anchors,计算损失函数,进行反向传播训练。

在本发明中,使用不包含行人的图像训练时,使用loss(损失率)最高的120个负样本进行训练,相对于随机采样,这样可以有效的降低模型的误检率,得到更好的分类效果。

检验阶段包括:

s3:从caltech的训练数据集中分出1000张包含行人的图像和3000张背景图像组成验证集,设置验证时所述行人检测模型的迭代次数r,从训练集中分出多张包含行人的图片和多张不包含行人的图片组成验证集,并将所述验证集输入至当行人检测模型进行验证,每迭代k次,就对得到的模型进行一次验证,当迭代次数r都迭代完,对得到的模型再进行一次验证,并从多次验证中选择在验证集上log-averagemissrate最低的行人检测模型,在本发明中迭代次数r设置成80000次、k设置为3000。

测试阶段包括:

s4:图片上每隔8个像素点设置9个anchors,因此一张输入640*480(宽×高)的图像上设置有80*60*9=43200个预测框,使用极大值抑制来滤除掉大多数背景预测框和不精确的预测的行人边框,得到最后的输出预测的行人边框及其置信度,对行人进行定位。

此外,本发明与其它基于深度学习方法的对比如表1所示:

由上表可知和图2所示,本发明公开的一种mobilenet的快速行人检测方法,修改mobilenet提取特征,mobilenet使用可分离卷积,前向传播速度较快,提高检测速度。设置anchors并对anchors进行分类和回归。训练时使用onlinehardnegativemining,找出较难分类的负样本anchors分类。预测时,本发明使用改进的极大值抑制来筛选出最后的预测框,得到最后的检测框,本发明在caltech数据集上得到22.4%的log-averagemissrate。具有准确率高,漏检率低,速度快的优点。

此外,本实施例还公开了一种计算机系统,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述实施例任一所述方法的步骤。

综上可知,本发明提供的一种快速行人检测方法,使用参数量较少的mobilenet网络作为骨架网络替换fasterr-cnn中rpn的vgg网络构成mobilenet-rpn检测模型,使得模型前向传播的计算量小,速度快,从而大幅度提高了基于深度学习方法的行人检测速度。

在优选方案中,不同于rpn中的anchors中心点的间隔为16个像素,本发明将把anchors的中心点的间隔从16像素减小到8个像素,即anchorstride减小为8,使得anchors的分布更加的密集,这样anchors更容易包含小目标,其分类更加的精确,回归更加的容易。

在优选方案中,将caltech训练数据集进一步分成训练集和验证集,用训练集进行训练,得到不同迭代次数的模型,用验证集进行验证,找出最优的检测模型,防止过拟合;

在优选方案中,使用onlinehardnegativemining进一步提高了模型的判别力,减小了误检率,提高检测精度。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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