APP下载

改进的基于增强型HOG的行人检测算法①

2020-11-13李文书阮梦慧王志骁

计算机系统应用 2020年10期
关键词:识别率分类器梯度

李文书,韩 洋,阮梦慧,王志骁

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

近年来,行人检测在众多领域得到了广泛的发展,日渐成为计算机视觉和模式识别领域中的关键问题.然而,由于行人身材和姿态多样性、光线多变、背景复杂等原因,使得行人检测依旧是计算机视觉研究的热点与难点[1–3].

自2005年,Dalal 等人[4,5]提出了方向梯度直方图(HOG)特征后,行人检测技术进入快速发展阶段.HOG特征用于描述图像中像素值的梯度信息,该特征对行人边缘信息描述充分,对光照变化不敏感,目前仍是行人检测领域中应用最广泛的特征算子.Dalal 等人提出的HOG 特征结合支持向量机(SVM)分类器的行人检测方法在INRIA 数据集上检测精度达90%,但是检测速度非常慢.在Dalal 等人的研究成果基础上,学者们纷纷提出了改进方法.

为了提高检测精度,陈锐等人[6]提出了一种利用主成分分析法(PCA)对HOG 特征进行降维后与局部二值模式(LBP)特征进行融合,再使用SVM 分类器进行分类的行人检测框架,组合特征的检测方法比单一特征的检测方法更精确[7,8].李盈盈等人[9]提出了一种更精确的行人检测方法,该方法将LBP 特征、CSS 特征[10]和HOG 特征进行结合,采用Adaboost[11]分类器进行行人检测,提高了在INRIA 数据集检测的识别率,但由于提取特征种类增加导致检测速度变得极其慢.

为了提高检测速度,Chen PY 等人[12]尝试从硬件层面改善,提出了一种用于HOG 特征提取的低成本高速硬件实现,仿真实验表明,它需要更少的硬件成本并且实现更快的工作速度.龚露鸣等人[13]提出一种用于视频流的快速行人检测方法.该方法首先利用基于高斯模型的背景差分法进行运动目标提取,然后在对运动目标进行人体识别,通过缩小检测区域的方式提高了行人检测的速度,达到可在视频流进行实时行人检测的目的.

此外,近年来深度学习的算法在行人检测上的应用也越来越广泛,基于深度学习的行人检测算法[14–17]在速度和准确率上普遍优于传统机器学习算法,但对硬件性能要求较高.

综上所述,现有的HOG 特征的研究和改进都是从外部寻找其他手段提高检测精度和检测速度,而本文是从图像本身和HOG 特征内部出发增强图像和HOG特征的表达能力.

1 HOG 特征

HOG 特征即方向梯度直方图特征,是一种通过目标边缘密度的分布来对目标形状进行描述的特征算子,被广泛应用于计算机视觉和图像处理中.HOG 特征提取的方式是依次提取目标局域特征再进行串联,所有的提取工作只在目标局部区域进行,避免了光照和图像几何形变的影响.因此,HOG 特征具有良好的几何不变性和光照不变性.此外,HOG 特征通过串联局部信息描述目标整体形状的方式对目标姿态的变化具有很好的宽容度.在行人检测中,只要人体姿态大致不变,小幅度的肢体动作不会对检测效果产生影响.因此,HOG 特征特别适用于行人检测.

HOG 特征的基本单位为细胞单元(cell),每个cell由n×n个像素组成,N×N个cell 组成一个块(block),具体特征提取过程如图1所示.HOG 特征的提取以block 尺寸的滑动窗口为掩码,进行滑窗扫描提取,具体步骤为.

图1 HOG 特征提取流程图

1)将彩色图像转换为灰度图像,使用Gamma 校正法[18,19]对图像进行归一化处理,计算经Gamma 校正后的图像中像素的水平和垂直梯度;

2)其次将梯度方向分为九个区间,如图2所示,建立梯度直方图统计cell 在每个区间梯度幅值的分布情况,生成的9 维特征向量为该cell 的特征描述子;

图2 梯度方向划分图

3)将block 内所有cell 的特征描述子串联起来并进行归一化处理,生成该block 的特征描述子;

4)将所有block 的特征描述子串联起来得到输入图像的HOG 特征向量f.

2 增强型HOG

2.1 预处理操作

计算每个像素在整个图像上的全局对比度,即该像素与图像中其他所有像素在颜色上的距离之和作为该像素的增强值,得到新的图像.

图像I中某个像素Ik的增强值计算公式如下:

其中,Ik为灰度值,取值范围为[0,255];N表示图像中像素的数量.给定一张图像,每个像素的颜色值已知,假定Ik=am,fn表示图像中第n个像素的频数.则上式可重构:

其中,gb,ave表示当前block 内cell 幅值的均值,gc,sum表示当前cell 内梯度值,n为block 内cell 的个数.式(5)为block 内cell 的幅值具体调整方式,其中gc(x,y)表示当前block 内 (x,y)位置cell 的梯度值;a1,a2,a3,a4和a5为 调整系数,经实验分析后在本文取a1=0.6,a2=0.8,a3=1,a4=1.2 和a5=1.4.

提取经过预处理后图像的HOG 特征,从增强特征对比度角度对HOG 特征进行改进,提出了增强的HOG(Enhanced HOG,EHOG)特征.增强HOG 特征对比度的方法是在提取HOG 特征后,按照式(4)计算出当前block 的梯度值均值.再按照式(5)对该block 内每个cell 的梯度值做出调整.之后串连调整过的cell 特征描述子得到block 的特征描述子.最后将所有block 的特征描述子串连得到EHOG 特征.

经过特征增强处理,梯度直方图中梯度值小的bin 得到进一步压缩,梯度值大的bin 得到进一步放大,直方图的方差增大,对比度显著增强.为进一步分析EHOG特征相较HOG 特征的变化,本文提取INRIA 数据集中一张图片的HOG 特征和EHOG 特征进行可视化分析,如图3所示.

图3 HOG 和EHOG 特征可视化比较图

图3中,每个红色虚线区域代表一个cell 单元,由图3(a)与图3(b)比较可以很直观地看出经过特征增强处理,cell 单元内各方向梯度值在保持原有趋势前提下,对比度显著增大,cell 单元特征描述子的局部描述能力得到增强.图4从数据角度很好的反应了这一点,HOG特征整体变化趋势与EHOG 特征保持一致但对比度得到增强,如维度17 位置对应特征分别为0.005 和0.008,仅相差0.003;最大特征值与最小特征值之差由0.335提高到0.470,较未进行特征增强之前增长了40.3%.

图4 HOG 特征和EHOG 特征值图

算法1.EHOG 特征获取Input:imgGray:原始图像对应的灰度图Output:fOut:EHOG 特征hist ← imgGray 中出现像素灰度对应的频数设置一个用于保存0 到255 各灰度值对应的增强值的对象dist for i ← 0 to 255 do dist[i] ← 根据hist 利用式(3)求出增强值end rows ← imgGray 的高度cols ← imgGray 的宽度设置一个用于保存结果增强后结果的与imgGray 大小相同的单通道图像imgEnhance for i ← 0 to cols–1 do for j ← 0 to rows–1 do gray ← imgGray 位于(i,j)位置的灰度值将imgEnhance 中位于(i,j)位置的像素设置为dist[gray]的值end end对imgEnhance 进行归一化处理szCell ← 用于提取HOG 的cell 单元大小szBlock ← 用于提取HOG 的滑动窗口大小,cell 的数量szStep ← 用于提取HOG 的步长,为szCell 的整数倍f ← 根据szBlock、szStep 和szCell 在imgEnhance 上滑动计算收集所有HOG 特征numWindow ← (rows–szBlock×szCell)×(cols–szBlock×szCell)/(szStep×szStep)+ 1 for i ← 0 to numWindow–1 do gCellSum ← 根据f 中的信息计算当前窗口内cell 梯度总和gBlock ← 根据gCellSum 利用式(4)计算出当前窗口内cell 梯度均值for j ← 0 to szBlock×szBlock–1 do gCellCur ← 格局f 中的信息获取当前位置cell 的梯度值gCellAdp ← 根据gBlock 和gCellCur 利用式(5)计算出当前cell 的调整值将f 中对应的cell 位置的值设置为gCellAdp end end fOut ← f

3 实验分析

本文实验的相关参数设置如下:cell 大小为像素,block 大小为cell,滑动窗口采用固定大小为,扫描步长为8 个像素.实验采用INRIA 数据集进行实验分析,部分示例图像如图5所示.

INRIA 数据集中行人姿态多样,背景复杂多变,在行人检测领域该数据集认可度较高.训练样本中正样本数量为2416 个,负样本数量为1218 个;测试样本中正样本数量为1126 个,负样本数量为453 个.硬件的运行环境设置为:Windows 7 操作系统,Intel(R)Core(TM)i7-4770 CPU,8 GB 内存.软件平台为Visual Studio 2015.

图5 INRIA 数据集的部分示例图像

为验证本文提出的EHOG 特征相较其他特征的优越性,将EHOG 特征和其他几种常用特征结合XGBoost分类器[20,21]进行实验对比,实验结果见表1.

表1 不同特征结合XGBoost 分类器的比较

由表1可知HOG 特征和本文提出EHOG 在识别率和检测时间上明显优于其他特征.相较HOG 特征,使用Haar 和LBP 特征训练所得的分类器识别率相对较低,分别只有77.40%,83.64%.使用EHOG 特征的识别率为95.49%,较Haar 和LBP 特征分别提高了18.09%和11.85%,较传统HOG 特征提高了4.71%.表1中最后一列是不同特征在与XGBoost 分类器结合时所需的检测时间,其中HOG 特征所需最少,为25.61 ms,而本文提出的EHOG 特征所需检测时间为30.85 ms 与其接近,但是识别率有明显的提升.

为了进一步检测XGBoost 分类器较其他分类器的优越性,本文将EHOG 特征结合SVM 分类器进行实验对比,实验结果见表2和图6.

表2 不同特征结合SVM 分类器检测时间

图6 不同特征在SVM 和XGBoost 分类器上检测时间的比较

由图6可以看出,不同特征结合XGBoost 分类器普遍比SVM 分类器所需的检测时间要少,这是因为XGBoost 分类器的多线程并行操作,有效地降低了行人检测时间.由表2可知,HOG 特征在结合SVM 分类器时所需的检测时间,远远少于Haar 特征和LBP 特征,而EHOG 特征较HOG 特征检测时间略有增加,是因为提取EHOG 特征之前对原始图像进行了预处理增加了时间开销,但较传统SVM 分类器,XGBoost 分类器很明显的降低了检测时间.

4 结束语

行人检测具有极广泛的应用:智能辅助驾驶,智能监控,行人分析以及智能机器人等领域.从2005年以来行人检测进入了一个快速的发展阶段,但是也存在很多问题还有待解决,主要还是在性能和速度方面还不能达到一个权衡.近年,以谷歌为首的自动驾驶技术的研发正如火如荼地进行,这也迫切需要能对行人进行快速有效的检测,以保证自动驾驶期间对行人的安全不会产生威胁.

本文从预处理原始图像和增强特征对比度两方面对其做出改进,提出了增强型HOG,并基于EHOG 特征结合XGBoost 分类器的行人检测方法.实验结果证明,针对不同特征(Haar、LBP、HOG、EHOG),本文提出的方法在识别率和检测速度方面有明显优越性.

本文下一步研究方向是,针对遮挡问题改进检测算法,在复杂环境下进一步提高检测精度提升检测速度.

猜你喜欢

识别率分类器梯度
少样本条件下基于K-最近邻及多分类器协同的样本扩增分类
基于应变梯度的微尺度金属塑性行为研究
学贯中西(6):阐述ML分类器的工作流程
基于朴素Bayes组合的简易集成分类器①
一个具梯度项的p-Laplace 方程弱解的存在性
内容、形式与表达——有梯度的语言教学策略研究
航磁梯度数据实测与计算对比研究
基于AdaBoost算法的在线连续极限学习机集成算法
档案数字化过程中OCR技术的应用分析
基于PCA与MLP感知器的人脸图像辨识技术