APP下载

基于3DKAZE通道特征的实时行人检测

2017-06-29陈一民邹国志邹一波高雅平赵林林

计算机应用与软件 2017年5期
关键词:分类器行人特征

陈一民 邹国志 邹一波 高雅平 赵林林

(上海大学计算机工程与科学学院 上海 200444)

基于3DKAZE通道特征的实时行人检测

陈一民 邹国志 邹一波 高雅平 赵林林

(上海大学计算机工程与科学学院 上海 200444)

将二维非线性扩散滤波方法扩展到三维时空域,提出一种新的3DKAZE特征点检测与描述方法。同时提出一种基于3DKAZE通道特征的实时行人检测算法。利用双目视觉的方式获取输入图像对中行人的深度信息进而排除了地面和天空等自由区域,采用HOG+LUV+3DKAZE的积分检测算子进行检测,最后通过训练得到的SoftCascade分类器对得到的描述子进行分类,最终得到目标行人。在Caltech、ETH、INRIA以及TUD-Brussels四个公共基准数据集中的实验结果表明,所提出的行人检测算法的检测结果在准确性上达到了较好的水准,同时也得到了快速实时的效果。

快速行人检测 积分通道特征 3DKAZE 双目视觉

0 引 言

随着Google、特斯拉、沃尔沃等科技公司在无人驾驶领域的研究,无人驾驶越来越成为一个前沿的并具有挑战的领域。毫无疑问,如何快速地对路面物体进行检测感知是无人驾驶的重点。路面目标物体被检测的效率越高,车辆的“反应”也就越快,留给车辆进行换档加速的时间也就越多。于此同时,安全性也是无人驾驶不容重视的,如何有效地降低安全隐患从而避免无谓的事故就要求检测效果要尽可能的准确。这就需要我们在目标检测算法的准确性和实效性之间进行有效地平衡。

目前,行人检测主要受到两个因素的影响:机器学习分类算法和设计的图像特征表示。

从分类器的设计上大体可以分为DPM变体、Deep Networks和Decision Forests三种形式。在足够多的特征环境下,目前还尚且没有直接的结果表明一个特定的分类器压迫比其他分类器更适合行人检测。ConvNet[1]在INRIA数据集构建一个卷积神经网络,直接在原始像素值上通过自学习底层特征来泛化为高层次的特征。尽管目前尚没有相关实验直接表明深度神经网络善于从行人检测中学习特征,但许多成功的方法都使用这个架构来构造更高层次的特征,且实验结果接近了DPM和决策森林等方法[2-3]。

从选取人为设计的图像特征表示来看,目前大部分方法关注的都是边缘纹理、颜色通道、局部形状信息和协方差特征信息等,而对于立体信息、光流信息以及跟踪信息的研究还有待进一步深入。文献[4]在基于递归的二值图像连通区域像素标记算法基础上,加入运动目标的几何特征,很好地实现了多运动目标的检测。研究表明,使用额外的信息对于提高检测结果确实具有重要的意义,大约30%的方法都是通过在输入图像中增加或多样化特征,采用更丰富和更高维度的表示来提高检测质量的。

在快速行人检测方面,Benenson等[5]通过引入stixels世界模型的先验知识缩小目标物体的检测范围。通过对地面信息进行检测,快速地排除地面以下以及行人以上的天空区域等自由空间,缩小检测范围,从而起到快速检测的效果。在目标检测阶段,基于积分通道特征对输入图像进行线性或非线性转换,并利用积分图快速地计算出每个通道的局部矩形区域从而生成相应的特征信息。

在多尺度方面,传统的方法是通过对图像进行缩放得到单模型。但是,这样得到的最优模型的大小很难把握,同时,由于像素的离散化,小尺度的图像会出现“模糊”问题,而在进行检测的时候也需要对输入图像再进行缩放。Dollár等[6]提出一种新的方法,由于相邻尺度之间可以相互近似,这样我们只需对图像缩放N/K次,并用其近似剩下的N-N/K。Benenson等[5]将Dollar的方法进行了“逆转”,训练出N/K个分类器,然后用这N/K个分类器近似余下的N-N/K个不同尺度的分类器,这样在测试阶段就不需要对输入图片重复缩放,从而通过这种将缩放图片的任务从测试阶段转移到训练阶段来达到快速检测的效果。

本文将二维非线性扩散滤波方法扩展到三维时空域,提出了一种新的3DKAZE特征点检测与描述方法,从而更好地适应视频序列。同时,提出了一种基于3DKAZE通道特征的行人检测算法,通过双目视觉的方式获取输入图像对中行人的深度信息,映射到v-disparity图中并利用Hough线检测到地面进而排除了地面和天空等非目标区域,从而缩减了行人检测范围。再采用HOG+LUV+3DKAZE的积分检测算子进行检测,最终通过训练得到的SoftCascade分类器对得到的描述子进行分类,进而获得行人目标。

1 3DKAZE特征

传统的高斯线性核在构建高斯线性尺度空间的同时也破坏了图像的边缘细节,降低了图像的局部准确率和辨别率。相比之下,KAZE[7]等非线性核方法的效果要好得多。通过非线性的扩散滤波,KAZE特征检测与描述算法在降噪的同时也保留了很好的目标物体的边缘细节。但是,KAZE特征是基于二维的空间域,这就使得KAZE方法丢失了视频序列的时间维度信息。基于此,本文提出了一种新的3DKAZE特征检测和描述方法,通过非线性时空转换来完善视频序列中的时空信息。

1.1 非线性尺度空间的构建

非线性扩散滤波是由Perona等[8]提出的。通过在扩散过程中引入电导率函数的概念,从而更好地适应图像的局部结构来减少边缘位置的扩散,这就使得图像是在一个区域内做平滑操作而不是跨过边界做平滑。扩展到三维的电导率系数c为:

(1)

非线性扩散方法通常都是以非线性偏微分方程的形式给出。本文扩展的三维电导率系数c的非线性扩散方程定义如下:

c(x,y,t,e)·△I+▽c·▽I

(2)

其中,div是散度算子, ▽和△分别是时空变量对应的梯度算子和拉普拉斯算子。为了能够维持算法得稳定性,我们将像素级的离散尺度单元σ转换成时间单元,即有e=σ2/2。从理论上来说,这些非线性扩散滤波的偏微分方程式没有解析解的。Perona等提出了一种半隐式的机制,该机制基于非线性扩散尺度空间的框架通过加性运算分离AOS(Additive Operator Splitting)算法来近似微分方程。

1.2 特征检测与描述

在已构建的三维时空非线性尺度中检测特征点的想法源自于传统的二维空间域特征点检测,目的是找到那些在视频序列中的空间和时间维度上都发生大的变化的点。为了能够快速地检测这些兴趣点,我们计算一个尺度归一化的时空二阶Hessian矩阵的响应值,通过在时空维度的不同阈值以及响应值阈值来判定兴趣点。

(3)

其中,Lxx、Lyy、Ltt分别是水平、垂直方向、时间维度的二阶导数,而Lxy、Lxt、Lyt分是三个维度的混合二阶导数。假设H(·;δ2)的三个特征值分别为λ1、λ2、λ3,(λ1<λ2<λ3),计算扩展的时空角点Hessian响应值为:

H=det(H)-ktrace3(H)

=λ1λ2λ3-k(λ1+λ2+λ3)3

(4)

为了得到一个具有旋转不变性的描述子,我们给兴趣点的邻域指定一个主方向。通过计算时空维度方向的Haar小波响应 ,Lx、Ly、Lt。对应的时空梯度表示如下:

(5)

到目前为止,每个像素点具有三个变量来表示梯度在时空维度上的幅值和方向了。如图1所示,在以兴趣点为中心,半斤为6δ的球形区域内,我们均匀地将球体分成20等份。对于其中的每一块,计算以兴趣点为中心呈高斯分布计算分权的小波响应,响应结果以平行于时空维度轴向的Haar小波Lx、Ly、Lt的向量来表示。其中最长的向量就是兴趣点的主向量。最终可以得到描述子v:

v=(∑Lx,∑Ly,∑Lt,∑Lxx,∑Lyy, ∑Ltt,∑Lxy,∑Lxt,∑Lyt)

图1 主方向计算示意图

2 stixels世界模型

传统的图像深度图目标检测是通过立体图像对建立一个密集的深度图,该深度图可以被用作特征检测以增强检测质量,或者被用来减少搜索空间以提高检测速度。如图2所示。

图2 传统的图像深度图计算过程

由于传统的图像深度图计算的高复杂度成为了快速检测过程的一个瓶颈,并且密集深度图的信息远远多于我们需要的信息。而stixels世界模型可以对真实世界进行简化,它假设地面都是局部平坦的,并且所有的物体都可以被描述成一个平的“sticks”,垂直于地面,每个这样的垂直的sticks对应着图片中的一列,被称作stixels[5]。stixels世界模型通过利用几何信息计算出地面上的物体区域,也就是物体的最小世界模型。通过stixels世界模型的先验知识,我们可以大大缩小目标行人的搜索范围。

stixels世界模型会假设地面是局部平坦的,并且地面上的目标物体的高度是限制在一定的范围,通常在0.5~3 m。从模型简化角度来说,stixels世界模型可以分解成三个部分:获取地平面、计算地平面上行人间的距离、计算目标行人的高度。

2.1 地平面评估

stixels世界模型为路平面提供了很好的几何表示[12],它对路平面上的障碍物的相对高度以及立体传感器相对于路面的俯仰角都给出了评估,进而对公路纵剖面图进行分析,抽取出路平面上的目标物体。

通过双目立体图像对,可以计算得到视差图I△。如图3所示,定义视差图I△的函数H,有H(I△)=Iv△,其中H对图像中某一行中具有相同的视差进行累积。我们称Iv△为v视差图(v-disparity image)。对于图像中的第i行来说,II△中的点M的横坐标uM就对应着视差△M,它的灰度级IM则对应着第i行具有相同视差△M的像素点数。所以,通过视差图I△,就可以沿着v轴计算出v视差图Iv△。

图3 v-disparity图计算过程

2.2stixels距离和高度评估

地平面的评估是通过计算水平轴方向上投影的损失量。获取stixels的深度信息从而得到stixels之间的距离信息就需要沿着垂直方向投影,并计算垂直方向的损失量。对于每个u坐标和可能的视差d,通过计算stixels损失量cs(u,d),损失值越小则stixels出现在(u,d)位置的可能性越大。cs(u,d)是有两部分组成的:co(u,d)的物体损失和cg(u,d)的地面损失,即cs(u,d)=co(u,d)+cg(u,d),而:

(6)

其中,|v|表示图像的行数。通过二维动态规划可以计算出每个stixels的视差[5]:

(7)

相比较图像强度,SAD和SSD虽然对光源的一致性依赖性比较强,边缘方向对光的敏感性也要好很多,但是面对遮挡问题或者路面潮湿出现反射时,检测就会出现严重误差。所以在计算损失量的时候添加了一项平滑项,有效地解决部分遮挡问题。由于损失量cm(u,v,d)计算出后都被保存在内存中,并且这个步骤是基于像素计算的,所以可以很好地实现并行计算,从而达到快速检测的效果。图4给出了实验的结果示意图。

图4 stixels距离计算以及目标的高度评估

3 积分通道特征

积分通道特征ICF(Integral Channel Features)是指通过对输入图片进行非线性转换计算得到多个图像通道[6],然后在每个通道上使用局部矩形区域和的特征抽取,这些局部和以及特征可以通过积分图像得到有效的计算,其中包括Haar小波、泛化特征以及局部直方图等,我们把这些特征叫做积分通道特征。

对于输入图像I来说,相应的通道就是原图像的一个映射。使用符号Ω表示通道生成函数,记C=Ω((I)。那么最普通的通道就是通道C=Ω(I)=I的一张原图像的灰色图;类似的,对于彩色图中的每个颜色通道都可以作为一个特征通道;其他的通道可以通过对原图像进行非线性转化计算得到。大量实验结果表明,积分通道特征结合标准的Boosting分类算法对行人检测的效果要好于其他方法。因为其具有以下优点:(1) 不同的通道信息之间具有高度异构性,所以ICF天生具有整合异构信息的能力;(2) 只需极少个参数,所以对参数设置没有那么敏感;(3) 检测阶段考虑到更加准确的空间位置;

本文采用的是HOG+LUV+3DKAZE等11个积分通道特征,即HOG量化后的6个梯度方向、1个梯度幅值,LUV 3个颜色通道以及3DKAZE局部特征通道信息。从某种意义上来说,积分通道特征可以被看作是经典的VJ和DT(HOG+SVM)的结合。

在分类器的设计方面,平衡分类器的准确性和实时性一直是研究的难点。一个常用的方法就是Cascade分类器:将复杂的分类器分解成一系列二分类的子分类器,形成了这种分类器中的决策树,通过由粗到细的逐步分解,以减少复杂度。但是Cascade在通过二分类的子分类器的时候并没有考虑到样本在当前子分类器中表现的好坏,而且如果样本在任一子分类器中没有通过的话,该样本就会被丢弃。对于一个10个阶段的Cascade分类器来说,如果想要在假阳性(false positive rate)为下达到90%的检测率,则每个子分类器阶段都要达到99%的检测率。鉴于此,SoftCascade训练出的是一个单一的由T个特征组成的持续的阶段,分类器的结果形式如下:

(8)

通过计算部分和,构成每个样本的特征“轨迹”,为不同特征之间形成一个很强的统计独立性。在“轨迹”线上的每个特征点设置阈值,如果累积和小于阈值,该样本就被判定为负样本。而“轨迹”线上的每个输出函数都是通过AdaBoost选择的,输出函数对应的权重代表着这个弱分类器的重要性。

4 实验结果与分析

为了实现实时行人检测,我们利用stixels世界模型的先验信息,缩小视频的检测范围,从而加快检测速度。在模型分类上,SoftCascade分类器能够有效地终止那些不可能的检测,减少计算量,提高了检测速度。本文实现了两种检测方法:CPU版和GPU加速版。实验环境是在一台高性能图形工作站中进行的,配有i7-3770K的CPU、24 GB的RAM、Nvidia Quadro 4 000 的专业显卡。在Caltech数据集中的整个训练阶段(CPU+GPU)大约花了5个小时。GPU加速运行的测试下,检测速率可达到100 fps。

4.1 公共数据集

过去几年中,很多公共的行人检测数据集被提了出来,其中最常用的几个有:INRIA,ETH以及Caltech。INRIA是最久的一个数据集,相对来说其图片数量要少,但是它的优点是在不同场景下(城市、沙滩、高山等)对行人的标记都有很高的准确率,这也是其经常被用来作为训练集的又一原因。ETH规模相对来说属于中等。除了INRIA,其他的数据集都是通过视频的方式采集的,所以当考虑光流信息的时候很有用处。在这些数据集中,最流行的要数Caltech这个基准数据集了。目前,大部分视频检测方法都在Caltech上进行评估。

4.2 模型训练

本文的方法是基于Benenson的VeryFast检测子,VeryFast的思想是通过计算图像矩形区域的特征响应的积分通道图来实现的。在这些矩形特征上构建了一系列两层的决策树,其中每棵树上有三个树桩分类器,在这2 000个二层的决策树的弱分类器中通过Boosting进行线性加权得到一个强分类器。这些决策树和他们的权值都是通过离散AdaBoost得到,特征是从30 000个矩形池中随机选取的。训练刚开始是随机选取5 000个负样本,然后boostraps两次,每次增加额外的5 000个负样本。整个训练和测试都是在Caltech数据集下进行的。

图5中,(a) 是所有特征中的权重最大的前10个的特征在矩形区域的局部反应,不同颜色表示正方形的面积是其权重的反应;(b) 显示的是HOG+LUV+3DKAZE的11个通道特征在最后训练模型中所占特征比例图。

图5 特征分布情况

4.3 检测结果

为了对不同的目标检测子进行评估,常用的是从两个方面进行评估:基于窗口的检测子用的是DET(Detection Error Tradeoff)和ROC(Receiver Operating Characteristics)曲线对分类器性能进行量化。而从整体上来说,目标检测子是通过Precision-Recall曲线来衡量检测子对目标位置的检测准确率。不管从什么角度来说,检测子都会得到一个置信度值,通过从一个很低的可能值开始,评估得到参数,如假阳性数(False Positives)、召回率(Recall Rate)或者准确率(Precision Rate),然后逐步增加阈值直到达到可能的最高值,这样就得到一个曲线。

实验中采用DET评估方法。DET衡量的是检测结果与假阳性的比例,在log-log尺度下画出一条MR(Miss Rate,沿着x轴方向)与FPPI(False Positives Per Image,沿着y轴方向)的对应曲线,其中MR值越小,表示分类器效果越好。其值包含的信息与ROC曲线相同,其优点是可以让小概率FPPI的辨别率更容易,尤其是在滑动窗口数量在1 000~10 000级别之间的时候就显得更有必要了。比如通常会使用的假阳性作为检测结果的参考点。

在数据集的选用上,我们分别在Caltech、ETH以及INRIA三个基准数据集中进行了测试。并将结果分别与ConvNet[1]、VeryFast[5]、FPDW[6]、RandForest[9]、Franken[10]、WordChannels[11]、MultiFtr+Motion[12]、JointDeep[13]、InformedHaar[14]、ACF[15]等检测子进行了比较。从图6可以看出,本节中提出的加入3DKAZE新特征通道后的目标检测算法的检测结果达到了很好的水准。图7给出了检测算法在CPU和GPU下的检测结果。

(a) Caltech

(b) ETH

(c) INRIA图6 不同检测子与本文的检测子的比较结果

图7 检测结果示意图

5 结 语

本文提出了一种基于3DKAZE通道特征的行人检测算法,在stixels世界模型中利用双目视觉将输入图像对映射到v-disparity图中进而排除地面和天空等非目标区域,从而缩减了行人检测范围,并采用HOG+LUV+3DKAZE的积分检测算子进行检测,最终通过训练得到的SoftCascade分类器对得到的描述子进行分类检测。

本文提出的检测算法是通过添加人为设计的新特征来提高检测精度的。相比之下,深度神经网络通过对原始像素值进行特征抽取从而进行自学习底层特征以泛化为高层次的特征,尽管目前尚没有确切的证据表明深度神经网络善于从行人检测中学习特征,但是深度学习在探索到底是什么让现在这些人为设计的特征具有很好的表征特性方面具有重大意义,进而设计出更好的特征。

[1] Russakovsky O, Deng J, Su H, et al. ImageNet large scale visual recognition challenge[J]. International Journal of Computer Vision, 2015, 115(3): 211-252.

[2] Szegedy C, Liu W, Jia Y, et al. Going deeper with convolutions[C]//Proceedings of the 2015 IEEE Conference on Computer Vision and Pattern Recognition, 2015: 1-9.

[3] Girshick R, Iandola F, Darrell T, et al. Deformable part models are convolutional neural networks[C]//Proceedings of the 2015 IEEE Conference on Computer Vision and Pattern Recognition, 2015: 437-446.

[4] 崔金魁,宋旭,杨扬.视频监控中多运动目标的检测与跟踪[J].计算机应用与软件, 2013, 30(3): 278-279,290.

[5] Benenson R, Mathias M, Timofte R, et al. Pedestrian detection at 100 frames per second[C]//Computer Vision and Pattern Recognition (CVPR), 2012 IEEE Conference on, IEEE, 2012: 2903-2910.

[6] Dollár P, Belongie S, Perona P. The Fastest Pedestrian Detector in the West[C]//Proceedings of the British Machine Vision Conference, 2010: 1-11.

[7] Alcantarilla P F, Bartoli A, Davison A J. KAZE features[C]//Proceedings of the 12thEuropean Conference on Computer Vision. Springer, 2012: 214-227.

[8] Perona P, Malik J. Scale-space and edge detection using anisotropic diffusion[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 1990, 12(7): 629-639.

[9] Marin J, Vázquez D, López A M, et al. Random forests of local experts for pedestrian detection[C]//Computer Vision (ICCV), 2013 IEEE International Conference on, IEEE, 2013: 2592-2599.

[10] Mathias M, Benenson R, Timofte R, et al. Handling occlusions with franken-classifiers[C]//Computer Vision (ICCV), 2013 IEEE International Conference on, IEEE, 2013: 1505-1512.

[11] Costea A D, Nedevschi S. Word channel based multiscale pedestrian detection without image resizing and using only one classifier[C]//Computer Vision and Pattern Recognition (CVPR), 2014 IEEE Conference on, IEEE, 2014: 2393-2400.

[12] Ouyang W, Wang X. Single-pedestrian detection aided by multi-pedestrian detection[C]//Computer Vision and Pattern Recognition (CVPR), 2013 IEEE Conference on, IEEE, 2013: 3198-3205.

[13] Ouyang W, Wang X. Joint deep learning for pedestrian detection[C]//Computer Vision (ICCV), 2013 IEEE International Conference on, IEEE, 2013: 2056-2063.

[14] Zhang S, Bauckhage C, Cremers A B. Informed haar-like features improve pedestrian detection[C]//Computer Vision and Pattern Recognition (CVPR), 2014 IEEE Conference on, IEEE, 2014: 947-954.

[15] Dollár P, Appel R, Belongie S, et al. Fast feature pyramids for object detection[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2014, 36(8): 1532-1545.

REAL TIME PEDESTRIAN DETECTION BASED ON 3DKAZE CHANNEL FEATURE

Chen Yimin Zou Guozhi Zou Yibo Gao Yapin Zhao Linlin

(CollegeofComputerEngineeringandScience,ShanghaiUniversity,Shanghai200444,China)

A new 3DKAZE feature point detection and description method is proposed by extending the two-dimensional nonlinear diffusion filtering method to three-dimensional space-time domain. At the same time, a real-time pedestrian detection algorithm based on 3DKAZE channel feature is proposed. Using binocular vision to obtain the depth of pedestrian information in the input image and then exclude the free area of the ground and the sky, and using HOG + LUV + 3DKAZE integral detection operator for detection. Finally, we classify the descriptors by training SoftCascade classifier, and finally get the target pedestrians. The experimental results in Caltech, ETH, INRIA and TUD-Brussels four common benchmark datasets show that the pedestrian detection algorithm proposed in this paper achieves a good level of accuracy in the detection results, and also has a fast real-time effect.

Fast pedestrian detection Integral channel feature 3DKAZE Binocular vision

2016-03-15。上海市国际科技合作基金项目(12510708400);上海市自然科学基金项目(14ZR1419700)。陈一民,教授,主研领域:网络与多媒体技术,计算机控制技术。邹国志,硕士生。邹一波,博士生。高雅平,硕士生。赵林林,硕士生。

TP391

A

10.3969/j.issn.1000-386x.2017.05.022

猜你喜欢

分类器行人特征
离散型随机变量的分布列与数字特征
学贯中西(6):阐述ML分类器的工作流程
毒舌出没,行人避让
基于朴素Bayes组合的简易集成分类器①
抓特征解方程组
不忠诚的四个特征
路不为寻找者而设
基于差异性测度的遥感自适应分类器选择
我是行人
曝光闯红灯行人值得借鉴