一种基于深度学习多网络软融合的行人检测方法与流程

文档序号:20444223发布日期:2020-04-17 22:37阅读:240来源:国知局
一种基于深度学习多网络软融合的行人检测方法与流程

本发明涉及图像处理、目标检测及深度学习技术领域,尤其是一种基于深度学习多网络软融合的行人检测方法。



背景技术:

目标检测是计算机视觉中一个重要的问题,其需要在视频或数字图像中检测对象的位置。目标检测广泛应用于图像检测、目标识别、视频监控等领域。行人检测作为目标检测问题的一个分支,涉及到检测特定的人类类别,其在自动驾驶、人员识别、机器人等领域有着广泛的应用。

行人检测算法的目标是在图像或视频中绘制边界框,实时准确描述出行人的位置。然而,由于准确性和速度之间的权衡,这是很难实现的。因为低分辨率的输入可以实现快速的目标检测,但目标检测精确度较差;高分辨率的输入可以实现更精确的目标检测,但处理速度较慢。当处理相对简单的图像场景和清晰的前景物体时,一般行人检测算法己经可以取得良好的结果。但是当在一些特定的环境下,如拥挤的场景、非人为的物体遮挡、行人的不同外观(不同的姿势或服装风格)实时准确描述行人的位置更具有挑战性。

行人检测的主要可以分为生成区域提议、特征提取和行人确认三部分。传统的方法通常使用基于滑动窗口的技术来生成区域提议,梯度方向直方图(hog)或尺度不变特征变换(sift)等作为特征提取器,支持向量机(svm)或自适应增强(adboost)等作为行人确认方法;而随着深度学习的发展,其在行人检测中的应用也越来越多,主流方法分为两类:基于对象候选区域(objectproposalbased)的方法和基于回归(regressionbased)的方法。基于对象候选区域的方法也称为二阶方法,其首先通过使用区域提议(regionproposal)模块生成一组可能包含行人的候选边界框(boundingbox),然后使用深度卷积神经网络对这些边界框进行分类和回归。在各种基于对象候选区域的行人检测方法中,主要是基于rcnn,fastrcnn,fasterrcnn系列进行改进提升检测性能。基于回归的目标检测方法又称为一阶方法,和基于目标候选区域的方法相比,基于回归的行人检测方法要简单许多,其不需要进行候选区域提取和随后的重采样操作,同时在一定程度上可以实现实时检测,但是其检测性能低于二阶方法。在各种基于回归的行人检测方法中,主要是基于yolo系列,ssd系列进行改进尽可能提升检测性能,实现实时高效的检测。



技术实现要素:

本发明的目的在于:本发明提供了一种基于深度学习多网络软融合的行人检测方法,克服现有方法在面对行人检测准确性和速度之间的权衡下不能实现实时准确描述出行人位置的问题,在实现实时检测情况下能够提高检测能力。

本发明采用的技术方案如下:

一种基于深度学习多网络软融合的行人检测方法,包括如下步骤:

步骤1:输入待处理图像;

步骤2:将步骤1中的图像输入一个以darknet-53为基础网络的yolov3行人候选区生成器中,生成行人候选区;

步骤3:将步骤1中的图像输入前端预测模块,输出c个特征图;

步骤4:将步骤3中的c个特征图输入语义分割系统,输出c个包含上下文信息的二进制掩码特征图;

步骤5:将语义分割系统的结果与行人候选区生成器产生的行人候选结果进行软融合;

步骤6:输出检测图像。

优选地,所述步骤2包括如下步骤:

步骤2.1、将输入图片划分为s×s个单元格,为每个单元格分配3个需要预测的行人候选区边界框,对yolov3进行训练,以获得每一个预测的行人候选区边界框所对应的坐标位置信息和置信度;

步骤2.2、在yolov3网络中融合3个尺度,在多个尺度的融合特征图上分别对行人独立做检测,得到行人候选区的坐标位置信息;

其次,利用k均值聚类算法对数据集聚类产生锚框的初始值,每个尺度下分配3个锚框,由于每个单元格预测3个行人候选区边界框,对应3个锚框,因此3个尺度下共9个锚框;

每个单元格输出(1+4+c)*3个值,4代表4个预测的定位信息、1代表1个置信度得分、3代表3个锚框和c代表c个条件类别概率,这里c=1,只有行人一类,所以共输出18个值;

采用逻辑回归对每个行人候选区的边界框坐标位置信息进行预测:

bx=σ(tx)+cx

by=σ(ty)+cy

其中:σ是sigmoid激活函数,(tx,ty,tw,th)为yolov3网络学习的4个预测的定位信息,pw,ph是预设先验框的宽、高,cx,cy为单元格的坐标偏移量,(bx,by,bw,bh)为最终预测的行人候选区边界框的坐标位置信息;

yolov3训练(tx,ty,tw,th)的目标损失函数由以下公式得到:

其中:λcoord和λnoobj为常数是用来平衡有物体的预测框与没有物体预测框的类别比例;t'x、t'y、t'w和t'h表示标签数值;表示在第i个格点的第j个预测框,若对应的真正的对象(groundtruth),则返回1,否则返回0;表示在第i个格点的第j个预测框,若有分配对应的groundtruth,则返回0,否则返回1,pi(c)为物体类别的概率,这里指是行人的概率,ci'为包含一个对象的概率与预测边界框和标签边界框交集iou的乘积即ci为预测边界框与标签边界框的交集iou值即置信度;

步骤2.3、在yolov3训练过程中,增加yolov3原网络中的置信度接收范围即降低检测行人候选区的置信度阈值,生成大量的行人候选区,确保候选区覆盖待检测图像中所有的行人;其训练参数的具体设置如下:初始学习率设置为0.001,40000个batch之后,学习率缩小为原来的1/10,即变为0.0001,45000个batch之后,学习率继续衰减,减小到0.00001,共50000个batch。

优选地,所述步骤3包括如下步骤:

步骤3.1、对vgg-16网络进行修改,将其中完全连接层转换成卷积层,删除vgg-16网络结构中倒数第二个和倒数第三个最大池化(maxpool)和跨行层,从而得到前端预测模块,并使用原始分类网络的参数进行初始化训练后,输出更高分辨率的特征图;

步骤3.2、使用前端预测模块,待检测图像进行密集的预测,生成c个64×64初步的语义特征图。

优选地,所述步骤4包括如下步骤:

步骤4.1、利用聚合多尺度上下文信息构建语义分割系统,语义分割系统的输入为前端预测模块生成的c个64×64初步语义特征图,语义分割系统共8层网络,前7层为基本的聚合多尺度上下文信息模块,对前7层分别应用不同扩张因子的3×3×c扩张卷积核进行特征提取,其中第1层上是直接进行卷积,第2到6层是分别使用不同的扩张因子进行扩张卷积,第7层直接进行卷积。每次卷积后都进行点截断max(·,0),以截断超出图像的部分,保持卷积前后图像大小相同。最后一层即第8层执行1×1的卷积。最后对语义分割系统进行训练,以使语义分割系统输出c个64×64精炼的语义特征图。

步骤4.2、扩张卷积聚合多尺度上下文信息,支持以指数方式扩展感受野,而不会丢失分辨率或覆盖率。其扩张区域的大小为(2i+2-1)×(2i+2-1),扩张因子为2i,感受野的大小为((2i+2-1)-(2i+1-2))×((2i+2-1)-(2i+1-2)),i=0,1,...,n-2表示第几次扩张;扩张过程中,当感受野的大小基本与输入大小一致时,即停止扩张,因此第2到6层的扩张因子大小分别为1、2、4、8和16,扩张后的感受野大小分别是5*5、9*9、17*17、33*33和65*65。

步骤4.3、将语义分割系统和步骤3中的前端预测模块联合在cityscapes数据集上进行训练,将cityscapes数据集中的“person”和“rider”类都设置为行人,其余类都是背景。训练参数具体设置如下:采用随机梯度下降法(sgd),最小批量为14,初始学习率设置为0.001,40000个batch之后,学习率缩小为原来的1/10,即变为0.0001,45000个batch之后,学习率继续衰减,减小到0.00001,共60000个batch。

优选地,所述步骤5的具体步骤为:

步骤5.1、将步骤4的语义特征图生成二进制掩码特征图,其中前景像素设置为1以表示感兴趣的类别(如行人),背景像素设置为0。

步骤5.2、将步骤2中行人候选区生成器生成的行人候选区边界框(bx,by,bw,bh)坐标位置信息映射到二进制掩码特征图上,得到二进制掩码特征图上的行人候选区边界框;缩放所有二进制掩码特征图上的行人候选区边界框,使其具有与行人核相同的大小;

步骤5.3、使用软融合比例因子对二进制掩码特征图上的行人候选区边界框内的像素和行人核进行加权和计算,其计算方式如下:

sresult=syolov3×sss

其中:sss表示该语义分割系统输出的语义分割特征图结果是行人的得分;syolov3表示行人候选区生成器输出行人候选区结果是行人的得分;sresult表示最终输出结果是行人的得分;abb是边界框的面积;掩模mask(i,j)是在图像中(i,j)处的二进制掩码像素值;核kernel(i,j)是在图像中(i,j)处的行人核。kernel中心的像素值往往比边界处的像素值高,这与感兴趣的对象在边界框的中心相一致,kernel有增强检测的效果,它的边界框适合感兴趣的对象(如,行人)。

步骤5.4、根据sresult得分高低,去除步骤2中行人候选区中错检行人的边界框,最终得到真正的行人检测框。

综上所述,由于采用了上述技术方案,本发明的有益效果是:

1.本发明由于利用yolov3作为行人候选区生成器产生大量的行人候选框有效提高了行人的检测精度;

2.本发明利用前端预测模块和语义分割对输入图像进行像素级的分类,避免了yolov3等回归框网络的粗略检测问题,从而提高了目标检测的能力,可有效地解决单一网络检测精度不够的问题;

3.本发明利用软融合对行人候选框和语义分割二值掩模进行融合,从而精细输出结果;同时,二者的组合使用,提升了对小目标的检测能力,可适用范围更广;

4.本发明将行人候选区生成器和语义分割两个系统进行并行组网构成行人检测系统框架,从而实现快速检测;该系统能够准确、高效、鲁棒地检测各种挑战场景下的行人和其他目标类。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本发明的行人检测系统流程图;

图2为本发明图1中行人候选生成器yolov3网络结构;

图3为本发明图2中的boundingbox坐标转换公式图;

图4为本发明图1中前端预测模块基础网络vgg-16网络结构;

图5为本发明图1中语义分割系统中第0次扩张的卷积结构;

图6为本发明图1中语义分割系统中第1次扩张的卷积结构;

图7为本发明图1中软融合的结果图;

图8为本发明图1中语义分割系统中上下文网络体系结构。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明,即所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。

因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以下结合实施例对本发明的特征和性能作进一步的详细描述。

实施例一

一种基于深度学习多网络软融合的行人检测方法,实施方式的流程图如图1所示,由行人候选区提取和行人语义分割两个并行运算部分组成,其中语义分割细化整个系统的最终行人检测结果,系统运算速度取决于处理慢的分支,最后通过软融合的方式将两部分结果进行融合输出。具体包括如下步骤:

步骤1:输入待处理图像。

步骤2:将步骤1中的图像输入一个以图2的darknet-53为基础网络的yolov3行人候选区生成器中,生成行人候选区。

进一步,所述步骤2中的yolov3具体实施步骤如下:

步骤2.1、首先,在yolov3网络中融合3个尺度(13*13、26*26和52*52),在多个尺度的融合特征图上分别独立做检测,增强对小目标的检测效果。其次,利用k-means聚类算法对数据集聚类产生anchorbox(锚框)的初始值,每个尺度下分配3个anchorbox,每个单元格预测3个boundingbox(边界框),对应3个anchorbox,每个单元格输出(1+4+c)*3个值(4个定位信息、1个置信度得分和c个条件类别概率)。最后,经过如下公式对4维位置数值tx,ty,tw,th进行解码,如图3所示,得到预测框的中心点坐标(x,y)与宽高(w,h):

bx=σ(tx)+cx

by=σ(ty)+cy

其中:σ(tx),σ(ty)是基于矩形框中心点左上角格点坐标的偏移量,σ是sigmoid激活函数,pw,ph是先验框的宽、高,通过上述公式,计算出实际预测框的宽高bw,bh。

yolov3的多任务训练目标损失函数由以下公式得到:

其中:λ用来平衡有物体的预测框与没有物体预测框的类别比例;t'x、t'y、t'w和t'h表示标签数值;表示在第i个格点的第j个预测框,若对应的groundtruth,则返回1,否则返回0;表示在第i个格点的第j个预测框,若有分配对应的groundtruth,则返回0,否则返回1。

步骤2.2、利用每个行人候选区都是与其定位框坐标和置信度评分相关联的特点,首先降低yolov3检测候选区的置信度阈值,然后生成大量的候选区,最终检测所有真正的行人。

步骤2.3、首先,加载在imagenet上训练得到的预训练摸型darknet-53,删除原始分类器,接着,在cityscapes数据集上进行微调训练,训练过程中使用adam优化器,训练模型时,采用水平翻转、调整角度、曝光度、色调及饱和度等数据增强的方式来扩大模型训练样本,增强模型的泛化性能,降低过拟合。初始学习率设置为0.001,40000个batch之后,学习率缩小为原来的1/10,即变为0.0001,45000个batch之后,学习率继续衰减,减小到0.00001。

步骤3:将步骤1中的图像输入前端预测模块,输出c个特征图。

进一步,所述步骤3的具体步骤如下:

步骤3.1、将vgg-16中完全连接层转换成卷积层,删除vgg-16网络结构中倒数第二个和倒数第三个maxpool和跨行层。具体地,maxpool层和跨行层中的每一层都被移除,对于每个被删除的层,其后所有层中的卷积都被放大2倍,且后面的所有层中的卷积对于每个被删除的层都被放大了2倍。因此,在两个删除层之后的最终层中的卷积被扩大了4倍,并使用原始分类网络的参数进行初始化,产生更高分辨率的输出。最后以64×64的分辨率生成特征图。

步骤3.2、对图4中的vgg-16网络结构进行调整得到前端预测模块,以进行密集的预测。

步骤4:将步骤3中的c个特征图输入语义分割系统,输出c个包含上下文信息的特征图。

进一步,所述步骤4的具体步骤如下:

步骤4.1、利用聚合多尺度上下文信息构建语义分割系统,语义分割系统的输入为前端预测模块生成的c个64×64初步语义特征图,语义分割系统共8层网络,其网络结构形式如图8所示,前7层为基本的聚合多尺度上下文信息模块,对前7层分别应用不同扩张因子的3×3×c扩张卷积核进行特征提取,其中第1层上是直接进行卷积,第2到6层是分别使用不同的扩张因子进行扩张卷积,第7层直接进行卷积。每次卷积后都进行点截断max(·,0),以截断超出图像的部分,保持卷积前后图像大小相同。最后一层即第8层执行1×1的卷积。最后对语义分割系统进行训练,以使语义分割系统输出c个64×64精炼的语义特征图。

步骤4.2、扩张卷积聚合多尺度上下文信息,如图4和5所示,支持以指数方式扩展感受野,而不会丢失分辨率或覆盖率。其扩张区域的大小为(2i+2-1)×(2i+2-1),扩张因子为2i,感受野的大小为((2i+2-1)-(2i+1-2))×((2i+2-1)-(2i+1-2)),i=0,1,...,n-2表示第几次扩张;扩张过程中,当感受野的大小基本与输入大小一致时,即停止扩张,因此第2到6层的扩张因子大小分别为1、2、4、8和16,扩张后的感受野大小分别是5*5、9*9、17*17、33*33和65*65。

步骤4.3、将语义分割系统和步骤3中的前端预测模块联合在cityscapes数据集上进行训练,将cityscapes数据集中的“person”和“rider”类都设置为行人,其余类都是背景。训练参数具体设置如下:采用随机梯度下降法(sgd),最小批量为14,初始学习率设置为0.001,40000个batch之后,学习率缩小为原来的1/10,即变为0.0001,45000个batch之后,学习率继续衰减,减小到0.00001,共60000个batch。步骤5:将语义分割系统的结果与行人候选区生成器产生的行人候选结果进行融合。

进一步,所述步骤5的具体步骤如下:

步骤5.1、将步骤4的语义特征图生成二进制掩码特征图,其中前景像素设置为1以表示感兴趣的类别(如行人),背景像素设置为0。

步骤5.2、将步骤2中行人候选区生成器生成的行人候选区边界框(bx,by,bw,bh)坐标位置信息映射到二进制掩码特征图上,得到二进制掩码特征图上的行人候选区边界框;缩放所有二进制掩码特征图上的行人候选区边界框,使其具有与行人核相同的大小;

步骤5.3、使用软融合比例因子对二进制掩码特征图上的行人候选区边界框内的像素和行人核进行加权和计算,其计算方式如下:

sresult=syolov3×sss

其中:sss表示该语义分割系统输出的语义分割特征图结果是行人的得分;syolov3表示行人候选区生成器输出行人候选区结果是行人的得分;sresult表示最终输出结果是行人的得分;abb是边界框的面积;掩模mask(i,j)是在图像中(i,j)处的二进制掩码像素值;核kernel(i,j)是在图像中(i,j)处的行人核。kernel中心的像素值往往比边界处的像素值高,这与感兴趣的对象在边界框的中心相一致,kernel有增强检测的效果,它的边界框适合感兴趣的对象(如,行人)。

步骤5.4、根据sresult得分高低,去除步骤2中行人候选区中错检行人的边界框,最终得到真正的行人检测框。

步骤6:输出检测图像。

本发明中,行人检测系统利用yolov3作为行人候选区生成器产生大量的行人候选框有效提高了行人的检测精度;利用前端预测模块和语义分割对输入图像进行像素级的分类,避免了yolov3等回归框网络的粗略检测问题,从而提高了目标检测的能力,可有效地解决单一网络检测精度不够的问题;利用软融合对行人候选框和语义分割二值掩模进行融合,从而精细输出结果;同时,二者的组合使用,提升了对小目标的检测能力,可适用范围更广;将行人候选区生成器和语义分割两个系统进行并行组网构成行人检测系统框架,从而实现快速检测;该系统能够准确、高效、鲁棒地检测各种挑战场景下的行人和其他目标类。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

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