基于下肢轮廓角度距离和步幅变化的步态识别算法研究

2018-04-18 11:07
计算机应用与软件 2018年2期
关键词:关节点识别率质心

王 希 娟

(陕西国际商贸学院信息与工程学院 陕西 西安 712046)(西安科技大学计算机科学与技术学院 陕西 西安 710054)

0 引 言

如今,作为保障人们生命、财产安全的有效方式,人脸识别、语音识别、虹膜识别等生物特征识别技术在智能视频监控门禁系统中的应用越来越广泛。尽管如此,由于不法分子的伪装手段随着科技的发展而花样百出,时常令人们防不胜防,这些技术也迎来了新的挑战。由于人体走路姿态的各异性和唯一性,因此步态具有难以伪装和不易隐藏的特点,而且视频监测时无需受试者配合、对硬件要求低、可以远距离感知,现已成为国内外学者研究的热点之一[1]。

国外以卡内基梅隆大学为代表的众多院校为此做出了诸多贡献,而国内虽起步较晚,但以中科院自动化研究所为代表的各大院校也纷纷进行了步态识别的相关研究。Luo等[2]基于虚拟姿态合成技术进行了3D人体重构,并实现多视角的人体步态识别。Xing等[3]提出一种多视角的步态识别完整典型相关分析方法,该方法通过使用传统的典型性相关分析(CCA)方法得到奇异广义特征系统,并将其计算问题转化为两个稳定特征值分解的问题,在保存了包含重要区别信息和相关性信息维度的情况下,降低了运算的复杂度,有效地缓解了传统的典型性相关分析(CCA)方法在高维矩阵方面的计算负担。Chen等[4]通过整合多视角超图学习(MHL)方法和基于超图的重排序框架,将稀疏编码融合到重排序模型中,提出了一种多视角超图学习重排序方法,将问题转化为对超图进行拉普拉斯稀疏编码的问题。该方法不仅达到了较高的识别率,而且明显优于排序的方法,尤其适用于困难的受试者不协作的场合。

由于步态与人体走路的姿态密切相关,而人体轮廓蕴含着诸多步态特征,因此轮廓图像也成为了步态特征提取的关键信息之一。Zeng等[5]运用代表了步态运动动力学的多帧图像轮廓宽高比、面积、质心和宽度的变化信息,有效地识别了具有微小差异的步态模式。Kushwaha等[6]基于多视角捕获步态图像,提取了人体质心到轮廓点的欧式距离和局部二进制模式(LBP)特征进行了人体活动的识别。赵子健等[7]提取了二值图像质心到各轮廓像素的角度,并以角度直方图向量作为步态特征进行了步态识别,该算法计算量小、易于实现,对噪声和阴影等干扰具有鲁棒性。赵志杰等[8]基于步态图像轮廓选取了图像不变矩、帧差百分比和改进的角度距离三种步态特征,并提出了一种改进的K近邻算法,实现了图像的步态识别。陈玲等[9]通过提取人体质心高度、质心到头顶的距离、质心到左足边缘的距离和质心到右足边缘的距离四个特征,采用动态时间规整算法(DTW)实现了较好的识别性能。王浩等[10]基于人体轮廓解卷绕方法提取了质心到轮廓的距离为步态特征,对线性判别分析(LDA)算法进行了改进,将各样本间的距离作为权重来重新定义类间离散度,解决了线性判别分析(LDA)算法在重叠类区分时的困难,降低了边缘类对特征投影空间的影响,取得高识别率的同时,降低了计算复杂度。李凯等[11]提取了腿部轮廓与整体图像相结合的步态特征,采用了改进的PCA方法,将非负特征值对应的特征向量构成低维变换空间,克服了传统PCA方法在抛弃小的主成分时随之丢失有用鉴别信息的问题,提高了算法的识别率。连旭[12]提取了人体下肢角度变化轨迹作为特征矢量,并与人脸识别相结合,提出了一种人脸与步态混合进行身份识别方法。

上述基于轮廓图像进行步态识别的算法各有侧重,也取得了较好的识别效果,但也有一定的局限性。如文献[10]仅在固定视角下可以进行步态识别。文献[5]对微小步态差异的识别具有鲁棒性,但该算法仅能识别人体侧面图,并且在人体背包状态下算法的健壮性不强。文献[8]采用了具有庞大计算量的图像不变矩作为步态特征,以致于该算法的识别率虽然很高,但耗费的时间也较长等。文献[9]降低了算法的计算复杂度,提高了计算效率,但易受受试者背包和衣着变化的影响,识别率比正常行走时明显降低。而在实时响应要求较高的视频监控门禁系统中,需要的是一种识别率高的、响应时间快、对衣着、背包等状态不敏感的步态识别算法,因此算法设计应在保证较高识别率的同时尽可能地缩短步态识别的时间,并对衣着、背包状态具有较好的鲁棒性。

为了实现上述目标,并考虑到步态识别主要与下肢运动相关,本文提出一种基于下肢轮廓角度距离变化的步态识别算法。在图像检测与预处理阶段,首先使用背景减除法对视频监控获取的图像帧提取前景目标,然后按各帧前景目标图像最小外接矩形的高度最大值进行图像裁剪、缩放,实现目标图像的二值化和归一化处理,最后根据目标图像的宽高比变化确定步态序列的周期。在特征提取阶段,不仅提取了图像质心变化和步幅变化两种步态特征,还将文献[8]中提取的角度距离特征及其方法进行了改进,将文献[8]采用的质心到人体全部轮廓的角度距离改为骨盆关节点到人体下肢轮廓的角度距离,并提取了所有图像帧的下肢角度距离,以其动态变化作为一种步态特征。在中科院CASIA步态数据库中的实验表明,本文算法既完整的表达了人体运动的关键特征,达到了较好的识别率,同时又降低了计算的复杂度,缩短了视频监控中人们步态识别的响应时间。

1 步态识别流程

视频实时监控系统的步态识别过程主要包括读取视频图像帧、分割前景图像、预处理、步态周期检测、步态特征提取、步态的分类识别等过程,如图1所示。

图1 步态识别流程图

2 图像预处理

由于视频监控是全天候的,背景图像易于获取,因此,通过背景减除法获取前景图像也十分便捷。通过将读取的视频图像帧与背景图像相减,并选取阈值对差分结果进行二值化处理,即可得到前景图像帧的二值化图像,计算公式如下:

(1)

式中:Fd表示获得的前景图像帧的二值化图像,Ft表示读取的t时刻视频图像帧,F0表示背景图像,T表示选取的固定阈值,重复计算即可获得一系列前景图像的二值化图像。

由于摄像头获取的人体目标大小会随人们由远及近的移动而由小变大,造成提取的前景目标图像大小出现差异。为了保证图像的高度一致和宽高比保持不变,对获取的一系列图像帧需要进行处理。具体方法如下:

(1) 对获取的一系列图像计算人体最小外接矩形,并求出最小外接矩形的宽度w、高度h和宽高比ρ,其中ρ的计算公式如下:

ρ=w/h

(2)

(2) 对计算得到的所有人体最小外接矩形的高度进行对比,求出最小外接矩形的高度最大值Hmax。

(3) 按照最小外接矩形对图像进行裁剪,公式如下:

bw1=imcrop(bw,[col6,row6,w,h])

(3)

式中:imcrop()表示裁剪函数,bw表示Fd中的某帧图像,bw1表示bw按照最小外接矩形裁剪之后的图像,col6表示bw1左上角的像素点在bw中的横坐标,row6表示bw1左上角的像素点在bw中的纵坐标。

(4) 以Hmax为参数,利用双三次插值算法在保持宽高比ρ不变的情况下按照Hmax对系列图像帧进行等比例缩放,即可获得归一化的人体区域图像序列,公式如下:

bw2=imresize(bw1,[Hmax,ρHmax],bicubic)

(4)

式中:imresize()表示缩放函数,bw2表示bw1进行缩放后的图像,bicubic表示采用双三次插值算法进行图像缩放。

由此可见,在预处理过程中,首先按照最小外接矩形对图像进行了裁剪,然后在保持宽高比不变的情况下,按照所有图像帧的图像高度最大值进行了图像的缩放。经过预处理的图像帧,首先是关于步态运动的人体最小外接矩形图像,其次是所有图像帧的高度一致,以及图像处理前后宽高比保持不变。预处理的目标图像如图2所示。

人体步态具有周期性特点,根据预处理图像的宽高比ρ的变化求出人体宽高比随时间变化曲线,如图3所示。其中,横坐标表示步态序列帧数,纵坐标表示宽高比大小,波峰表示双腿着地分开最大时的宽高比,波谷表示双腿并拢着地时的宽高比,连续三个波谷的时间间隔即为一个步态周期。

图3 步态序列周期曲线

3 特征提取

在视频实时监控中,人们的步态识别应在保持准确的识别率情况下尽可能地缩短响应时间。因此,提取的步态特征应尽可能的简单、有效,算法也应在保证识别准确率的同时尽可能降低计算复杂度、提高效率。相关研究[13]表明,人体质心的变化反映了人体重心随人体姿态变化的情况,步态识别对其有一定的依赖作用,因此,本文采用人体质心高度的变化作为一种步态特征。步态是人们的行走姿态,由人体的肢体和关节协调完成,与人们行走时下肢肢体运动参数的变化紧密相关[14-15]。因此,本文又选取了人体行走时的步幅变化作为另一步态特征。文献[8]提取了人体质心到二值图像各轮廓点的角度距离作为步态特征,该特征仅能反映出某帧图像的帧内静态信息,对人体步态的周期性变化则显得无能为力。除此之外,该特征所依赖的质心坐标也会随着步态的变化而有所浮动。相比质心坐标在一个步态周期中的浮动大小,在对图像进行了预处理之后,根据解剖学知识得到的人体骨盆关节点坐标变化率就显得微不足道了。因此,以人体骨盆关节点到下肢各轮廓点的角度距离变化作为本文第三个步态特征,可以更加准确地反映人体步态特征随周期的变化。

3.1 质心高度特征提取

图像预处理后,质心的高度即提取的质心横坐标绝对值,该特征可以在一定程度上反映出步态周期内人体轮廓的相对变化情况。

(1) 计算人体轮廓的质心(plotx,ploty)

(5)

式中,N表示二值图像的轮廓像素点总数,xi、yi为第i个像素的横坐标和纵坐标。

(2) 计算一个周期内第m帧图像的质心高度hm:

hm=(|plotx|)m

(6)

将质心高度作为单帧图像的一个特征向量,记作Fa。

3.2 步幅特征提取

图像预处理后,除双脚并拢情况以外,一个步态周期内第m帧图像的步幅wm定义为该帧图像的宽度,计算如下:

(7)

式中:weimin表示一个步态周期内所有图像宽度的最小值。

将步幅作为单帧图像的第二个特征向量,记作Fb。

3.3 下肢角度距离特征提取

根据人体解剖学理论,人体步态特征主要与骨盆、膝和踝等关节点紧密相关,各关节点与人体的比例关系如图4所示。

图4 人体解剖学主要关节点位置

其中,骨盆关节点记为P,hei表示人体的身高(即最小外接矩形的高度),骨盆关节点高度是人体身高的0.53倍,膝关节节点高度是人体身高的0.28倍,踝关节节点高度是人体身高的0.039倍。据此,下肢角度距离特征的提取方法如下:

(1) 求骨盆关节点坐标

设骨盆关节点坐标为P(xp,yp),根据图4的比例关系可以很方便地得到骨盆关节点的横坐标值xp为:

xp=(1-0.53)×hei

(8)

根据计算得到的xp,对存储人体轮廓像素的矩阵进行扫描,找出横坐标值等于xp的像素点坐标,记录距离P点最近的两个像素点,其中横坐标值较小的像素点记为Pl(xl,yl),横坐标值较大的像素点记为Pr(xr,yr),如图5所示,则骨盆关节点的纵坐标为:

yp=yl+(yr-yl)/2

(9)

(2) 求下肢轮廓点到骨盆关节点方向与y轴的夹角

图5 骨盆关节点位置

首先,对提取的人体轮廓像素点进行逐个扫描,记录横坐标值大于等于xp的像素点,记录的像素点坐标即为下肢轮廓点的所有像素坐标,记为Di(xi,yi)。

其次,由Pl(xl,yl)和骨盆关节点P(xp,yp)构造基准向量Mp;将下肢轮廓的每个像素点Di(xi,yi)与骨盆关节点P(xp,yp)构造向量Np;Np沿逆时针方向与Mp的夹角记为该像素点的角度α,如图6所示,计算公式如下:

(10)

图6 运动角度提取

(3) 计算下肢轮廓点到骨盆关节点的距离

从下肢轮廓像素点Pl(xl,yl)开始,到下肢轮廓像素点Pr(xr,yr)为止,选取n个等间距间隔,每个间隔为(180/n)°。根据式(10),计算出第i个间隔在下肢轮廓的起止像素点坐标,并以此为依据,求出第i个间隔内所有像素点坐标到骨盆关节点的距离linj。

(4) 计算第i个间隔内各下肢轮廓点到骨盆关节点的距离均值,公式如下:

(11)

式中:t表示各间隔内不同的像素个数。

(5) 对于一个周期内的f帧图像,计算每相邻两帧图像在第i个间隔的角度距离均值变化率,公式如下:

(Δlini)k-1,k=

(12)

(6) 将相邻两帧图像各个间隔的角度距离均值变化率组合在一起,形成角度距离的一维特征向量,记作:Fc=[(Δlin1)k-1,k,(Δlin2)k-1,k,…,(Δlini)k-1,k,…,(Δlinn)k-1,k],其中k=1,2,…,f;i=1,2,…,n。

将上述3个特征组合在一起形成单帧图像的一维特征向量,记为F=[Fa,Fb,Fc]。

3.4 周期内运动序列步态特征提取

在一个步态周期内,人体运动的步态特征可以使用该周期内所有图像帧的特征参数集表示,记为:Z(e)=[Fe(1),Fe(2),Fe(3),…,Fe(k),…,Fe(f)],其中,Z(e)表示第e号运动目标周期内的整体步态特征,Fe(k)是e号运动目标第k帧图像的步态特征向量,f表示周期内图像帧数总额。

4 步态识别

4.1 相似性度量

由于人体行走速率的变化性,一个周期内的图像帧数会有所不同,为了解决待测样本与参考模板的周期长度不一致问题,本文采用基于动态规划思想的动态时间规整DTW(Dynamic Time Wrapping)算法进行步态特征的相似性度量。

假设两个样本的步态特征向量分别为Q和P,其中Q表示待测样本的步态特征向量,记为:Q={Q(1),Q(2),…,Q(i),…,Q(m)};P表示参考样本的步态特征向量,记为:P={P(1),P(2),…,P(j),…,P(n)}。待测样本Q与参考样本P在一个周期内的图像总帧数不一定相同,即m可以不等于n,但每个分量的维数须相同。构造一个直角坐标系,横轴表示待测样本的特征值,纵轴表示参考样本的特征值,将特征值的整数坐标画出可形成一个m×n的网格,如图7所示。网格中的任一交叉点表示待测样本与参考样本任意特征矢量之间的失真度d[Q(i),P(j)],失真度常用欧式距离计算:

(13)

式中:h表示特征矢量的维数。

图7 DTW算法搜索路径

动态时间规整算法的基本思想为在图7所示坐标轴中,找出网格交叉点上的若干点,使得相邻两点之间连接的路径总和为最小,即该路径上的交叉点失真度总和最小[16]。由于步态运动具有先后次序,因此这条路径上的交叉点选择必须满足起于网格左下角、终于网格右上角的条件,并且交叉点不能跨格选择。另外,为防止漫无目的的搜索,选择的路径不能向横轴或纵轴过于倾斜,一般规定相邻两点间的路径斜率控制在(1/2,2)范围内。

求解最佳路径时,从原点坐标(1,1)开始,从左至右、从下至上通过若干交叉点(qi,pj),到达终点(qm,pn)时累积距离最小的路径即为最佳路径。因此,当前交叉点(qi,pj)所搜索到的最佳路径累积距离为:

D(qi,pj)=d[Q(i),P(j)]+D(qi-1,pj-1)

(14)

由于交叉点(qi,pj)的前一点仅为(qi-1,pj)、(qi-1,pj-1)、(qi,pj-1)三点之一,则式(15)中的D(qi-1,pj-1)为:

D(qi-1,pj-1)=min{D(qi-1,pj),D(qi-1,pj-1),D(qi,pj-1)}

(15)

至此,计算得到的最佳路径累积距离即为待测样本Q与参考样本P间的最小失真度累积和。因失真度越小,相似性越大,故可得待测样本Q与参考样本P间的相似度。

4.2 分类识别

分类识别的算法较多,本文采用K近邻分类器(KNN)进行步态识别(其中K=3),即首先通过DTW算法计算出待测样本与参考样本之间的相似度,并按照相似度进行排序;然后,找出距离参考样本最近的K个邻居;最后,判别这些邻居的样本类别大部分属于哪一类,并采用这个类别作为待测样本的类别。若这些邻居的样本类别各不相同,则按照相似度大小,选择相似度最大的那个参考样本类别作为待测样本的类别[17]。

5 实验与结果分析

为了验证算法的有效性,本文采用中科院自动化所公开的CASIA-B数据库在MATLAB环境下进行仿真实验。在CASIA-B数据库中,本文选取了4人,每人3个视角(36°、54°、90°),每个视角3种行走状态(正常行走、背包行走和穿大衣行走)进行实验。

在实验中,首先对样本序列求得最小外接矩形,并按照最小外接矩形进行图片的裁剪和缩放,缩放时保证宽高比不变。其次,按照宽高比的变化确定样本序列的步态周期。然后,提取样本序列的步态特征,包括质心高度变化、步幅变化和相邻帧下肢轮廓的角度距离变化三组特征。最后,采用DTW算法进行样本间的相似度度量,以及采用KNN算法进行步态的分类识别。本文算法在不同视角和行走状态下的步态识别率如表1所示。

表1 不同视角和行走状态下的步态识别率一览表

从表1可以看出,通过对不同样本选择不同的视角与行走状态,本文算法的识别率从89.37%~98.85%不等,综合识别率达到93.72%。其中,正常行走状态的识别率最高,背包行走和穿大衣行走识别率略低。但在不同视角下,各行走状态的算法识别率均值均在92%以上,说明本文算法对衣着和背包有较强的鲁棒性。

为了进一步验证算法的有效性,本文选取了三种基于轮廓特征的同类算法进行综合识别率和时间代价的对比,如表2所示。

表2 不同算法实验结果对比一览表

表2中,文献[8]提取了角度距离、图像不变矩和帧差百分比三种步态特征,采用改进的KNN算法进行步态识别,综合识别率最高,达到96.29%,但耗费的时间也最长,为69.4 s/周期。文献[9]以质心高度和质心到双足距离作为步态特征,采用DTW算法进行步态识别,耗费时间最短,为38.7 s/周期,但综合识别率略低,为91.57%。文献[12]提取了人体下肢角度变化轨迹作为步态特征,并与人脸识别相结合进行身份识别,综合识别率最低,为85.4%,时间代价较高,为52.5 s/周期。本文算法与表2中的其他算法对比总结如下:

(1) 四种算法均采用CASIA-B数据库进行仿真实验,可比性强。

(2) 本文算法综合识别率为93.72%,仅次于文献[8]的综合识别率,但比文献[8]耗费的时间明显缩短。

(3) 本文算法耗费的时间仅次于文献[9],但比文献[9]的综合识别率有所提高。

综上所述,本文算法在保证较高识别率的基础上,有效地缩短了识别时间,并对衣着和背包有着较好的鲁棒性,更加适于实时视频监控环境下的用户身份识别。

6 结 语

本文提出了一种基于下肢轮廓角度距离和步幅变化的步态识别算法,在前人研究进行了改进。首先,本文在图像预处理过程中,对提取的二值轮廓图像按照其最小外接矩形进行了裁剪,并在保持宽高比不变的情况下按照所有图像帧的图像高度最大值进行了图像的缩放。因此,经过预处理的所有图像帧不仅高度一致,而且保持了图像处理前后宽高比不变,为特征提取提供了保障。其次,本文不仅选择了易于提取的质心高度变化和步幅变化作为步态特征,而且还提取了下肢轮廓角度距离变化率作为步态特征,融合DTW算法和KNN算法进行步态识别,避免了因待测样本与参考样本周期长度不一致而导致的误判。最后,在图像高度一致的情况下,因骨盆关节点比质心点随图像轮廓精度的不同产生的变化率更小,故本文在提取下肢轮廓角度距离步态特征时,采用骨盆关节点替代了通常使用的质心点,计算下肢轮廓角度距离时比使用质心点准确率更高。实验结果表明,本文算法能够耗费较短的时间进行高识别率的人体步态识别,对衣着和背包的状态也具有较好的鲁棒性,特别适合应用于实时视频监控环境中进行用户身份的识别。

[1] 贲晛烨,徐森,王科俊.行人步态的特征表达及识别综述[J].模式识别与人工智能,2012,25(1):71-81.

[2] Luo Jian, Tang Jin, Tjahjadi Tardi, et al. Robust arbitrary view gait recognition based on parametric 3D human body reconstruction and virtual posture synthesis[J]. PatternRecognition,2016,60(3):361-377.

[3] Xing Xianglei, Wang Kejun, Yan Tao, et al. Complete canonical correlation analysis with application to multi-view gait recognition[J]. Pattern Recognition, 2016,50(5):107-117.

[4] Chen Xin, Xu Jiaming. Uncooperative gait recognition: Re-ranking based on sparse coding and multi-view hypergraph learning[J]. Pattern Recognition, 2016,53(8):116-129.

[5] Zeng Wei, Wang Cong, Yang Feifei. Silhouette-based gait recognition via deterministic learning[J]. Pattern Recognition,2014,47(11):3568-3584.

[6] Kushwaha A K S, Srivastava S, Srivastava R. Multi-view human activity recognition based on silhouette and uniform rotation invariant local binary patterns[J]. Multimedia Systems, 2016, 23:1-17.

[7] 赵子健,吴晓娟,刘允才.基于角度直方图的步态识别算法[J].计算机工程与科学,2006,28(6):73-76.

[8] 赵志杰,孙小英,金雪松,等. 多重图像轮廓特征结合的步态识别算法[J].哈尔滨工业大学学报,2016,48(4):182-188.

[9] 陈玲,杨天奇.基于质心和轮廓关键点的步态识别[J].计算机工程与应用,2015,51(19):173-188.

[10] 王浩,范媛媛,方宝富. 基于轮廓分析的广义步态识别算法研究[J].小型微型计算机系统,2016,37(7):1504-1507.

[11] 李凯,王国超. 融合腿部局部特征的步态识别方法[J].计算机工程与设计,2016,37(5):1340-1345.

[12] 连旭. 基于步态的身份识别研究与实现[D].辽宁科技大学,2014:24-25.

[14] 刘磊. 基于多源信息的步态识别算法研究[D].河北工业大学,2015:11-13.

[15] 李凯, 王国超. 融合腿部局部特征的步态识别方法[J].计算机工程与设计,2016,37(5):1340-1345.

[16] 张浩, 刘志镜. 加权DTW距离的自动步态识别[J]. 中国图象图形学报, 2010, 15(5):830-836.

[17] 叶汉民,黄培亮. 基于加权区域特征的快速步态识别[J].计算机工程与应用,2016,52(10):157-160.

猜你喜欢
关节点识别率质心
矛盾转化关节点视角下的新时代发展特质与方向
基于关节点数据关注RGB视频的双人交互行为识别
重型半挂汽车质量与质心位置估计
基于GNSS测量的天宫二号质心确定
重载机车网络重联TCN 故障节点识别方法研究*
关节点连接历史图与卷积神经网络结合的双人交互动作识别
巧求匀质圆弧的质心
汽车质心高度计算及误差分析方法研究
档案数字化过程中OCR技术的应用分析
基于PCA与MLP感知器的人脸图像辨识技术