刘晓芳,周 航,韩 权,昝孟恩,韩 丹
(北京交通大学 电子信息工程学院,北京100044) E-mail:16125032@bjtu.edu.cn
随着计算机视觉,信息安全领域的发展,身份识别技术成为研究热点.生物特征识别技术即基于个人独特的生理或行为特征进行自动身份鉴别的技术,正在快速发展.因为生物特征不会像身份证等持有物那样易被转移或盗用,从而更安全可靠方便.其中步态识别是根据人体走路的姿势进行身份识,相比指纹识别,语音识别,人脸识别等技术,步态特征识别具有易采集,远距离,非接触,难伪装和非侵入性等优势,是生物特征识别、计算机视觉和信息安全等领域的研究热点.图1为一些常见生物特征.
步态分析起源于心理学,研究者发现每个人都具有自己独特的走路姿势和走路步伐[1].医学研究认为,步态是取决于人体几百个运动学参数的个体独有的人体特征,不同的个体运动又有步幅,步态周期等差异,因此考虑到步态的所有信息,步态就具有唯一性,所以步态可以作为识别人体的生物特征.在国外,最早,Johansson通过实验发现,可以通过观察捆绑在人体上的信号灯(MLD,Moving Light Displays)的运动来判断人体的行走模式[2].在此基础上,Kozlowski和Cutting发现通过MLD实验可以识别人的性别[3],识别自己的朋友[4].最早真正提出利用步态特征来进行人体识别的是Niyogi和AdelSon等[5].1996年,Murase和Sakai提出利用时空相关匹配算法来区别不同人的不同步态[6],Huang等在他们工作基础上增加正则分析对实验进行了改善扩展[7].1998年,Little与Boyd提出通过从光流图像中提取频率和相位特征来识别人体[8],为之后步态识别提供了很好的特征依据.2002年,Abdelkader等提出用步态序列自相似图来提取步态特征进行步态识别[9].2005年,Begg等将支持向量机算法应用于步态自动识别[10],SVM在步态识别中得以应用.2011年,文献[11]以一种新的步态表示--步态光流图(GFI)用于步态识别,进一步提高了步态识别率,步态识别的新思路被不断地提出.2014年,文献[12]介绍总结了当可穿戴技术和非可穿戴技术在步态识别中的应用,最后说明基于人体传感器的便携式系统的步态分析是很有前途的方法.2016年,Rida等[13]提出了一种将统计依赖(SD)特征选择与全球定位保留投影(GLPP)相结合的新方法,以减轻类内变化的影响,改善了服装变化和携带条件等对识别性能产生的不利影响.
图1 一些常见的生物特征Fig.1 Some commonly used biological features
国内关于步态识别的研究开展较晚.2003年,王亮等提出了一种利用监督模式分类技术在低维特征空间中使用空间时间轮廓分析的简单有效的步态识别算法[14].2007年,陶大程教授提出了一种基于广义张量判别分析与Gabor特征的步态识别方法[15].2009年,文献[16]提出用帧差能量图像(FDEI)提取步态特征来抑制轮廓不完整的影响.2012年,文献[17]提出的用于人体步态识别的新的补丁分布特征(PDF)达到了较好的识别率.2016年,在文献[14]基础上,文献[18]提出了一种用于人类步态特征表示和维数降低算法的稀疏张量判别位置对齐算法,提高了识别效果.2017年,文献[19]基于文献[15]和文献[17]提出了使用全纠正(SEL_TCB)框架的子空间集合学习及其基于张量和局部补丁的扩展方法用于步态识别算法.为了推进步态识别研究的发展,中科院自动化所免费提供CASIA步态数据库的下载,目前,包括清华大学,香港理工大学等多所国内著名大学在内的研究机构已大力投入到步态识别研究中.
图2 文献统计Fig.2 Statistic literature
2000年,美国国防部高级研究署DARPA(Defense Advance Research Project Agency,DARPA)提出了一个重大项目HID(Human Identification at a Distance,HID)计划来研究远距离情况下人体的特征识别,大大推动了人体步态识别技术的发展.目前,捷豹路虎公司正在将人脸识别和步态识别相结合的技术应用于汽车防盗系统中,步态识别应用越来越广泛.近年来世界各地科研学术机构越来越重视步态识别技术的研究.如图2为截止到2017年8月20日通过Web of knowledge统计的近十年来关于步态识别的发表文献数和各研究方向的步态识别发表论文数,足以见得研究人员对步态识别研究的关注程度以及步态识别涉及的研究范围之广.
图3 步态识别框架Fig.3 Framework of gait recognition
步态识别技术一般包括人体检测,特征提取,分类识别三部分.首先选取数据库,对数据库中的人体运动图像进行分割,获得目标前景.其次,分析周期性,进行特征提取,并将步态特征存储为固定格式.最后,将待识别的特征与已知分类的特征进行比对,达到最终分类识别的效果.它的基本框架如图3所示.
表1所示为目前国内外已经建立的常用的步态识别数据库及其具备的特征,实验研究中可根据不同研究方向选择不同的数据库.
当前这些数据库一般都采集范围小,缺乏普遍性和广泛适用性.目前步态数据库规模比较大的是英国的南安普顿大学创建的Soton 大步态数据库和中国科学院自动化研究所创建的多视角步态数据库(CASIA-B)和红外步态数据库(CASIA -C),并且CASIA -C数据库是目前唯一公开的大规模红外步态数据库.USMT步态数据库是目前少有的三维步态库之一.以下图4,图5,图6为数据库样图.
图4 CASIA-B多视角库Fig.4 CASIA-B multi-view databases
在步态识别中,准确地定义并分割出人体运动前景直接影响后续步态的特征提取及识别分类.表2 为前景分割常用方法.背景差分方法包括GMM、CodeBook、SOBS、VIBE、W4、SACON、Color(基于颜色信息的背景建模检测方法)算法等算法;帧差法包括相邻帧差法和三帧差分法;光流法包括稀疏光流、稠密光流等算法.不同的方法适用不同的场景,目前使用最广泛的是背景差分法.
图5 CMU Mobo不同衣着数据库Fig.5 CMU Mobo different clothing databases图6 OU-ISIR Treadmill dataset B不同速度数据库Fig.6 OU-ISIR Treadmill dataset B of different speed databases
表1 步态数据库Table 1 Gait database
前景分割结果受许多因素如鬼影,背景抖动,噪声,阈值选择等的影响.为解决这些干扰,文献[29]在传统VIBE基础上通过检测并重新初始化鬼影区域加快了鬼影区域的消除,实验运行速度较快,实时性较好.卡尔曼滤波在图像处理中的应用特别广泛,文献[30]在卡尔曼滤波基础上进行背景自适应更新使得算法能更好地适应背景抖动等复杂环境变化.文献[31]提出了一种改进的混合中值滤波去除图像中低密度随机脉冲噪声的方法,能够保留前景更多的细节特征,改善了分割效果.另外,随着深度学习的快速发展,CNN和FCN等在前景分割中的应用越来越广泛.
前景分割的时候可能会错误地将光照产生的阴影判断为前景,直接导致后面步态特征提取时发生错误,所以去除运动目标阴影也是前景分割中面临的一重要问题.
目前去阴影的方法主要有基于模型的方法和基于属性的方法.基于模型的方法是根据运动场景、运动目标、光照条件等先验数据信息建立阴影模型,检测结果在一定程度上较好[32].文献[33]提出了一种背景重建去除阴影的方法.该方法使用背景差分检测移动物体,运用背景重建方案来创建背景参考图像,通过比较和分析参考图像与原始视频帧来去除阴影.此方法能够适应不同的光照条件,有较好的鲁棒性.而基于属性的方法是利用阴影的几何特点、色度、亮度等信息来标识阴影区域,在基于属性的方法中又有基于RGB颜色空间的阴影消除算法和基于色彩空间转换的阴影消除算法[32].文献[34]分析和讨论了基于RGB颜色空间的阴影去除算法,引入RGB颜色数据来检测前景阴影区域,最终去除阴影目标.文献[35]基于色彩空间转换利用基于HSV颜色空间的阴影消除算法获得待处理的阴影区域,结合图像区域信息,判断运动目标的四个边界点是否为阴影点,最终消除阴影连通区域.它可以避免目标颜色接近目标阴影的区域被错误地剔除,显著地提高了阴影消除的质量.
表2 前景分割常用方法Table 2 Common methods of foreground segmentation
一般情况下前景分割后需要进行形态学处理如腐蚀,膨胀,开运算,闭运算等来消除噪声点以达到更好的处理结果.
图7 前景分割结果Fig.7 Foreground segmentation result
图7为前景分割结果图像(以中科院CASIA-A数据库为例).
步态具有周期性,协调性和均衡性,在步态的一个周期内进行分析,可以减小步态识别计算量,提高运算效率.可根据二值图像每帧中的图形区域的特征如面积,质心,外界矩形等变化情况来分析步态周期性.
常用的确定步态周期的方法如下,2002年,Abdelkader等人根据人体区域绑定框的宽度信号分析了步态序列的周期性,并提出了一种在侧面视角和偏离侧面视角较大情况下的周期计算方法[36],同年,Collins等人分析了CMU Mobo步态库中6个视角下人体宽度和高度信号的周期性,并根据周期性提取步态序列的关键帧以降低计算复杂度,提高运算效率[37].2004年,Kale等人通过观察人体宽度向量的范数随时间的变化来分析步态的周期性[38].2005年,Sarkar等人根据人体区域下二分之一像素点的累计数目来确定步态的周期性[39],和文献[36,37]均是在多视角下分析步态周期性.2007年,Gedikli等人利用检测矩形框和轮廓的差分距离的相关性来确定步态周期[40],在CMU、SOTON、USF数据库上得到了较好的结果.2012年,文献[41]提出了一种步态周期检测的双椭圆拟合方法,具有很好的鲁棒性.2015年,贲晛烨等人在深度信息分层编码基础上进行步态周期检测分析[42].2016年,文献[43]将音频分析领域中的频率跟踪算法应用于惯性信号获取步态周期的信息,得到了良好效果,文献[41-43]为国内步态识别研究做出了巨大贡献.
1)人体基本参数
一般包括身高、体重、四肢长度等测量信息.
表3 特征提取Table 3 Feature extraction
2)跨步特征参数
步态的跨步特征是足着地的空间特征量,包括跨步长、步长、步宽、步速、步调、姿态以及摇摆时长等参数.
3)运动学参数
运动学分析是分析肢体在空间中运动角度的变化,比如身体各部分之间,关节之间的角度的变化范围,而不分析运动产生的原因.
4)动力学参数
动力学参数是指测量引起关节或肢体节段运动的力或力矩.一般包括人体行走时足底与地面之间形成的作用力,即地面反作用力.还有由肌肉、韧带和骨骼产生的关节内力或力矩等参数.
5)肌肉特征参数
肌肉特征参数主要测量肌肉力、肌电信号等.
在以上步态的参数中,人体基本参数和跨步特征参数分析较为直观,而运动学参数和动力学参数对步态的细节描述的更为详细,有利于深入分析步态特征,但是动力学参数只能通过传感器来获得,还必须有测试人的配合,且采集的步态特征数据量较小.对步态识别来说,要在算法实用性的基础上,尽可能提取准确的步态特征.
特征提取是步态识别的核心问题.特征就是指某一物体能够区分于其他物体的属性或者属性的集合.在提取特征时,需要遵循的原则有:首先,提取特征的区分度要高,即相同样本的特征相似性较高,不同类样本之间可分性较高;其次,特征易于提取且维数不宜过高,以减少运算量和提高效率;最后,特征计算具有较高的鲁棒性.
针对部分方法提取特征维数较高的问题,可根据特征降维方法进行降维,比如文献[62]和文献[63]均采用PCA特征减小尺寸,解决维度问题,减小计算量,提高运算效率.文献[18]提出的一种用于人类步态特征表示和维数降低算法的新颖的稀疏张量辨别位置对齐算法,该方法可分性强,避免了潜在的过度拟合现象,提高了运算效率.
在提取步态特征后,需要将待测序列特征与样本特征进行比对完成分类识别,目前步态识别研究中常用的识别分类方法有模板匹配法,基于支持向量机的方法,基于人工神经网络的方法和统计学方法等方法.
模板匹配法广泛应用于计算机视觉领域,是常用的分类方法.模板匹配的实际操作思路很简单:拿已知的模板,和原图像中同样大小的一块区域去比对.Foster等人[64]的区域度量获取的特征对比也是基于模板匹配的方法.Sarkar等人[65]对序列图像的相似性描述也是采用模板匹配方法.文献[66,67]运用的也是基本的模板匹配方法.
在机器学习领域,支持向量机(Support Vector Machine,SVM),在解决图像处理小样本,非线性,高维识别模式中分类识别效果较好.文献[68]利用粒子群优化(PSO)算法优化支持向量机(SVM)的模式识别方法,实验结果表明,对于五个正常步行步态的下肢分析,PSO-SVM分类器的识别率高于非参数优化SVM分类器.文献[69]使用SVM和贝叶斯网络混合方法进行步态识别取得了较好的结果.文献[44,45]都是运用SVM进行识别分类.
BP(Back Propagation,BP)神经网络是一种按照误差逆向传播算法训练的多层前馈神经网络,是目前应用最广泛的神经网络[32].文献[63]利用PCA进行高维步态轮廓特征的有效降维,采用BP神经网络进行特征分类,取得了较好的效果.文献[70]在BP神经网络基础上,采用一种改进的粒子群优化MPSO-BP神经网络方法识别人体下肢在平地行走、上楼梯和起坐三种典型运动模式下的步态相位,最终实验取得了较好的结果.
模板匹配忽略了隐藏在步态序列中姿态之间的连接关系,同时无法解决运动时间快慢的响应问题,隐马尔科夫列(HMM)可以很好地融合这些信息,在基于隐马尔可夫模型的步态识别中,步态序列被看做人体行走姿态在给定约束条件下的一种遍历关系.文献[71]通过初始化的修正使训练出的HMM接近全局最优,并给出Bayes相关先验学习方法,客观性增强,最终结果经中国科学院CASIA的原始步态视频测试,达到比较高的识别率.文献[62]与[63]相比,都是运用PCA降维,[62]最终是运用HMM进行识别分类.文献[47,50]运用的也是HMM的识别分类方法.
除了隐马尔可夫模型,还有其他统计学方法,Ortells等[72]介绍了一种基于鲁棒统计的方法,减轻步态序列受严重和持续缺陷的影响,非参数统计检验应用于最终识别结果.
除了以上方法,还有其他常用的一些如最近邻法(The Nearest Neighbor),k-近邻法(k-Nearest Neighbor,kNN)和动态时间规整DTW(Dynamic Time Warping,DTW)的方法.
最近邻法的主要思想是为了判定未知样本的类别,以全部训练样本作为代表点,计算未知样本与所有训练样本的距离,并以最近邻者的类别作为决策未知样本类别的唯一依据.文献[73,74]采用最近邻法实现步态的分类识别.但是最近邻法对噪声数据较为敏感,所以对最近邻算法进行延伸得到k-近邻法.kNN分类器是基于模型向量机的算法,在分类决策时,kNN分类器只与极少量的相邻样本有关,且kNN分类器的训练过程较简单,无需估计参数,适合于多分类问题.文献[75,76]是采用k-近邻法分类的方法进行步态分类识别.动态时间规整DTW是将不同时间长度的运动特征模板按照一定的时间规整曲线规整,从而使特征模板长度达到一致,然后再进行匹配,这种方法的优势是可以解决动态模式的相似性度量和匹配问题[32].文献[48,77]采用的是动态时间规整的方法.
在步态特征提取及别研究中,运动人体穿着如服饰,鞋子之类,人体运动速度及地面状况等多种因素都会影响步态的识别结果,步态序列拍摄时的分辨率和角度问题也严重影响步态识别的最终结果.以下主要从衣着服饰,速度,角度三个方面分析当前已解决的难点问题.
Yu Guan等[78]分析了服装、地面等因素单独影响识别性能的程度提出了一种基于随机子空间方法(RSM)和多数表决(MV)的分类器集成方法,实验效果较好.Rida等[13]提出了一种将统计依赖(SD)特征选择与全球定位保留投影(GLPP)相结合的新方法,减轻类内变化的影响,改善了服装变化和携带条件等对识别性能产生的不利影响.
贲睨烨等[79]提出一种线性插值方法对速度不等的步态识别具有很好的鲁棒性.文献[80]通过使用受影响较小的身体部位,提出了一个通用的特征集为基础的方法来恢复速度的过渡,改善了步行速度变化带来的步态识别问题.
解决视角变化的步态识别有完整的典型相关分析(C3A)[81]和Connie提出的组合多视角矩阵表示法和新型随机核心极限学习机的方法[82].
6.2.1 特征融合
多模态生物特征识别是利用两种或两种以上的个体模态来提高传统的单一模态的方法,用步态与其它的生物特征融合可以提高识别的鲁棒性[42].2010年,耿新等[83]提出情境感知的融合方法,并将人脸和步态进行动态自适应地融合,实验结果比单一生物识别方法具有更高的识别率.2015年,文献[84]在文献[83]基础上,对多个角度视频下的人脸和步态提出了基于决策层的自适应加权融合方法.除此之外,Zhang等[60]采用步态、人脸和掌纹三种不同模态,将来自不同身份和模式的所有原始生物特征数据投影到统一的子空间上,结果运行良好.多模态生物特征识别是步态识别领域的发展趋势.
6.2.2 复杂背景下大规模数据库的建立
步态识别算法在大规模数据库上的研究还不太多,复杂背景下大规模数据库的建立是真实生活场景下进行步态识别的基础,充分研究在多视角下,多人行走以及不同的光照条件等复杂环境下的步态识别算法,对开发实时稳定的步态识别身份认证系统具有重要研究意义.
6.2.3 多台摄像机和三维方法的应用
目前的步态识别算法大部分采用一台摄像机获取步态数据,利用二维方法进行步态识别,为了提高识别效果,可以研究多台摄像机和三维方法的步态识别算法应用.通过使用多台摄像机,可以改善遮挡问题带来的特征提取问题;对人体运动进行三维建模,可以更加准确的提取人体的步态运动特征,实现更加复杂的特征匹配,多台摄像机和三维方法也是进行人体识别的趋势所在[48].
步态识别作为当下生物特征识别领域的研究热点,以其自身的优势在智能监控,人机交互,安防领域等方面有广泛的应用前景.本文主要从人体检测,步态周期性,特征提取,识别分类四方面综述了步态识别的各种方法,其中人体检测主要介绍了当前步态数据库和前景分割两部分,当前数据库规模较小,在复杂背景下大规模数据库中进行前景分割有待提高.周期性是对步态的一个直观分析,在步态的周期内进行特征提取可以减小计算量,目前步态特征提取的发展方向是特征融合,多个特征组成特征向量以达到更高的特征唯一性.分类识别是整个步态识别系统的最终目的,可根据不同的步态场景选择不同分类识别方法.当前步态识别的算法仅仅停留在解决或改善了部分问题的基础上,多数研究成果还不能满足实际应用的需要.所以基于视觉的步态识别研究,还需要广大科研工作者继续在步态识别领域探索和发展.