基于IKSVM的多特征行人检测算法
2014-01-17张艳丽
张艳丽
(上海海事大学 信息工程学院,上海 201306)
行人检测在人工智能、汽车辅助驾驶、安全监控等领域有着广泛的应用前景。针对行人检测的方法主要有模板匹配法和统计分类法。文献[1]采用梯度方向直方图(HOG)用在静态图像中的行人检测,取得了很高的检测精度,已成为当前主流的行人检测方法。文献[2]提出局部二值特征(LBP)结合HOG特征的行人检测,克服了HOG特征对于行人轮廓边缘信息的收集较多地忽略了平坦的表面,导致分类器对于嘈杂的边缘信息的处理能力和鲁棒性较差的缺陷,较大提高了检测正确率。文献[3]使用Gabor变换结合adaboost算法实现对人体目标的检测,由于Gabor小波能在多个尺度的多个方向提取人体目标的局部变化信息,从而使检测结果更加精确。
融合HOG、LBP、Gabor 3种特征算子,实现了它们在行人检测中的优势互补,更加综合性的表达了行人特征。并且,都采用直方图的提取方法,增强了特征间的融合性。特征提取阶段3种特征同步处理、引入PLS降维,使提高检测精度的同时保证了检测速度。最后,采用IKSVM训练分类器,进一步优化了行人检测系统的性能。
1 算法理论
采用基于IKSVM的多特征行人检测方法,其中,训练阶段对正负行人样本同时提取HOG特征、LBP特征和Gabor特征融合为一个新的行人特征向量集,引入偏最小二乘法(PLS)[4]进行特征降维获得权重较高的特征向量集,通过IKSVM训练得到多特征融合的行人分类器。检测阶段,利用训练好的行人分类器扫描、检测运动区域,得到行人检测结果。该算法框架如图1所示。
图1 行人检测系统框图Fig.1 Pedestrian detection system block diagram
1.1 HOG特征提取
HOG特征是通过计算局部梯度方向直方图来构成人体特征,描述的是边缘结构特征。利用[-1,0,1]梯度算子计算图像中像素点(x,y)处的幅值和梯度方向分别为
式中,G(x,y)梯度幅值,α(x,y)梯度的方向,H(x,y)像素值。
首先,将图像划分成若干个 8×8像素单元(Cell),把[-的梯度方向平均划分为9个区间(Bin),在每个Cell内对所有像素的梯度幅值在各个方向Bin区间进行直方图统计,每相邻4个 Cell形成一个块(Block),用Block对样本图像进行扫描,扫描步长为一个Cell,最后将所有Block的特征串联得到人体的特征。对每个Block内HOG特征使L2-norm范式即式(3)进行归一化,以便能够更进一步对光照、阴影和边缘进行压缩。
式中,V为待归一化的向量,ε为一个较小值,一般取ε=0.1,‖V‖k--k范数,k=1,2。把所有的块串联起来,得到最终64*128图像的特征向量维数为4*9*105=3 780维。
通常将计算α(x,y)落入的区间直接定义为所属区间,但是它在图像块的边界区域容易导致混淆效应,造成特征的不稳定。本文进行插值操作,将α(x,y)对应的梯度投影到相邻的两个方向区间上,可避免上述不足。如图2所示。
图2 梯度方向上的插值处理Fig.2 Process on the gradient direction interpolation
1.2 LBP特征提取
LBP特征很好地兼顾了图像的宏观信息与微观结构,具有高度的识别能力。为了提高基本二元制模式的统计性,Ojala[5]提出了“均匀模式”的概念
实验表明,使用LBP28,2的局部二元模式算时,均匀模式的数量是58,用总数21%的LBP算子,表达了86.2%的纹理信息。
本文采用基于单一分块的局部二元模式特征提取方法,将64*128大小的图片按照16×16的小区域(cell),分为了32个cell;分块过后,对每个cell使用算子求原始模式,将其转化为对应的“均匀模式”。最终得到59维的均匀模式向量;和之前求HOG特征类似,采用L1-范式对已得到的59维向量向量进行归一化,以克服一些噪声的干扰提高鲁棒性。
最后将得到的统计直方图连接成为一个特征向量,则每个检测窗口的LBP特征维数为32*59=1 888维。
图3 LBP特征提取Fig.3 LBPfeature extraction figure
1.3 Gabor特征提取
Gabor特征能够在多个尺度和多个方向上抽取人体目标的灰度变化信息,对目标特点的描述更加精确。二维Gabor滤波器的复数形式
其中,x′=x cosθ+y sinθ,y′=-x sinθ+y cosθ;λ 表示正弦函数波长;θ表示Gabor核函数的方向;ψ表示相位移动;σ表示高斯函数的标准差;γ表示空间的高宽比。
利用二维Gabor小波提取特征:第一步,设计滤波器。为了增强特征间的融合性及对人体目标的描述能力,设定尺度为 2、方向为 4(0°、45°、90°、135°)。 第二步是从各个滤波器的输出中提取Gabor纹理特征。本实验中对 64*128进行Gabor滤波以后的图像进行采样,采样后为16*32=512维的向量。同时,由于对原有图像在4个方向和两个尺度上进行滤波,获得1 024*4=4 096维的向量。Gabor变换响应的平均值如图4所示。
图4 Gabor变换响应的平均值Fig.4 Gabor transform the average response
由图4可见,人体目标区域的Gabor响应平均值在图中显得比较突出,相应最大值总是出现在人体目标的边缘。
1.4 加性交叉核支持向量机(IKSVM)
支持向量机(SVM)[6]是建立在统计学习理论的VC维理论和结构风险最小原理基础上,对特定训练样本的学习精度和学习能力之间寻求最佳折衷,克服了神经网络和传统分类器的过学习、局部极值点和维数灾难等诸多缺点,具备较强的泛化能力。Maji等[7]人提出了加性交叉核 SVM的方法,其在性能上逼近非线性SVM,同时间复杂度上近似于线性SVM,完成了更好的性能平衡。
IKSVM通过一些特殊的交叉核来加速分类过程,设训练数据集为(yi,xi),yi∈{-1,1},xi∈Rn定义加性交叉核函数为
采用IKSVM行人检测分类器,在INRIA实验结果表明,在 FPPW (False Positive Per Window)=10-6时, 漏检率为0.189%;在FPPT=10-4时,漏检率为0.026%。与线性SVM分类器漏检率分别提高14%和12%。
2 算法论述
步骤1:输入视频图像,采用背景减除法把可能包含行人的运动目标检测出来以避免穷尽搜索。
步骤2:尺度变换统一检测窗口大小为64*128,提取运动区域。
步骤3:扫描运动区域按上述方法同时提取HOG、LBP、Gabor特征,形成融合特征集矩阵tx,矩阵的每行代表一个扩展的样本特征向量,H(1)至 H(3 780)代表 HOG的 3 780维特征向量,L(1)至 L(1 888)代表 LBP 特征的 1 888 维向量,G(1)至 G(4 096)代表 Gabor特征的 4 096维特征向量,m 代表正样本数量,n-m代表负样本数量。向量ty中的 1和-1分别代表正负样本。
步骤4:将融合特征矩阵tx和向量ty按式tx=TPT+E,ty=UqT+f(其中T和U是成分向量的矩阵,q表示载荷,f表示残差)分解。然后通过NIPALS算法提取一个成分并初始化向量u;按计算步骤,循环往复直至收敛;最后对矩阵tx,ty进行退化,并继续提取成分,直到提取的成分进行回归能达到一个较为满意的精度为止。
步骤5:通过加性交叉核支持向量机对正负行人样本训练,其中,采用分段多项式函数去近似每1维函数,多项式参数预存在查找表中,可进一步降低分类复杂度,提高分类速度。
步骤6:用训练好的行人分类器,检测行人。
步骤7:标注并输出行人检测结果。
3 实验结果与分析
本文实验在MATLAB2009a上实现,计算机环境配置为3 GHz CPU和4G内存。采用libsvm工具包,选用加性交叉核支持机分类器。训练阶段,数据来源于INRIA行人数据库,正、负样本统一分辨率大小均为64*128,实验种使用3 516个正样本和1 218个负样本作为训练集。检测阶段,利用训练好的行人分类器,对选取的一段INRIAL[8]视频进行行人检测。
对于64*128的检测窗口,采用16×16大小(步进8个像素)对窗口分块,依次按上述方法同时提取HOG、LBP、Gabor特征,共得到9 764维新的特征向量集。通过偏最小二乘的方法计算各主成分权重,丢掉包含行人概率较低的检测窗口,节省检测时间。实验结果使用检错率、漏检率和虚检率、检测时间等来描述特征的分类性能。
在同一样本库、相同的实验条件下,采用加性交叉核支持向量机分别对 HOG,LBP,HOG+LBP,HOG+LBP+Gabor 4类特征进行训练,考察多特征融合检测器的优势,训练结果如表1。
表1 基于不同特征的行人检测效果对比Tab.1 Pedestrian detection results based on different characteristics of contrast
实验结果表明,与单独使用HOG或LBP特征相比,使用联合特征 HOG+LBP、HOG+LBP+Gabor能获得较高的检测率;联合特征HOG+LBP+Gabor在检测性能上与HOG+LBP相比,又有了进一步的提高。在相似的检测率下,基于多特征的行人检测系统具有更低的虚检率。由于综合了多种特征,丰富了行人目标信息,从而提高了检测性能。
使用融合特征,比较了线性核SVM和加性交叉核 SVM分类器在分类性能上的差别,结果列于表2。
由表2可见,线性SVM其训练和分类速度快速虽比IKSVM稍快,但检测率、虚检率不及加性交叉核SVM的方法。综合快速的训练和分类速度、准确的检测率性能,加性交叉核SVM的方法更能完成较好的性能平衡。
表2 线性SVM与加性交叉核SVM分类器性能对比Tab.2 Linear SVM and IKSVM classification performance comparison
分别采用 HOG+IKSVM、HOG-LBP+IKSVM、HOG-LBPGabor+IKSVM 3种方法检测行人,选取视频中第50帧、第100帧和第150帧,对比检测结果,如图5。
图5 行人检测结果Fig.5 Pedestrian detection results
由3种方法的检测结果表明,HOG-LBP+IKSVM在检测率及漏检率相对于HOG+IKSVM都有所提高;HOG-LBPGabor+IKSVM相对于前两种方法不但能更准确的检测出行人,还解决了部分遮挡问题。
4 结束语
采用融合HOG、LBP和 Gabor这 3种特征算子,更加准确、全面的描述了行人特征。由于融合后的特征向量集维数较高,引入偏最小二乘法(PLS)对融合特征集进行降维;综合平衡分类器检测性能,采用加性交叉核支持向量机训练并实现行人检测。实验结果表明,本方法优化了系统结构,在降低误检率的同时保证了检测速度。
[1]Dalal N,Triggs B.Histograms of oriented gradients for human detection [C]//IEEE Conference on Computer Vision and Pattern Recognition, San Diego,CA, USA,2005:886-893.
[2]Wang Xiaoyu,Han Tony X,Yan Shuicheng.An HOG-LBP human detector with partial occlusion handling[C]//IEEE International Conference on Computer Vision, Kyoto,Japan,2009:32-39.
[3]梁英宏.基于 Gabor变换和 Adaboost算法的人体目标检测分类器[J].计算机工程与设计,2009,30(24):5790-5792.LIANG Ying-hong.Detect human target classification based on Gabor transform and Adaboost algorithm[J].Computer Engineering and Design,2009,30(24):5790-5792.
[4]Wold H.Path models with latent variables:the NIPALS approach[M].Quantitative Sociology:International perspectives on mathematical and statistical model building,Academic Press,1975:307-357.
[5]Ojala T,Pietikainen M,Maenpaa T.Multiresolution gray scale and potation invariant texture classification with local binary pattern[J].IEEETransaction,2002,24(7);971-987.
[6]Cortes, Corinna,Vapnik,et al.Support-Vector Networks[J].Machine Learning,1995,20,273-297.
[7]Maji S,Berg A,Malik J.Efficient classification for additive kernel SVMs[J].IEEE Transactions on Pattern A-nalysis and Machine Intelligence,2013,35(1):66-77.
[8]Dalal N,Triggs B.INRIA person dataset [EB/OL].http://pascal.inrialpes.fr/human/,2009-10-09.