一种基于低维方向梯度直方图的行人检测方法与流程

文档序号:12819316阅读:217来源:国知局
一种基于低维方向梯度直方图的行人检测方法与流程

本发明涉及计算机视觉的目标检测技术领域,特别涉及一种基于低维方向梯度直方图的行人检测方法。



背景技术:

因为行人检测在智能交通、视频监控、机器人与人类的交互等领域的应用价值,行人检测是计算机视觉领域的一个重要课题。

由于行人外观的复杂多变性,姿势、衣着、身高体型、与周围环境的交互、拍摄角度等因素使行人在图像上的表现呈现出极大的分散性。近年来,科研工作者开展了大量研究,针对行人设计了具有区分度的特征。随着描述图像区域信息的更有效底层特征的出现和更好的行人表示模型的设计,近年来行人检测的性能得到了很大提高,但离实用要求仍有不小差距。

在当前的行人检测工作中,基于深度学习的方法是一类很重要的方法。随着可获取训练数据量的增大和计算机硬件性能的提高,深度学习方法在计算机视觉领域的多个应用上获得了成功。有工作利用深度神经网络训练出行人的多个部件模型,增强了行人检测的鲁棒性。也有工作将手工设计特征和深度神经网络结合起来训练行人检测器。基于深度学习的行人检测方法获得了较低的误检率和漏检率,但同时,基于深度学习的行人检测器具有模型参数多、检测速度慢、硬件资源消耗大等缺点。

在手工设计特征中,方向梯度直方图hog特征是最有代表性的一个。hog创造性地使用像素梯度作为基础信息,在很大程度上模拟了人类视觉的底层机理;同时,它使用区域分块的方式来保持空间信息,并采取了合适的措施弱化区域量化走样。近些年来,性能最好的基于手工设计特征的行人检测工作都使用了hog特征。但是,由于hog特征首先对像素梯度在角度方向进行了量化,其次,提取特征时还对块区域进行了部分重叠,因此特征维度较高。同时,积分图这种快速提取方法因hog的块区域高斯平滑而无法应用。这导致基于hog的行人检测速度也较慢。然而在行人检测应用中,检测速度也是一个关键的指标。



技术实现要素:

本发明提供了一种基于低维方向梯度直方图的行人检测方法,其目的在于,通过采用性能与hog相当、提取计算量更小、维度更低从而检测速度更快的低维方向梯度直方图elhog特征,并且在提取特征前先形成像素梯度金字塔;采用线性支持向量机svm作为检测器,大大提升行人检测速度。

一种基于低维方向梯度直方图的行人检测方法,包括以下步骤:

步骤1:对训练样本中的每个像素进行像素梯度计算,提取训练样本的低维方向梯度直方图elhog特征;

每个训练样本对应一个图像窗口;

步骤2:利用训练样本的低维方向梯度直方图elhog特征和线性核函数构造支持向量机svm分类器;

步骤3:对待检测图像提取像素梯度金字塔,并在提取的像素梯度金字塔上滑动窗口,得到候选样本,并计算每个候选样本的低维方向梯度直方图elhog特征;

步骤4:利用步骤2构造的svm分类器对每个候选样本的低维方向梯度直方图elhog特征进行识别以得到行人检测结果;

其中,样本的低维方向梯度直方图elhog特征的计算过程如下:

步骤a:对待提取直方图的图像窗口进行区域划分;

将待提取直方图的图像窗口划分成多个边长为b的块区域,并对每个块区域划分成多个边长为c的细胞区域;

步骤b:量化像素梯度方向为若干方向项;

所述方向项是对像素梯度的方向角范围量化后的一个区间单元;

对像素梯度的方向角范围均匀划分为n个方向项,并将像素梯度值在其本身方向角所对应的两个相邻方向项上进行线性插值,得到像素在相邻梯度方向项上的梯度值;

步骤c:以块区域为处理单元,依次对块区域内的每个细胞区域中的像素进行位置线性插值,按以下公式获得当前块区域中每个细胞区域的梯度直方图向量;

其中,hθ(i)表示当前块区域中第i个细胞区域在方向项θ上的直方图分量,(xi,yi)表示当前块区域中第i个细胞区域的中心坐标,mθ(x,y)表示像素(x,y)在方向项θ上的梯度值;dx和dy分别是两个相邻细胞区域中心在x轴和y轴方向的距离;

步骤d:按照相同的顺序连接每一块区域中的所有细胞区域的梯度直方图向量,得到块区域的梯度直方图向量;

步骤e:按照步骤d的顺序连接所有的块区域的梯度直方图向量,得到待提取直方图低维方向梯度直方图elhog特征。

进一步地,在步骤b进行方向量化处理前,对待进行位置线性插值处理的块及其紧邻细胞区域进行高斯平滑处理;

每个块区域和与该块区域紧邻的细胞区域中各像素的梯度值采用不同高斯权重进行高斯平滑处理:

ωb(x,y)=exp(-((x-xc)2+(y-yc)2)/2σ2)x,y∈ω

ωe(x,y)=exp(-((|x-xc|-bx)2+(|y-yc|-by)2)/2σ2)x,y∈p

其中,ωb(x,y)和ωe(x,y)分别表示像素位于块区域时和像素位于与块区域紧邻的细胞区域时采用的高斯权重因子;

ω表示以(xc,yc)为中心的块区域,p表示以(xc,yc)为中心的块区域的紧邻细胞区域;

bx和by分别表示x轴和y轴偏移补偿量,σ表示高斯核。

进一步地,所述步骤2中构造的支持向量机svm分类器的具体构造步骤如下:

步骤2.1:输入训练样本{(xi,yi)},其中yi为训练样本类别,yi取值为-1表示训练样本不包含行人,yi取值为1表示训练样本包含行人;xi是训练样本的elhog特征向量,i的取值范围为1-m,m是训练样本的数量;

步骤2.2:寻找最优分类超平面w*x+d=0,使训练样本实现最优分类,x是训练样本集合;

其中,w表示超平面的法向量,d表示补偿常量。

进一步地,采用五折交叉验证方法确认最优的d值。

进一步地,所述svm分类器利用以下决策函数对候选样本的低维方向梯度直方图elhog特征进行识别以得到行人检测结果;

所述决策函数为:h(z)=sign(w*x+d);

其中,z表示候选样本,sign()为符号函数,w为svm分类器对应的超平面的法向量,x是候选样本的低维方向梯度直方图elhog特征。

如果h(z)=1,则对应候选样本识别为包含行人。

进一步地,所述步骤3中对待检测图像提取像素梯度金字塔的具体步骤如下:

步骤3.1:获取待检测图像,并设定缩小系数;

步骤3.2:按照设定的缩小系数对待检测图像依次缩小,直至待检测图像缩小后的长边的长度或短边的长度小于设定样本图像窗口的长边或短边的长度,则以当前缩小图像之前的所有图像构成图像金字塔;

步骤3.3:计算图像金字塔中每幅图像中每个像素的梯度,得到像素梯度金字塔。

进一步地,在所述步骤e之后,分别对所有的块区域的梯度直方图向量进行规范化处理。

进一步地,采用l2范数进行规范化处理。

进一步地,所述块区域边长b取值为16,所述细胞区域边长c取值为8。

进一步地,所述步骤c中的量化的方向项数量为9。

有益效果

本发明提出了一种基于低维方向梯度直方图的行人检测方法,包括以下步骤:步骤1:对训练样本中的每个像素进行像素梯度计算,提取训练样本的低维方向梯度直方图elhog特征;步骤2:利用训练样本的低维方向梯度直方图elhog特征和线性核函数构造支持向量机svm分类器;步骤3:对待检测图像提取像素梯度金字塔,并在提取的像素梯度金字塔上滑动窗口,得到候选样本,并计算每个候选样本的低维方向梯度直方图elhog特征;步骤4:利用步骤2构造的svm分类器对每个候选样本的低维方向梯度直方图elhog特征进行识别以得到行人检测结果;该方法通过将减弱区域量化走样的措施由块区域重叠替换为将块区域之外紧邻的细胞区域纳入位置线性插值范围,该方法取消了块区域部分重叠,能提取出维度低得多的方向梯度直方图hog特征。通过块内块外不同权重的高斯平滑,进一步减弱了区域量化走样。利用获得的低维方向梯度直方图、在检测时预先计算整个图像的像素梯度和采用线性核svm,本发明所述的行人检测方法相对于基于标准hog的方法计算负荷大大降低,从而使检测速度大大提高了,并且利用该方法降低特征维度,使得分类器的训练时间也大大降低了。

附图说明

图1是本发明提供的行人检测方法的流程图;

图2是本发明的方法提取出的方向梯度直方图特征在公开图像集inria上对行人检测的性能进行比较结果示意图。

具体实施方式

下面将结合附图和实施例对本发明做进一步的说明。

如图1所示,一种基于低维方向梯度直方图的行人检测方法,包括以下步骤:

步骤1:对训练样本中的每个像素进行像素梯度计算,提取训练样本的低维方向梯度直方图elhog特征;

每个训练样本对应一个图像窗口;

比如,一个典型的训练正样本是包含行人的尺寸为128*64的图像窗口,训练负样本是不含行人的同样大小的图像窗口;

计算像素梯度有很多方式,比如可以采用无平滑的1-d梯度算子及其转置在3*3大小的邻域上计算梯度。即,可以分别使用如下的式(1)和式(2)得到梯度的值和方向角。

θ(x,y)=arctan((i(x,y+1)-i(x,y-1))/(i(x+1,y)-i(x-1,y)))(式2)

其中,i(x,y)是坐标(x,y)处像素的值。

步骤2:利用训练样本的低维方向梯度直方图elhog特征和线性核函数构造支持向量机svm分类器;

所述步骤2中构造的支持向量机svm分类器的具体构造步骤如下:

步骤2.1:输入训练样本{(xi,yi)},其中yi为训练样本类别,yi取值为-1表示训练样本不包含行人,yi取值为1表示训练样本包含行人;xi是训练样本的elhog特征向量,i的取值范围为1-m,m是训练样本的数量;

步骤2.2:寻找最优分类超平面w*x+d=0,使训练样本实现最优分类,x是训练样本集合;

其中,w表示超平面的法向量,d表示补偿常量。

采用五折交叉验证方法确认最优的d值。

步骤3:对待检测图像提取像素梯度金字塔,并在提取的像素梯度金字塔上滑动窗口,得到候选样本,并计算每个候选样本的低维方向梯度直方图elhog特征;

所述步骤3中对待检测图像提取像素梯度金字塔的具体步骤如下:

步骤3.1:获取待检测图像,并设定缩小系数,比如设定为0.95;

步骤3.2:按照设定的缩小系数对待检测图像依次缩小,直至待检测图像缩小后的长边的长度或短边的长度小于设定样本图像窗口的长边或短边的长度,比如,再次缩小则某边的长度就会小于128或64就停止,则以当前缩小图像之前的所有图像构成图像金字塔;

步骤3.3:计算图像金字塔中每幅图像中每个像素的梯度,得到像素梯度金字塔。

步骤4:利用步骤2构造的svm分类器对每个候选样本的低维方向梯度直方图elhog特征进行识别以得到行人检测结果;

所述svm分类器利用以下决策函数对候选样本的低维方向梯度直方图elhog特征进行识别以得到行人检测结果;

所述决策函数为:h(z)=sign(w*x+d);

其中,z表示候选样本,sign()为符号函数,w为svm分类器对应的超平面的法向量,x是候选样本的低维方向梯度直方图elhog特征。

如果h(z)=1,则对应候选样本识别为包含行人。

其中,样本的低维方向梯度直方图elhog特征的计算过程如下:

步骤a:对待提取直方图的图像窗口进行区域划分;

将待提取直方图的图像窗口划分成多个边长为b的块区域,并对每个块区域划分成多个边长为c的细胞区域;

比如,选择块区域大小为16*16,细胞区域大小为8*8。这样,在本发明的方法中,一个窗口中包含的的块区域数量为32个。

步骤b:量化像素梯度方向为若干方向项;

所述方向项是对像素梯度的方向角范围量化后的一个区间单元;

对像素梯度的方向角范围均匀划分为n个方向项,并将像素梯度值在其本身方向角所对应的两个相邻方向项上进行线性插值,得到像素在相邻梯度方向项上的梯度值;

将方向角量化为数项。如将方向角范围考虑为180度,量化为9个方向项,即[0,20)度为第一项,[20,40)度为第二项,[40,60)度为第三项,以此类推。

步骤c:以块区域为处理单元,依次对块区域内的每个细胞区域中的像素进行位置线性插值,按以下公式获得当前块区域中每个细胞区域的梯度直方图向量;

其中,hθ(i)表示当前块区域中第i个细胞区域在方向项θ上的直方图分量,(xi,yi)表示当前块区域中第i个细胞区域的中心坐标,mθ(x,y)表示像素(x,y)在方向项θ上的梯度值;dx和dy分别是两个相邻细胞区域中心在x轴和y轴方向的距离;

步骤d:按照相同的顺序连接每一块区域中的所有细胞区域的梯度直方图向量,得到块区域的梯度直方图向量;

步骤e:按照步骤d的顺序连接所有的块区域的梯度直方图向量,得到待提取直方图的图像窗口的低维方向梯度直方图elhog特征。

在所述步骤e之后,分别对所有的块区域的梯度直方图向量采用l2范数进行规范化处理。

在步骤b进行方向量化处理前,对待进行位置线性插值处理的块及其紧邻细胞区域进行高斯平滑处理;

每个块区域和与该块区域紧邻的细胞区域中各像素的梯度值采用不同高斯权重进行高斯平滑处理:

ωb(x,y)=exp(-((x-xc)2+(y-yc)2)/2σ2)x,y∈ω

ωe(x,y)=exp(-((|x-xc|-bx)2+(|y-yc|-by)2)/2σ2)x,y∈p

其中,ωb(x,y)和ωe(x,y)分别表示像素位于块区域时和像素位于与块区域紧邻的细胞区域时采用的高斯权重因子;

ω表示以(xc,yc)为中心的块区域,p表示以(xc,yc)为中心的块区域的紧邻细胞区域;

bx和by分别表示x轴和y偏轴移补偿量,本实例中bx和by都是8个像素,该补偿防止块之外参与插值像素的权重过小。σ表示高斯核,本实例中取8。

首先,大小为128*64图像窗口的hog特征的维度为3780,而elhog的维度为1152。本发明采用的特征提取方法中一个块参与位置线性插值的像素个数为标准方法的7/4倍,但是窗口中需要计算特征的块区域的数量为文献1所述方法的32/105倍。计算这样一个图像窗口的梯度方向直方图,本发明的方法在图像窗口上的计算量为文献1所述方法的7/4*32/105=105倍。其次,采用滑动窗口方式对图像检测行人时,一副图像包含的检测窗口是非常多的,采用预先计算像素梯度的方式避免了像素梯度在多个窗口的重叠部分重新计算。再次,低维特征使线性svm对应的超平面的法向量的维度也变低,从而在这个环节也加快了检测速度。尽管像素梯度的计算不能节省时间,但因为在本发明的行人检测方法中,检测图像时像素梯度只被计算一次,因此实验结果体现出来的检测一幅图像的平均耗时只有使用文献1所述方法的三分之一,基本与特征维度比值一致。训练分类器耗时也只有文献1所述方法的不到三分之一。

图2是本发明的方法提取出的方向梯度直方图特征在公开图像集inria上的行人检测性能比较结果。参与比较的特征分别为文献1所述方法提取出的特征s-hog,按文献1所述方法但是取消了块区域重叠提取出的特征nl-hog和本发明方法提取出的特征el-hog。图中,水平轴表示每幅图像假正数量,垂直轴表示遗漏率。图2以roc曲线来衡量性能的,曲线下面与两个坐标轴之间围的区域面积越小则对应特征性能越好。可以看出本发明的方法提取出的低维特征的性能与文献1所述方法提取出的特征性能相当,而只是取消块部分重叠的方法提取出的特征性能差了很多。

文献1(dalal,nandbilltriggs,b.histogramsoforientedgradientsforhumandetection.cvpr2005:886-893.)

以上内容是结合具体的实施方式对本发明所做的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对本发明所述技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或者替换,都应当视为属于本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1