当前位置:首页 期刊杂志

结合改进聚合通道特征和灰度共生矩阵的俯视行人检测算法

时间:2024-05-04

李 琳,张 涛

(信息工程大学,郑州 450001)(*通信作者电子邮箱llbnerfg@163.com)

0 引言

目前,智能监控场景下的俯视行人检测技术被广泛应用于人流量统计[1]以及行人智能分析[2]中,以实现对人流量密集场所的有效监管。基于俯视的行人检测近些年取得了突飞猛进的发展;然而行人的发型、发色以及复杂的周围背景加大了检测的难度,导致检测效果仍不理想,需进一步改进。因此,俯视行人检测技术具有极大的研究空间和重要的现实意义。本文重点研究在复杂背景下,基于俯视视角的行人检测。

俯视行人检测方法有以下几类。第一类是基于形状分析的方法,主要思想是通过描述行人头部的外观形状,逐个筛选图像样本,得到最终检测结果。Chen等[3]通过计算区域面积来识别行人头部;Yu等[4]采用改进后的Hough变换,通过检测类圆来达到检测行人头部的目的;Li等[5]通过Canny边缘提取算法和Hough变换结合来提取行人头部特征。基于形状分析的方法计算效率高,但是实际检测过程中,容易将外观类似头部的背景误检为目标。第二类是基于机器学习的方法,随着机器学习的蓬勃发展,基于机器学习的特征提取法逐步成为俯视行人检测的常用方法。此类方法首先借助合适的特征描述子,对样本图片进行特征提取,之后根据大量训练样本构建俯视行人头部检测分类器,在此基础上采用分类器进行分类。相比于形状分析法,机器学习法能适应环境的变化,在很大程度上提高了检测系统的鲁棒性。牛胜石等[6]在梯度特征中加入自生长梯度特征,并采用支持向量机(Support Vector Machine, SVM)和Adaboost组合分类器进行训练;汤石晨等[7]通过线性回归模型训练行人的面积特征来检测运动斑块中的头部目标;Li等[8]采用局部二值模式(Local Binary Pattern, LBP)提取行人头部特征,输入Adaboost进行分类训练;Tang等[9]采用改进后的梯度方向直方图(Histogram of Oriented Gradients, HOG)描述子提取行人头部特征,输入SVM分类器训练得到分类模型。

上述方法通过提取具有一定鲁棒性的特征来训练分类器,达到了很好的分类效果,但是只利用单一的特征进行训练容易造成较高误检。在实际的监控视频中,存在诸多具有干扰性的背景,比如:行人穿着的接近发色的深色衣服、行人随身携带的背包,以及在其他方面与行人头部相似的物体。这些干扰的存在加大了检测的难度。单一的特征分类器在这种场景下的检测率较低,这是因为在背景存在诸多干扰时,单一的特征往往不能够全面地描述行人头部,易使分类器混淆行人头部和其他干扰背景,造成误检与漏检,所以研究者尝试使用多种特征来刻画行人目标。Liu等[10]结合行人头部颜色和形状描述子来提取行人头部特征,提高了算法的检测准确率;Zeng等[11]采用俯视行人的头肩模型,通过HOG-LBP特征构建行人特征描述子,该算法很好地表征目标的轮廓和形状,并且具有良好的灰度不变性。多特征融合的方法在很大程度上改善了分类器的分类效果。然而,几个单一特征的结合不仅提高算法性能有限,并且增大了计算复杂度。所以如何选择合适的特征使分类器在提高检测率的同时保持较快的检测速度是当前的研究重点。

在上述研究的基础上,本文提出了结合改进聚合通道特征(ACF)和灰度共生矩阵(GLCM)的俯视行人检测算法。首先,改进ACF的颜色通道以及梯度直方图通道;然后,尝试采用多特征融合的方法,将改进后的ACF特征与GLCM结合起来,分别提取目标的颜色、梯度、梯度方向直方图以及纹理特征,输入Adaboost算法进行训练检测得到结果。实验结果表明,所提多特征融合的方法,能够过滤掉与人头相似的背景,有效降低分类器的漏检与误检率,实现了较高的检测性能。

1 特征分析

1.1 改进的聚合通道特征

1.1.1 特征描述

ACF特征起初被用来解决人脸识别问题,之后逐渐被应用于行人检测中。ACF特征的基本结构是通道,它分别采用颜色、梯度以及梯度方向直方图三个不同的通道描述图像。这种混合通道的采用大大提高了描述子对不同种类信息的分类表示能力,有助于提高复杂背景下目标的检测效果。

ACF特征的计算流程示意图如图1所示,在积分通道特征的基础上,ACF描述子采用特征金字塔算法提高了特征提取的速度。下面就该描述子的计算方法进行简要介绍。

1)通道类型。ACF特征定义了10个通道,分别是3个LUV颜色通道、1个梯度通道和6个梯度方向直方图通道。计算梯度幅值的过程采用一维微分模板[-1,0,1]和[1,0,-1]分别得到水平方向的梯度分量Gx(x,y)和竖直方向的梯度分量Gy(x,y)。梯度方向直方图通道遵循HOG的思想,构造方式是将图像均匀分割成若干块,计算每个块中像素的梯度方向,将其按照划分的6个梯度方向区域进行统计,其中每一个方向区域都分别是1个特征通道。图像中像素点(x,y)的梯度幅值和梯度方向计算式如式(1)、(2)所示:

(1)

a(x,y)=arctan(Gy(x,y)/Gx(x,y))

(2)

图1 聚合通道特征计算示意图Fig. 1 Schematic diagram of aggregate channel features

2)特征计算。聚合通道的特征计算十分简单,首先给定一个彩色图像作为输入,计算预定义的通道。然后,根据预设因子对通道特征进行平均池化下采样,将下采样得到的矩阵矢量化为像素查找表,该矢量即为最终的特征描述子。

3)多尺度计算。为了提升计算效率,ACF特征采用一种特征金字塔算法。在行人检测中,目标的高矮、远近导致它到摄像头的距离不同,如果采用相同的尺度检测目标会导致漏检和误检,采用多尺度计算能够有效解决这一问题。传统的做法是先将图像进行重采样缩放到若干尺度,再采用滑动窗口法计算每个尺度下图像的特征。这种方法存在冗余计算,且耗时大。而ACF算法则先计算几个特定尺度层s∈{1,1/2,1/4,…}下的特征,然后直接使用一种快速估计算法计算其余中间尺度下的特征值。采用快速特征金字塔作为估计算法,利用近似公式(3),在允许的误差范围内根据当前尺度的特征C估计相邻尺度上对应的通道特征:

Cs≈R(C,s)·s-λΩ

(3)

式中,λΩ表示每个通道特征对应的系数。

1.1.2 改进颜色通道

ACF特征通道中融合了LUV颜色描述子。对于颜色通道的选择,本文作出改进,选用更适合的HSV(Hue, Sturation, Value)颜色通道代替原先使用的LUV颜色通道。

HSV颜色空间[14]属于非线性色彩表示系统,它的颜色参数分别是:色调(H),饱和度(S)和亮度(V)。HSV颜色空间对色彩的感知和人十分接近,它能够从人类的视角非常直观地表达色彩信息,达到更好的颜色对比效果。HSV颜色通道能够更细致地刻画目标和背景之间的灰度差别,有效提高检测率。利用RGB(Red, Green, Blue)计算HSV颜色空间的计算式如下:

S=

(4)

H=

(5)

V=max(R,G,B)

(6)

1.1.3 改进HOG通道

传统HOG算法[15]的基本思想是通过提取图片的梯度大小和方向来描述行人特征。它将图像分成小的连通区域,名为细胞单元(cell),然后统计每个胞元内部像素的梯度和方向直方图,随后对梯度强度作归一化,将胞元有一定重叠地组合成块(block),以梯度作为权重统计块内像素的方向直方图,串联起来得到最终的HOG特征。

HOG描述子对几何和光学形变有良好鲁棒性,但同时,它也存在着计算量大的缺陷。为了提高算法的实时性,本文结合行人头部的特点,对HOG描述子作出如下改进,在不影响检测性能的基础上缩短提取特征的时间。

首先,由于俯视行人的头部特征形状近似圆形,较为统一,细节特征较少,所以考虑不再将块进一步细分为更小的细胞单元,并且采用无重叠的子块,减少提取到的冗余信息。其次,本文考虑将0°~180°的角度范围扩展至-180°~180°,这样能够更完整地体现目标的变化特征。

对改进前后的HOG特征维数进行对比。当检测图像大小为64×64时,传统HOG算法将方向直方图划分为6个相等大小的区域,采用8×8大小的像素组成一个胞元,每2×2大小的胞元组成一个块,且移动步长为8,则传统HOG描述子的维数为6×4×7×7=1 176。而本文改进算法将图像等分成4×4共16个方形块,块与块之间互不重叠,则改进后的HOG描述子只有16×6=96维。相比于传统方法,本文提出的改进算法突出了俯视行人的纹理和颜色特征,弱化了不必要的细节特征,大大降低了传统HOG描述子的维数,在保证分类准确率的前提下,减少了冗余的计算量。

1.2 改进的纹理特征

本文采用灰度共生矩阵来描述图像的纹理特征。灰度共生矩阵通过统计图像中一定距离d和一定方向θ上两像素点灰度的空间相关性来描述纹理。

灰度共生矩阵定义彼此距离为d、方向夹角为θ的一对像素,其灰度值分别为i和j时的概率,记为P(i,j,d,θ)。通常方向夹角选取0°、45°、90°、135°四个方向。下面给出像素灰度值分别为f(x1,y1)=a与f(x2,y2)=b的像素距离为d时的灰度共生矩阵计算公式:

P(i,j,d,0°)=#{((x1,y1),(x2,y2))∈(Lr,Lc)×

(Lr,Lc)|x2-x1=0,|y2-y1|=d,

f(x1,y1)=i,f(x2,y2)=j}

(7)

P(i,j,d,45°)=#{((x1,y1),(x2,y2))∈(Lr,Lc)×

(Lr,Lc)| (x2-x1=d,y2-y1=d) or (x2-x1=-d,

y2-y1=-d),f(x1,y1)=i,f(x2,y2)=j}

(8)

P(i,j,d,90°)=#{((x1,y1),(x2,y2))∈(Lr,Lc)×

(Lr,Lc)| |x2-x1|=d,y2-y1=0,

f(x1,y1)=i,f(x2,y2)=j}

(9)

P(i,j,d,135°)=#{((x1,y1),(x2,y2))∈(Lr,Lc)×

(Lr,Lc)| (x2-x1=d,y2-y1=-d) or (x2-x1=-d,

y2-y1=d),f(x1,y1)=i,f(x2,y2)=j}

(10)

其中:L为图像的灰度级;Lr和Lc分别表示图像的行数和列数;#{·}表示该集合中的元素个数。

由于直接将灰度共生矩阵送入分类器会产生较大计算量,所以为了减小计算复杂度,本文采用文献[13]提出的4种特征参数来间接描述图像的纹理特征。

1)能量。

能量特征参数又被称为二阶矩,它是矩阵值的平方和。能量的大小表示的是图像灰度分布的匀称度以及纹理细腻度。若一幅图像的灰度分布均匀且纹理细腻,则能量值小;反之,如果图像中的灰度分布不均且纹理粗糙,则能量值大。能量的计算式如下:

(11)

2)熵。

灰度共生矩阵的熵能够反映出图像中携带的信息量多少,属于随机性度量值。当图像的灰度共生矩阵中所有值均相等时,图像的随机性较大,熵值大;相反,当图像灰度共生矩阵中的值分布不均时,图像的随机性较小,熵值小。熵值的计算式如下:

(12)

3)对比度。

对比度指的是灰度共生矩阵主对角线附近的惯性矩,主要用来表示图像的清晰度以及沟纹深浅程度。如果图像清晰且纹理沟纹深,则对比度大;而当图像模糊且沟纹较浅时,对比度小。对比度采用式(13)进行计算:

(13)

4)相关度。

相关度是用来度量灰度共生矩阵的元素在水平或垂直方向上的相似度。当矩阵中的值变化较小时或者图像纹理具备一些规律性时,相关值大;当矩阵中各元素的值相差很大时,相关值小。相关度的计算式如下:

(14)

(15)

(16)

(17)

(18)

灰度共生矩阵的特征参数能够对纹理进行细致的刻画。为了验证灰度共生矩阵作为分类特征的有效性,随机选取100张行人头部图像,以及100张干扰背景图像(包括深色背包、衣服等),分别计算所有行人头部和所有干扰背景在4个方向0°、45°、 90°、 135°上的特征参数,取平均值进行对比,结果如图2所示。实验中取灰度级为L=16,距离d=1。由图2可以看出,头部目标和干扰背景的特征值之间存在明显差异,因此将灰度共生矩阵作为附加的特征输入分类器能够有效降低因干扰背景导致的误检率。

由于灰度共生矩阵的特征维数只有4维,过低的维数会导致较差的分类效果。所以本文参考文献[13]中的方法,在训练过程中采用大小为8×8、步长为6的窗口,按照从左至右、从上至下的顺序依次在图像上滑动,计算每个窗口内的特征参数。将每个窗口的4维特征参数依次串联起来,得到最终的灰度共生矩阵描述子,维数为10×10×4=400。这种基于小区域计算共生矩阵的方法不仅大幅度提高了训练效果,并且由于是在局部方格上进行操作,所以提取到的特征对图像的几何和光学形变具有良好的不变性。

图2 四种特征参数对比Fig. 2 Parameter comparison of four kinds of features

1.3 软级联Adaboost分类器

传统Adaboost算法的基本思想是将K个弱分类器(Weak classifier)级联组成更强的强分类器H(x)。

为了提升分类效果,本文采用深度为2的决策树作为弱分类器,并且使用软级联Adaboost[16]取代传统分类器以实现更优的分类性能。

软级联Adaboost分类器相对于传统Adaboost分类器在算法上有了改进。不同于传统方法需要反复的调参才能获得近似最优的级联结构,软级联方法在每个弱分类器之后都设置了一个阈值,样本每通过一个弱分类器就作出一次决策,从而使分类器的复杂度和分类能力得到逐级提升,实现了更好的分类性能。

2 结合改进ACF和GLCM的俯视行人检测算法

2.1 算法流程

本文从多特征融合的角度出发,分别提取图像的聚合通道特征(ACF)和灰度共生矩阵(GLCM)特征,利用Adaboost分类器进行训练,得到分类器1和分类器2,以级联的方式将聚合通道特征和灰度共生矩阵特征参数训练得到的两个分类器结合起来,采取这样的方法能够有效过滤掉干扰背景,准确检测出目标。本文算法流程如图3所示,具体步骤如下。

图3 本文算法流程Fig. 3 Flow chart of the proposed algorithm

2.2 训练阶段

训练阶段的步骤如下:

1)将训练的正样本和负样本归一化至64×64大小,灰度化之后作为输入。对样本进行下采样得到大小为16×16的图像,分别计算训练样本10个通道的ACF特征,其中包括3个HSV通道、6个改进的HOG通道,以及1个梯度幅值通道。计算得到特征向量。

2)采用区域法计算归一化后正负样本的灰度共生矩阵,选取块大小为8、步长为6、灰度级为16、距离为1、方向为0°。利用得到的共生矩阵,分别计算能量、熵、对比度和相关度,得到4维的特征参数。最终每个样本得到400维特征向量。

3)将得到的聚合通道特征向量和灰度共生矩阵特征向量分别送入软级联Adaboost分类器进行训练,其中:软级联阈值设置为-1,弱分类器个数为128。得到分类器1和分类器2,用于后续的测试。

2.3 测试阶段

测试阶段的步骤如下:

1)首先按帧读入图像,进行图像灰度化。采用滑动窗口法计算原图的ACF特征,窗口大小为64×64。利用特征金字塔的思想直接对图像特征进行缩放,得到不同尺度图像下的特征向量。

2)将计算得到的特征向量送入Adaboost分类器1进行分类得到检测结果的坐标(bounding box)和目标窗口。将检测到的行人头部窗口以及其坐标作为候选目标,进行下一步的筛选。计算该目标的共生矩阵参数向量,输入分类器2,排除干扰背景,得到最终的输出结果。

3 实验结果及分析

为了验证本文所提算法的有效性,在配置为Intel Core i5 CPU 2.40 GHz、内存6.00 GB的计算机上采用Matlab 2014平台编写算法验证实验。本文研究的对象是俯视镜头下拍摄到的行人目标。实验用到的样本图像取自某学校食堂抓拍的彩色监控图像序列,分辨率为320×240。训练集中的正样本通过人工裁剪图像序列中的头部目标区域得到,样本大小为64×64,数量为850张。在截取的头部样本中,约60%的头部样本选取较为规范的类圆形头像,约40%的头部样本则选取一些发型发色不规律的人头像,采用上述样本集训练得到的分类器泛化能力较强。训练集中的负样本从1 000多张不含行人的图片中随机截取得到,大小为64×64,数量为4 000张。从监控序列中选取完整连续的3段视频图像序列作为测试视频,每段视频有200帧,其中每帧至少有1个行人目标,行进速度和方向均为随机。用于测试的图像序列中具有较多干扰背景如深色的背包、服装等,且序列中头部目标包含多种发型及发色,增大了检测难度。测试集样本与训练集样本没有重叠。

对比实验采用准确率(precision)和召回率(recall)作为最终评价指标,计算式如下:

precision=tp/(tp+fp)

(19)

recall=tp/(tp+fn)

(20)

其中:tp是正确检测的行人数目;fn是漏检的人数;fp是算法误检出的行人数目。所以,tp+fp是算法总共检出的行人总数,tp+fn是所有正样本的数目。

实验采用本文算法和文献[12]中所提的ACF算法进行测试对比,结果如表1所示。

从表1中可以看出,本文提出的方法明显缩减了漏检和误检人数,在准确率和召回率上都比文献[12]方法略高。一方面,本文采用的HSV颜色通道相比LUV通道能够达到更好的颜色对比效果,能够提取出鲁棒性更强的颜色特征;另一方面,本文结合了颜色、梯度、梯度方向直方图以及纹理4种特征,把改进后的聚合通道特征和灰度共生矩阵融合起来,将聚合特征描述子检测到的目标窗口输入灰度共生矩阵纹理描述子中进行筛选,极大程度上减少了误检与漏检目标,提高了准确率和召回率。两种检测方法的检测结果如图4所示。

表1 不同方法实验结果对比Tab. 1 Comparison of experimental results of different methods

在Matlab 2014环境下,一幅320×240的RGB图像,用传统ACF算法结合灰度共生矩阵检测需要2 s,而本文算法需要约0.5 s,提升了运算速度。

图4 俯视行人不同算法检测结果对比Fig. 4 Zenithal pedestrian detection result comparison of different algorithms

4 结语

本文提出了一种针对俯视视角的行人检测算法,从多特征融合的角度出发,将改进后的聚合通道特征和灰度共生矩阵训练得到的分类器级联起来,通过逐级筛选的方式进行分类,得到检测结果。该算法融合了颜色、梯度、梯度方向直方图和纹理特征,通过从不同角度描述行人来有效检测行人头部,减小了干扰背景对分类的影响,大幅提高了检测性能,为后续的行人跟踪与智能分析奠定了良好基础。

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!