《电子技术应用》

结合轮廓粗筛和HOG细分的快速行人检测方法

2017年电子技术应用第6期 作者:张 莉1,魏艳鸣2,周 兵3
2017/7/20 12:01:00

张  莉1,魏艳鸣2,周  兵3

(1.浙江长征职业技术学院 计算机与信息技术系,浙江 杭州310012;

2.河南经贸职业学院 信息管理系,河南 郑州450018;3.郑州大学 信息工程学院,河南 郑州450001)


    摘  要: 为解决现有行人检测方法虚警率高、运算效率低的问题,提出一种快速行人检测方法。首先,依靠轮廓的几何特征进行第一层粗筛选,依据轮廓的不变矩特征进行第二层粗筛选,剔除干扰目标,降低虚警率。在此基础上,裁剪图像上的可疑图像块,仅在可疑图像块上提取HOG特征,并结合线性支持向量机进行特征分类,进一步降低虚警率。同时由于大幅减少了提取HOG特征的数量,从而提高了运算效率。仿真实验在INRIA数据集上进行训练,在Caltech数据集上进行验证。结果表明,该方法的行人检测虚警率低,运算效率高。

    关键词: 行人检测;轮廓提取;不变矩;方向梯度直方图;支持向量机

    中图分类号: TP391

    文献标识码: A

    DOI:10.16157/j.issn.0258-7998.2017.06.033



    中文引用格式: 张莉,魏艳鸣,周兵. 结合轮廓粗筛和HOG细分的快速行人检测方法[J].电子技术应用,2017,43(6):130-133,137.

    英文引用格式: Zhang Li,Wei Yanming,Zhou Bin. A fast pedestrian detection method combining contour rough selection and HOG fine classification[J].Application of Electronic Technique,2017,43(6):130-133,137.

0 引言

    行人检测是依靠视频图像处理与机器学习等方法从视频或图像中自动发现行人目标的技术,广泛应用于视频监控、人工智能等领域[1]。特征提取与分类是行人检测的核心,现有行人检测方法主要围绕这两个方面进行深入研究,如文献[2]-[4]结合Haar特征和Adaboost分类器进行行人检测,文献[5]-[8]结合梯度方向直方图特征(Histogram of Oriented Gradients,HOG)和支持向量机(Support Vector Machines,SVM)分类器进行行人检测,文献[9]-[10]采用深度学习方法进行行人检测。不同的应用场合对行人检测性能的要求往往也不同,现有方法在实际应用过程中还存在一些问题,譬如视频监控、图像搜索等应用场合对行人检测的运算效率要求较高,同时希望虚警率尽可能低,从而降低后续分析处理的工作量,现有行人检测方法的虚警率和运算效率还难以满足这些应用场合的要求。本文主要针对这些对行人检测的虚警率和运算效率要求较高的应用场合,提出一种结合轮廓粗筛和HOG细分的快速行人检测方法,解决现有基于图像的行人检测方法运算效率低、虚警率高的问题。基本思路是:在轮廓粗筛阶段,依据轮廓特征剔除部分干扰目标,降低虚警率和提高运算效率;在HOG细分阶段,依据HOG特征和线性SVM分类器进一步降低虚警率。通过结合轮廓粗筛和HOG细分,降低行人检测的虚警率并提高运算效率。

1 本文方法

    本文方法的设计思想是采用运算效率高的轮廓粗筛方法快速定位图像中的可疑区域,然后仅针对可疑区域进行HOG细分,降低全图HOG特征提取的耗时,提高运算效率。同时融合轮廓特征和HOG特征进行行人检测,降低虚警率。本文方法主要包括图像预处理、边缘检测、轮廓提取、轮廓粗筛、可疑图像块裁剪、HOG细分和行人窗口滤波7个环节,详细描述如下。

1.1 图像预处理

    图像预处理主要是对图像光照进行归一化,避免不同场景下光照差异大引起的行人误检。本文仅使用图像的亮度信息进行行人检测,故仅采用Gamma标准化方法校正图像的亮度信息,校正公式为:

    jsj4-gs1.gif

其中,f0(x,y)和f(x,y)分别表示校正前后像素点(x,y)处的亮度值。γ为校正系数。本文为了增强行人目标边缘的亮度差异,选择小于1的γ值。在本文中,γ取经验值0.75。

1.2 边缘检测

    在实际图像中,往往背景区域所占面积比目标区域大很大。这样在背景区域上检测行人目标不仅有可能会造成虚警,而且耗费了大量的时间。因此,本文先对图像进行边缘检测,目标是将背景区域和目标区域区分开来,避免在背景区域上进行行人检测造成的时间消耗和虚警现象。具体是采用Prewitt梯度算子来检测目标区域的边缘。记Gx和Gy分别表示图像f在像素点(x,y)处沿x和y方向的梯度,则梯度模值m(x,y)可以表示为:

    jsj4-gs2.gif

其中,W和H分别表示图像的宽度和高度。当像素点对应的梯度模值大于设定阈值TE时,认为像素点为边缘点,否则为背景点。本文取阈值TE=0.35。边缘图像e为二值图像,为了便于后续的轮廓提取,本文采用数学形态学的击中与击不中变换对边缘图像进行细化处理。

1.3 轮廓提取

    轮廓提取采用贪婪搜索方法,从图像中任一边缘点开始,采用8-邻接跟踪搜索方式,记录跟踪到的每一个边缘点,直到边缘点满足轮廓跟踪终止条件为止。其中,边缘点的轮廓跟踪终止条件为:

    (1)边缘点在8邻域内无可跟踪的边缘点(需要说明的是:已经跟踪过的边缘点不再重复跟踪,实际操作过程中将跟踪过的边缘点像素值置为0);

    (2)边缘点为图像的边界点。

    在轮廓跟踪过程中,一旦当前跟踪的边缘点满足上述两个条件之一,则终止该轮廓的跟踪过程,然后记录轮廓上的所有像素点的坐标,用该像素点坐标集合来描述该轮廓,表示为:

    jsj4-gs3.gif

其中,Kn表示第n个轮廓Cn的像素点总数。

    按照上述思路,提取边缘图像中所有轮廓,直至边缘图像中无未被跟踪过的边缘点。

1.4 轮廓粗筛

    轮廓粗筛是指依据目标的轮廓特征粗筛选出可能包含行人的目标。本文采用两层轮廓粗筛策略,具体描述如下。

    (1)先验知识筛选

    本文只考虑正常行走姿态下的行人检测,在该姿态下,行人目标轮廓的外接矩形框的宽度和高度满足一些先验知识。记第n个轮廓Cn的宽度和高度分别为wn、hn,则有:

    jsj4-gs4.gif

其中,max和min分别表示取最大值和取最小值操作。本文依据行人轮廓宽度和高度的统计结果,制定一个宽松的先验知识筛选条件,目标是避免剔除行人目标。筛选条件可以表示为:

    jsj4-gs5.gif

其中,Thigh和Tlow分别表示轮廓高宽比的上、下限,取值在实验部分讨论。如果轮廓的外接矩形宽度和高度不满足上述筛选条件,则剔除该轮廓,也即判定该轮廓不可能包含行人目标。

    (2)轮廓不变矩特征分类

jsj4-gs6-7.gif

    记:

jsj4-gs8-15.gif

    得到每一个轮廓的不变矩特征之后,将其代入已训练好的分类器进行分类。因此,该部分的实现过程可以分为训练和验证两个阶段,具体描述如下。

    在训练阶段,构建一个包含行人目标轮廓正样本和非行人目标轮廓负样本的训练样本集(具体在实验部分讨论),然后提取正负样本中轮廓的不变矩特征,最后采用SVM对不变矩特征进行分类(实现过程参考文献[11],其中SVM的核函数选择径向基函数),得到轮廓特征分类器。

    在验证阶段,对当前图像中提取到的每一个轮廓,提取不变矩特征,然后采用SVM方法进行分类(分类器用训练阶段生成的轮廓特征分类器)。分类结果为正的轮廓可能包含行人目标,将其保留。而分类结果为负的轮廓不包含行人目标,将其剔除。

1.5 可疑图像块裁剪

    经过轮廓粗筛后,保留的轮廓可能存在行人目标,为了降低行人检测的虚警率,本文再采用HOG细分策略对这些轮廓区域的图像特性进行进一步的分析,确认该轮廓区域是否确实包含了行人目标。考虑到HOG特征一般从灰度图像中提取,因此先要裁剪可疑图像块,也即从原始灰度图像中裁剪出可疑轮廓外接矩形框所框出的图像块。为了避免漏检行人目标,在裁剪可疑图像块时对轮廓的外接矩形框进行了扩充,这样可以将行人目标完整地保留在可疑图像块中。具体地,对于第n个轮廓Cn,得到的裁剪矩形框为(xrn,yrn,wrn,hrn),其中,(xrn,yrn)表示裁剪矩形框的左上角顶点坐标,wrn、hrn分别表示裁剪矩形框的宽度和高度,求解公式为:

    jsj4-gs16.gif

其中,χ表示矩形框的扩充量。考虑到目标距离摄像机远近不同时,其尺度差异很大。因此,参数χ不宜取固定值。考虑到图像中行人的高度比宽度稳定(因为人的手部和腿部运动都会导致行人外接矩形框的宽度发生较大变化),故本文取参数χ=0.1hn,这样不同尺寸目标的参数χ取值与轮廓外接矩形框的高度比例固定,从而避免了不同位置目标裁剪矩形框扩充比例差异大的问题。

1.6 HOG细分

    HOG特征在行人检测领域取得了很好的应用效果,本文也采用HOG特征进行行人的细分类。与文献[5]中所述的基于HOG特征和SVM分类器进行行人检测的方法的区别在于,本文采用轮廓粗筛选定了图像中的可疑图像块,而可疑图像块的尺寸远小于原图像的尺寸,这样降低了特征提取的运算量,进而提高了运算效率。与文献[5]相比,这里中没有进行亮度校正操作,因为在本文的图像预处理阶段已经进行了亮度校正操作。另外,这里又进行了一次梯度运算,原因是HOG特征提取时常采用一维梯度模板:(-1,0,1)。该模板提取的梯度特征能更好地描述行人和其他目标的差异。而本文在提取轮廓时不宜采用一维梯度模板,因为一维梯度模板的抗干扰能力较弱。其他操作与文献[5]的描述相同,其中,梯度方向投票是在6×6单元格内,统计空间和方向上所有像素点梯度模值的累加和;对比度归一化是对各单元格的梯度模值进行归一化;HOG特征计算是计算单元格内的方向梯度直方图;线性SVM分类器是采用训练好的HOG特征分类器对当前HOG特征进行分类,当分类器的输出为正时,表明检测到行人目标,记录检测到的行人窗口,也即前一节计算得到的裁剪矩形框(xrn,yrn,wrn,hrn)。否则,丢弃该可疑图像块。

1.7 行人窗口滤波

    考虑到前述步骤检测到的行人窗口可能存在单一行人目标被检测多次的情况,因此需要对检测到的行人窗口进行滤波,基本思路是将重合度较大的行人窗口合并,具体实现方法是:对于检测到的任一行人窗口,计算其与检测到的其他行人窗口的重合度(也即两个窗口交叉部分的面积与两个窗口所包围的总面积的比值),如果重合度大于阈值TS(在本文中,阈值TS取经验值70%),则判定两个检测窗口所包含的行人为同一人,此时将两个检测窗口合并,合并后的行人检测窗口表示为:

    jsj4-gs17.gif

其中,(xi,yi,wi,hi)和(xj,yj,wj,hj)表示合并前的两个行人检测窗口。合并之后,保留合并后的行人检测窗口,删除合并前的两个行人检测窗口。

    所有行人检测窗口经过滤波之后,余下的行人检测窗口即为检测到的行人窗口。

2 仿真实验

2.1 实验说明

    本文方法用到了两个分类器:(1)轮廓粗筛阶段用到的轮廓特征分类器,(2)HOG细分阶段用到的HOG特征分类器。这两个分类器是在特征训练阶段得到的。特征训练所用的数据集是国际上流行的INRIA数据集。因为该数据集中的每一幅正样本图像中只包含一个人工裁剪的直立行人,易于训练。该数据集中包含行人的图像有3 548幅,不包含行人的图像有1 716幅。在训练HOG特征分类器时,正样本集为包含行人的图像,负样本集为不包含行人的图像。训练过程参照文献[5]。在训练轮廓特征分类器时,先按照本文1.1~1.3节描述的步骤提取图像中的轮廓,然后人工标记行人轮廓和非行人轮廓,分别建立行人轮廓的正样本集和非行人轮廓的负样本集。接着采用1.4节所述的第二层筛选方法提取轮廓不变矩特征并进行训练,得到轮廓特征分类器。另外,按照1.4节所述的第一层筛选方法计算轮廓正样本集中各个轮廓的高宽比,如图1所示。为了保证第一层轮廓粗筛选不会漏选行人目标,图1中各轮廓高宽比要在轮廓高宽比的上下限阈值之内,也即,Thigh≥2.4,Tlow≤1.6。为进一步降低漏检,本文再增加40%的容差,取Thigh=3.4,Tlow=1.0。

jsj4-t1.gif

    考虑到本文主要是针对实际应用而设计,因此算法的测试数据集选用实景拍摄的街景图像数据集Caltech。该数据集为640×480分辨率的视频,帧率为30 f/s,约有250 000帧图像,共标记了2 300个行人。

    算法的性能评价选用虚警率、漏警率和检测耗时3个指标。虚警率是指检测结果中非行人窗口所占的比例,漏警率是指数据集中标记的行人目标中未被检测出的行人目标所占的比例,检测耗时是指平均检测一幅图像所耗费的时间。仿真实验所用的计算机性能参数为:Windows 7操作系统、Intel Core-i5 CPU 3.20 GHz、16 G 内存、Visual Studio 2012软件平台。其中,当检测结果中行人窗口与数据集中标记的行人目标窗口的重合度超过50%时,才认为该行人目标被正确检测。

2.2 算法性能分析

    下面将本文方法与目前应用广泛的Haar+Adaboost方法[3]、HOG+SVM方法[5]和深度学习方法[9]进行性能对比分析。图2显示了不同方法的虚警率和漏警率测试结果。

jsj4-t2.gif

    从图2可以看出,本文方法的虚警率是4种方法中最低的,原因是本文方法采用轮廓筛选剔除了一些干扰目标,从而降低了虚警率。在漏警率方面,本文方法的漏警率高于Haar+Adaboost方法,但与其他两种方法相当。本文方法得到的虚警率和漏警率的平均值要小于其他3种方法。

    表1给出了不同方法的检测耗时对比结果,可见,本文方法的检测耗时明显低于其他3种方法。

jsj4-b1.gif

    综上分析,本文方法在检测行人时具有虚警率低和检测速度快的优点,漏警率指标也与现有方法相当。

3 结束语

    本文提出了一种结合轮廓粗筛和HOG细分的快速行人检测方法。设计思路是先采用运算效率高的轮廓粗筛策略初步选出可疑的图像块,这样可以剔除部分干扰目标,降低虚警率。然后对可疑图像块进行HOG细分,在进一步降低虚警率的同时,由于仅在可疑图像块上执行运算量大的HOG特征提取操作,与在原图像上提取HOG特征相比,运算量大幅降低。实验结果表明,本文方法的虚警率低、运算效率高,适合于对虚警率和运算效率要求较高的行人检测场合。后续研究将进一步降低行人检测的漏警率。

参考文献

[1] 张丽红,李林.基于Adaboost算法选取和组合SVM的行人检测算法[J].测试技术学报,2013(1):73-78.

[2] XING W,ZHAO Y,CHENG R,et al.Fast pedestrian detection based on Haar pre-detection[J].International Journal of Computer and Communication Engineering,2012,1(3):207-209.

[3] HOANG V D,VAVILIN A,JO K H.Pedestrian detection approach based on modified Haar-like features and AdaBoost[C].International Conference on Control,Automation and Systems,2012:614-618.

[4] RAKATE G R,BORHADE S R,JADHAV P S,et al.Advanced pedestrian detection system using combination of Haar-like features,Adaboost algorithm and Edgelet-Shapelet[C].IEEE International Conference on Computational Intelligence & Computing Research,2012:1-5.

[5] 徐渊,许晓亮,李才年,等.结合SVM分类器与HOG特征提取的行人检测[J].计算机工程,2016,42(1):56-60.

[6] ZHOU Z,XU L.Pedestrian detection based on HOG and weak-label structural SVM[J].Journal of Computational Information Systems,2014,10(1):367-374.

[7] YAN J,ZHANG X,LEI Z,et al.Robust multi-resolution pedestrian detection in traffic scenes[C].IEEE Conference on Computer Vision and Pattern Recognition.IEEE Computer Society,2013:3033-3040.

[8] YADAV R P,KUTTY K,UGALE S P.Implementation of robust HOG-SVM based pedestrian classification[J].International Journal of Computer Applications,2015,114(19):10-16.

[9] TIAN Y,LUO P,WANG X,et al.Pedestrian detection aided by deep learning semantic tasks[C].Computer Vision and Pattern Recognition.IEEE,2015:5079-5087.

[10] 曾敏,周益龙.基于深度学习模型的行人检测研究与仿真[J].南京邮电大学学报(自然科学版),2015,35(6):111-116.

[11] WANG Y Q,TIAN D,SONG D Y,et al.Application of improved moment invariants and SVM in the recognition of solar cell debris[C].Advanced Materials Research,2013,805-806:21-26.

继续阅读>>