时间:2024-05-04
杨欢,胡彪
(西南民族大学电气信息工程学院,成都610041)
现如今,人工智能已经应用于各个领域,和传统的一些方法相比,深度学习方法具有更好的鲁棒性和更快速度以及更高的准确率。在计算机视觉领域中,目标检测一直是一个研究热点和难点,然行人检测在很多安防领域和自动驾驶方面都有很高的需求,这引起了人们广泛的关注。行人检测的主要任务是对于输入的图像序列或者视频帧通过检测系统输出包含行人的矩形框。
在传统的行人检测方法中,其主要是先提取梯度方向直方图[1](Histogram of Oriented Gradient,HOG)特征,然后训练支持向量机[2](Support Vector Machine,SVM)分类器,最后利用滑动窗口锁定目标区域对其进行分类判断。这种方法使用人工构造特征进行检测时,存在耗时、鲁棒性差等问题,其特征表征能力不足,很难适应复杂的环境。曲昭伟[3]等采用聚类的方法,并用HOG提取特征,最后使用SVM进行分类,达到了对行人的实时监测。2012年,Krizhecsky[4]等人提出了AlexNet,在ImageNet的图像分类竞赛中证明了其实力。随后,深度卷积神经网络(Deep Convolutional Neu⁃ral Networks,DCNN)走上人工智能最前端,应用于图像识别和其他应用领域,开启机器视觉新领域。主要分为两类:一类是以R-CNN[5]、SPPNet[6]、Fast R-CNN[7]和Faster R-CNN[8]系列为主,该类方法是一个“由粗到精”的过程,首先产生目标候选框,也就是目标位置,然后再对候选区域进行分类和回归,该方法虽检测的精度较高,但因其存在区域建议网络(Region Proposal Networks,RPN),导致检测速度不高;另一类是以YOLO[9]、SSD[10]为代表的基于回归的方法,被视为“一步完成”,通过CNN直接预测出目标的类别及位置坐标,与两阶段检测器相比,其特点是检测速度快,但精度不高。在基于深度学习的行人检测方面,Park[11]等人设计了一种卷积神经网络框架实现行人检测任务,并以端到端的方式训练整个模型;Zhang[12]等为了实现对远程行人的检测,通过Faster R-CNN进行快速选框,然后采用残差网络(ResNet)提取候选区域的特征。郭爱心[13]等人在Faster R-CNN的基础上,提出行人建议区域网络,并采用特征融合方法证明其合理性与有效性。Liu[14]等人提出了一种将检测对象作为高级语义特征任务的新视觉,将行人检测简化成一个简单的中心点和尺度预测任务。
以上这些方法大多都基于anchor进行检测的,使用anchor时,(1)需要在不同尺度的特征层上平铺,每个特征点对应了多个anchor-box,增加了计算耗时,在大量无用样本上花费算力;(2)需要预定义两个超参数:anchor size和aspect ratio,这些预定义的超参数影响模型的性能。本文提出的MRFP模型是一种用于行人检测的anchor-free的设计方法,其主要考虑到感受野和有效感受野的重要性,感受野根据其大小的不同将其看作是不同大小的anchor-box,浅层的特征图映射回原图的感受野范围较小,可以用于检测小尺度行人,越往深层的特征图映射回原图的感受野范围越大,用于检测大尺度行人。整个网络框架都是使用3×3和1×1的卷积核,总共仅20个卷积层,181万的参数量,相比于ResNet[15]、SSD等模型,其速度要快得多。
Anchor-based的检测方法最大的特点就是预先设定好anchor,为了检测不同大小和形状的目标,anchor的设定也是多种多样的。本文MRFP方法把感受野当做一种天然的anchor,在搭建好神经网络的时候,不同特征层的神经元映射到原图的感受野大小和数目便被固定下来了。通过这样的方式便可以根据不同大小的感受野检测不同大小的行人。
在卷积神经网络中,感受野是图像通过卷积神经网络得到的特征图上的每一个像素点映射到输入图像上的某个区域大小。感受野区域越大,则意味着特征图上这个像素点能够接触到原始图像更大的范围,也就是包含着更大的输入图像的信息量,包含着更高层次的语义信息。若感受野越小,则表示像素点映射回输入图像所包含的信息量更少,更多的是趋于局部和细节的特征。因此,如果被检测的行人,能被某个感受野包括,或者刚好结合,那么这个行人就能很好地被检测出来。图1为感受野示意图,感受野的计算公式由式(1)所示。
图1中,kn表示第n层的卷积核大小,sn表示第n层卷积的步长。rn表示经过第n次卷积得到的感受野大小。大小为9×9原始图像在经过三次卷积之后到的特征图每个像素点映射回原始图像的感受野大小为7×7。
图1 感受野示意图
感受野有一个重要属性,即每一像素点对神经元的激活所做的贡献都是不一样的,总的来说,感受野中心点的像素,做的贡献是最大的,如图1中input image的小红色框,,称为有效感受野,该像素点对feature map3粗黑色的像素点的贡献最大,离中心点越远,则贡献越小;有效感受野在网络中的存在类似于高斯分布。
式1中,当n=1时,每个像素点的感受野是1×1,当n≥2时,感受野通过式(1)计算得来。由式(1)可以看出,前面卷积层的卷积核大小及步长都会影响到后面卷积层的感受野大小。卷积越深,其特征图映射回原图的感受野区域越大;反之,层数越浅,其特征图映射回原图的感受野区域越小。
该网络结构总共有20层,有4个loss分支,每个分支负责不同大小行人的检测任务,对于小目标而言,需要更多的细节信息,所以感受野和行人的平均尺寸的比例是较大的;随着卷积越深,检测的目标越大,不需要较多的背景信息就很容易检测到,其比例也逐步减小。该网络框架的具体信息见表1。
表1 MRFP网络框架的具体信息
图2 MRFP的网络结构
该网络结构全部使用3×3的卷积核,表一中,蓝色的卷积层表示采用2×2的步长大小,特征图随着卷积的加深逐步变小;网络中的残差连接只是简单的通道融合。红色部分表示4个不同的loss分支。对于每个loss分支,其又有两个小的分支,一个用于分类,判断是否为行人,一个用于回归box的位置坐标。
和感受野匹配的是正样本,否则认为是负样本。在训练过程中,如果感受野匹配到了多个行人,直接被忽略。本文中,对于每个变换的尺度,设定了灰色区域。灰色区域为[[SLi*0.9],SLi]和[SUi,[SUi*0.1]],其中SLi和SUi分别表示第i层的连续尺寸的下限和上限,比如分支2,检测的目标是[50-100],那么该区域的灰色区域为[50,55]和[90,100],如果目标落在灰色区域,就会被忽略掉。
对于box回归,本文使用L2 loss,回归的groundtruth定义如下:
其中RFx和RFy表示感受野中心点的坐标,和表示box的左上角坐标,和表示box的右下角坐标。RFS表示感受野的大小。当感受野与box进行匹配时被激活,否则忽略,在计算loss的时候,他们具有相同的权重,这样能保证两边平衡,使左上角和右下角的坐标到groundtruth box中心的距离是相等。
构建对应尺度的feature map,一个尺度的feature map分为两种:
(1)一种记录了原图box归一化后的数值,包含了六个通道,前两个用1和0分别标注正负样本,后四个表示左上角和右下角的坐标。
(2)另一种为mask map,包含六个通道,前两个标记正负样本,后四个是一样重复的mask,有box的数值为0,没有的区域数值为1,灰色区域为0~1。在训练过程中,将得到的预测结果和mask相乘,可以把映射到原图上负样本点的预测值归0,正样本点保持不变。因此,只有映射到box的特征图上的点才会进行loss计算。
图3 mask map示意图
Calthch[16]行人检测数据集,取自在城市环境中正常行驶的车辆,是一系列视频数据,总共包含了2300个行人,是行人检测中常用的数据库,规模较大。该数据集主要包含set00~set10这11个数据集以及整个数据集的注释。本文实验由set00~set05六个数据集训练,由set06~set10五个数据集做测试。
硬件方面,训练机器配置Intel i7-4790K CPU;两块GeForce GTX 1080 GPU;8G内存。软件方面,系统采用发行版本为16.04正式版的Linux环境。搭建的实验平台所使用的计算机软件配置为MXnet 1.5.0深度学习框架,CUDA10.2英伟达运算平台。实验中深度网络模型的训练和测试采用Python编程,使用3.7的版本编译,模型的性能评估采用MATLAB编程。
本文方法训练时的参数设置如下:
(1)初始学习率为0.1,分别在300000,600000,900000次迭代的时候乘以0.1降低学习率;
(2)最大迭代次数1000000;
(3)Moment为0.9,使用SGD算法对损失函数进行优化;
(4)batch size设置为32;
(5)NMS[17]阈值设置为0.5。
本文采用MR(Miss Rate)-FPPI(False Positive Per Image)来衡量MRFP模型的性能,式(3)和式(4)分别表示MR和FPPI的含义,在MR-FPPI曲线中两坐标都是基于对数取得。最终得到的数值越低,表明其检测效果越好。
本 文 选 择 了FPDW[18]、ACF[19]、MultiSDP[20]、DBNMut[21]等算法与本文的算法MRFP做对比。图4是MRFP方法在Caltech测试数据集上的检测示例,图5展示了不同算法在Caltech测试数据集上的检测结果,MRFP检测精度高于其他几个算法。
图4 MRFP方法在Caltech测试数据集上的检测示例
图5 不同行人检测算法与MRFP在Caltech数据集上的比较结果
本文提出的MRFP模型是一种基于anchor-free深度学习的行人检测方法。合理设计感受野和行人大小的占比关系,根据不同尺度感受野和不同尺度的行人比例,合理设计四个检测分支,分别用于检测不同尺度的行人。在行人检测数据集Caltech上取得了较好的效果,表明了其合理性,但是该模型在复杂情况下以及人群密集的场景中依然存在误检漏检情况,下一步将在该问题上进行进一步研究,以提高行人检测的精度。
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!