基于PHOG特征的行人检测算法研究

2018-08-24 07:50,,,,,
计算机测量与控制 2018年8期
关键词:直方图金字塔分类器

,, ,,,

(浙江理工大学 信息学院,杭州 310018)

0 引言

行人检测技术是智能视频监控领域一种重要的技术,它是行人跟踪、行为分析等一系列技术实现的前提。行人检测技术可以广泛用于自动驾驶[1]、机器人视觉[2]、智能监控[3]等应用中。行人检测算法自研究以来,一直是研究热点,吸引了无数的爱好者研究。其检测的主要内容是使用计算机识别出对视频中或者静态图像中行人,并输出相应的位置信息。行人检测算法的主要内容是在检测过程中,提取出行人的显著特征,用于分类器判别,从而输出行人的判别结果。

近年,涌现了很多行人检测算法,其中基于机器学习的算法表现较好。这类算法主要涉及到分类器和特征描述子的选择。2005年,Dalal[4]等人提出HOG(Histogram of oriented gradients)特征,该特征因为很好的稳定性和描述能力而被广泛的研究与应用。HOG算法的特征描述子是对行人轮廓梯度分布的一种描述,该特征描述对局部形变和光照保持较好的鲁棒性。在HOG算法的基础上,提出了很多改进算法[5-7],典型的有DPM[8]算法。DPM算法是Felzenszwalb等人提出的,该算法将行人分解成好几部分再基于不同分辨率进行检测,并增加了HOG特征缺少的颜色信息,一定程度上提高了行人检测准确率。还有一些行人检测的改进算法,例如基于积分通道[9]等算法,有效加快了行人检测的速度。其它使用较多的行人检测算法有HOG+LBP[10],Haar特征[11],还有基于深度学习的算法[13-14]。这些算法都存在检测速度较慢或者漏检率较高等问题。

由于行人的非刚性及环境复杂等原因,使得行人检测存在漏检、实时性差等问题。针对HOG特征检测中速度过慢,漏检率较高的问题,提出一种基于PHOG特征的行人检测算法。该算法解决了以下问题:1)降低了漏检率。通过提出PHOG特征,加强了对局部特征的描述能力,增大了目标和背景的差异;2)减少了检测时间。通过构建特征图的金字塔,从而避免了对多层提取特征,减少了计算量。并且进行了PCA降维,降低了特征复杂度。

1 HOG特征原理

HOG特征的提取方法是:先灰度化、归一化图像,计算图像的方向梯度特征,再将图像划分成多个cell和block。最后串联窗口里所有的block的特征向量,就得到了该窗口的HOG特征描述子。用训练好的行人分类器对该描述子进行判别,再输出判别结果。特征提取过程中,对cell里的像素梯度进行三线性插值,每个cell提取出一个9维的直方图。用该9维直方图代表这个cell的梯度特征,再串联每个block里cell的直方图特征,得到一个高维的HOG特征描述子,该描述子就是窗口的HOG特征。基于HOG特征的行人检测试验结果如图1所示。

图1 基于HOG特征的行人检测

由图1可知,基于HOG特征的行人检测存在漏检和误检的情况。误检如图中细方框,漏检如图中未标记出的行人。分析产生误检的根本原因,发现是该HOG特征对行人的描述子总体上偏向于直立目标的特征,而忽略了行人特有的一些肢体分布特征。产生漏检的原因是,在提取HOG特征时,该特征对行人目标的描述子较弱,目标特征与背景的差异不大,故产生漏检。针对这些问题问题,本文提出PHOG特征。

2 本文算法

2.1 PHOG特征的提取

PHOG特征的主要思想是调整方向梯度直方图的对比度,即增强对行人梯度分布的描述能力,使背景和行人目标的梯度差异更大,从而减少误检和漏检的产生。PHOG特征主要的具体提取过程如下:

1)先计算图像里每个像素的梯度信息,包括方向和大小。

2)将图像划分成多个cell区域。并用含有9个方向的梯度直方图来统计每个cell里像素的梯度幅值,生成每个cell的特征描述子(descriptor)。

3)对每个cell的方向梯度直方图进行调整,得到PHOG特征。根据公式(1)和(2)进行调整,使该cell的梯度直方图整体对比度增大,如图2所示。

图2 直方图对比度增强示意图

4)将多个cell组合成一个block区域,将block区域内cell的descriptor串联起来,生成block区域的descriptor。

5)最后将窗口中所有block区域的descriptor串联起来,得到整个滑动窗口的特征描述子。该特征描述子可用来训练分类器。

步骤3)中,为了增强特征的局部表现力,对每个cell的方向直方图进行调整,增大每个cell直方图的方差(即梯度值大的更大,梯度值小的更小)。根据判别函数来调整cell的直方图特征,具体的判别函数如式(1)、(2)所示:

(1)

(2)

gs(x,y)是该cell内的(x,y)位置的梯度幅值,该cell属于s这个block。b是cell内的像素数目。a1和a2分别是调整系数,要求a1≥a2,且a1>1.0,a2>0。当a1>a2时,就会将梯度值大于均值的梯度以a1比例增大,梯度值小于均值的像素梯度会以a2的比例减小;经过上述对梯度幅值的调整,可以增大每个cell直方图的方差,使cell内的差异更突出。本文实验中a1=1.5,a2=0.8。特征增强过程如图2所示。

由图2可以看出,该直方图纵坐标值小于均值的bin均被压缩,大于均值的均被放大。所以整个直方图的对比度被显著增强,方差也被增大,对该cell内部特征的描述力更强。根据式子(1)和(2)进行了cell特征的调整,block大小为2×2cell。选取其中一块block特征,进行特征调整,调整前后的block特征进行统计对比,如图3所示。对调整前后的特征进行数值分析,如图4所示。

图3 调整前后的block特征值

图4 block特征

观察图4可知,在0~38 bin的范围内,block-PHOG特征比block-HOG特征局部对比度更大,但整体趋势保持一致。block内特征的方差由0.063 414 083增大到0.098 959 88,提高了大约3.5%。对该block所在的窗口提取PHOG特征,将其可视化展现,并与HOG特征进行对比,如图5所示。

图5 传统HOG特征与PHOG特征对比图

观察图5可知,不仅是行人目标的梯度分布特征被增强,背景的特征也被增强,从而目标与背景的整体差异被增大。

上述基于PHOG特征检测的详细步骤如下:

1)预处理部分。对图像进行灰度化,再利用gamma变换降低噪声和光照的干扰。gamma压缩如公式(3)所示。实验中gamma=1/3。

I(x,y)=I(x,y)gamma

(3)

2)根据公式(4)和(5)计算像素的梯度。

g(x,y)x=I(x+1,y)-I(x-1,y)

(4)

g(x,y)y=I(x,y+1)-I(x,y+1)

(5)

其中:I(x,y)是像素灰度值,g(x,y)x和g(x,y)y分别是该像素点处的x方向和y方向的梯度。该像素点处的梯度幅值和方向分别由式(6)和(7)计算。∂(x,y)是该点的梯度方向。本文实验水平、垂直梯度算子取[-1,0,1]、[-1,0,1]T。

(6)

(7)

3)构建cell梯度方向直方图。

将cell内像素的梯度插值,再投影到9维的直方图,用来描述cell内的梯度分布特征。其中每个cell内的梯度方向规定分为9个(0~180度),每个bin对应着该方向的梯度幅值加权和。考虑到部分像素的梯度方向处于两个bin的临界区域附近,则必须计算对相邻区域的影响。所以对该像素梯度方向的相邻区域进行投影,最后再叠加该像素在相邻区域的投影值,获得综合的梯度幅值。将该幅值作为直方图的纵坐标。

4)归一化block值。

由于光照不均匀或者噪声的影响,导致某些block区域与周围的区域差异很大,生成的HOG特征变化较为剧烈。这种HOG特征训练得到的分类器的泛化能力会大大降低。所以为了增加该特征的鲁棒性,对block区域内的像素梯度进行归一化处理,减弱局部剧烈特征对总体特征的不良影响。本文采用的是L2-Norm进行归一化,如式(8)。ε是一个很小的常数值,本文实验ε=0.23。

(8)

根据上述检测步骤,PHOG特征提取过程如图6所示。

图6 PHOG特征提取示意图

本文实验使用的固定滑动窗口,大小为64×128,cell大小为16×16,block大小为2×2的cell,扫描步长设置为8个像素,所以该窗口的HOG特征向量的大小为9×4×7×15=3 780。由于该特征维数较高,本文在后面章节会进行PCA降维。

3 基于PHOG特征的行人检测

基于PHOG特征的行人检测流程如图7所示。

图7 基于PHOG特征的行人检测

对检测图像先进行预处理后提取原图像PHOG特征,得到该图像的特征图如图8所示。观察图8可看出,PHOG特征图相比于传统的HOG特征,对行人目标梯度分布的刻画更强。在该实验原图的特征图中,传统的HOG特征图对行人的描述几乎融于背景,观察不出行人的位置,而PHOG特征可以大致描述出目标的位置及周边环境的特征。

图8 PHOG和HOG特征对比

3.1 PHOG特征金字塔

在提完PHOG特征后,为了加快检测速度(在不降低检测精度的前提下),本文提出对PHOG特征图构建8层特征金字塔,替代传统的构建原始图片的金字塔。特征金字塔构建的具体步骤是:

先获取第i=0层(最底层)特征图,该特征图即是原图的PHOG特征图。获取第i=i+1层的特征图。对第i层特征图进行抽样,抽样长度根据2:1。即对第i层特征图的一个block内的36维PHOG特征抽样,得到第i+1层一个cell内的9维的PHOG特征。抽样计算的公式如式(9)。

重复步骤2,直到i=8,获取完整的特征金字塔。

k=1,2,...,36

(9)

式(9)的原理是计算36维特征数据中,纵坐标值最大的前5个bin值和纵坐标值最小的倒数4个bin值。分别记录这些bin的横、纵坐标值,组合得到新一层的9维cell特征。dmaxi,k是第i层的特征图内block的特征值排序(降序)函数,k是该函数的第k个值。di+1,j是第i+1层的第j个cell的特征值。根据上述步骤构建的PHOG特征金字塔如图9所示。

图9 PHOG特征金字塔示意图

构建的PHOG特征金字塔如图9所示。由于是对特征图进行向下采样获得的特征金字塔,该计算过程中只用到了简单的抽样等计算,相比于传统的HOG图像金字塔每层都要重新计算HOG特征,少了大量的计算量。该特征金字塔构建完成后,每层的滑动窗口都得到一个PHOG特征。整体的检测时间都减少了很多。

3.2 PHOG-PCA特征

如上节所述,每个窗口的都得到一个PHOG特征。但该特征维数高达3 780维,为了加快检测速度,本文对PHOG特征进行有效地PCA[15](Princpel Component Anlysis)降维,得到PHOG-PCA特征。降维实验数据统计如表1所示。

由表1可知,本文基于PHOG特征的PCA降维实验中,当主成分维数N=180时,有保持较高的识别率。当特征维数N在180附近时,检测的识别率都有所下降。所以本文降维后的PHOG特征取前180个主成分,将该180维的PHOG特征记为PHOG-PCA特征。其中,该降维实验中用到的行人分类器SVM是基于INRIA数据集训练得到的。在检测到行人目标后,再进行窗口融合,就获得了精确的行人目标位置。

表1 PHOG特征降维实验

4 实验设计及分析

4.1 实验设置

本文实验采用INRIA数据集,该数据集背景种类较多,行人目标行为变化多样,对于本文算法的测试具有很好的挑战性。INRIA数据集含有训练的正、负样本和测试样本。训练的正、负样本分别有2416和1218。测试集有正样本568,负样本462个。本文算法实验的硬件的运行环境设置为Intel(R) Core(TM) i3-2410M CPU,4 G内存的笔记本。实验采用PHOG-PCA+SVM的检测结构进行检测。

4.2 SVM训练

本文行人检测基于的是线性SVM(Surport Vector Machine)分类器。为提升分类器的泛化能力,本文对负样本进行扩充。通过对INRIA负样本图片进行随机窗口采样,获取到11120张训练负样本。将该训练样本的PHOG-PCA特征集,用于进行SVM交叉训练。本文将训练负样本分成4组,不断获取新的难例,来提升SVM分类器的泛化性能。本文实验基于该SVM分类器进行行人检测实验。

4.3 实验结果及分析

本实验参数:滑动窗口固定大小为64×128,cell大小为16×16像素,block由2×2个cell组成,提取的PHOG特征为3780维。再结合Objectness特征,得到O-PHOG特征,再经过PCA降维,得到196维的PHOG-PCA特征向量。

为验证本文PHOG特征对窗口内行人的描述能力,将PHOG特征、PHOG-PCA特征和其他几种常用行人特征进行检测试验,实验数据如表2所示。

表2 各种特征的行人识别率试验结果 %

由表2可知,本文基于多种特征分别进行了5次实验,并进行了均值统计。相比于传统的HOG特征,LBP特征和Haar特征训练得到的分类器识别率较低,识别率均值分别为63.44%,61.14%。HOG特征的识别率最高为78.1%,均值为76.76%。LBP-HOG的联合特征是的检测率较传统HOG有一定程度的提高。本文提出的PHOG特征识别率高于传统的HOG特征,5次实验中识别率最高的为86.8%,均值也为86.69%。PHOG-PCA特征和PHOG数值相差不大。

为反映本文特征与漏检率的关系,将实验数据统计如图10,该图反映了行人检测漏检率(Miss rate)和每个窗口的误检率(False positve per window)之间的关系。由该图可看出当误检率一定时,本文PHOG特征、PHOG-PCA特征对窗口内目标的描述力最强,所以漏检率比其余特征都低。

图10 各特征检测的漏检率

为验证本文提出的特征在整幅图片中的漏检率,进行了实验与数据统计,如图11。观察图11,PHOG特征和PHOG-PCA特征的漏检率整体偏低。相比于传统HOG检测,在FPPI为10-2时,本文算法将漏检率从35%降到了22%。分析原因是PHOG特征不仅增强了对行人目标的描述,而且也突出了背景的特征,进而增大了两者间的差异,使分类器更易识别目标。实验检测结果如图12所示。

图11 各特征实验对比

本文提出的基于PHOG-PCA特征的行人检测实验结果,如图12所示。由该图可以看出,该算法能准确地检测出图片中的行人,几乎没有漏检。

图12 基于PHOG-PCA特征的检测实验结果图

为直观显示本文算法检测速度,将INRIA测试集尺寸缩减为192×256,在该测试集上进行检测,平均检测时间统计见表3。由表3可看出,本文提出的算法检测速度较快,与其余算法时间相差较多,存在很大优势。

表3 各算法检测时间比较

5 结论

本文提出了一种基于PHOG特征的行人检测算法,针对传统HOG特征的行人检测中存在较高漏检和检测速度慢的问题,提出了解决方法。首先提出了PHOG特征,该特征加强了对目标和背景的描述,有效降低了漏检率。再通过构建特征金字塔及PCA降维,减少了计算量,进而加快了行人检测的速度。从实验结果可以看出,本文算法在行人检测中有较大优势。本文下一步的研究计划是研究行人检测中存在的遮挡问题,进一步提高行人检测的准确率。

猜你喜欢
直方图金字塔分类器
“金字塔”
符合差分隐私的流数据统计直方图发布
学贯中西(6):阐述ML分类器的工作流程
基于朴素Bayes组合的简易集成分类器①
Bp-MRI灰度直方图在鉴别移行带前列腺癌与良性前列腺增生中的应用价值
基于差分隐私的高精度直方图发布方法
Great Vacation Places
一种自适应子融合集成多分类器方法
金字塔是用金子造的吗
中考频数分布直方图题型展示