Technical Articles
关于机器视觉的一些专业知识
关 节角度的变化能够有效反映人体运动的主要特性。该文提出了一种基于关节角度信息的步态识别方法。首先对运动人体腿部建模,采用最小二乘法拟合边界,获取大 腿和小腿关节角度的时序信息;根据步态运动的准周期性,将关节角度时序信息按傅立叶级数形式展开,采用遗传算法搜索各次谐波的系数并进行尺度变换,生成特 征向量;最后使用KNN分类器进行分类识别。该文在CMU库上进行实验,得到了令人满意的识别结果,而且当步态发生遮挡或自遮挡时,该算法具有明显的优 势。
1引言
步态识别技术是一种新兴的生物特征测量技术。
指出,步态特征具有唯一性,可以利用人体步态特征进行身份识别。基于人体的步态行为特征进行识别,可以在一定程度上克服传统识别技术的不足,近年来逐渐被广泛关注。
步态识别方法可分为基于统计特征和基于模型两类。基于统计的方法直接从图像序列中提取相应统计参数,作为对象分类识别的特征指标,如Huang等人 [2]基于光流特征提出的主元分析法和线性判决方法混合变换,以及Wang等人[3]提出的基于轮廓的解卷绕识别方法等;而基于模型的方法则重点关注人的 运动信息,预先建立人体模型,通过模型和图像序列的匹配获得模型参数,再利用这些参数作为步态特征进行分类,Lee等人[4]采用7个椭圆来匹配运动人体 的二值化轮廓的不同的身体部位,然后提取椭圆的29个矩特征来分析、Yoo等人[5]根据解剖学的知识,进行躯体的拓扑分析,将人体的运动外轮廓简化为一 种2D的stick模型。
目前,两类方法各自存在着一些缺点:基于统计的步态识别方法对背景和光照信号的变化敏感,且难以回避运动场景中的遮挡现象对识别能力所造成的严重影响; 而基于模型的步态识别方法将整个步态序列的每帧单独看待,损失了步态周期的有机整体性。文献[6]指出身体的动态信息主要表现为大腿和小腿的摆动规律,因 此可以在建立人体模型时作一些简化。
针对上述问题,本文提出了一种基于关节角度信息的步态识别算法:将腿部轮廓边界采用线段模型近似,并用最小二乘法拟合,计算出大腿和小腿的关节角度;考 虑到步态运动的准周期性,将关节角度时序信息按傅利叶级数形式展开,利用遗传算法搜索出各次谐波的系数,对各次谐波的幅度值进行尺度标准化,由此构成特征 向量进行步态的分类识别。
2腿部关节角度信息提取
2.1运动人体轮廓提取
采用背景消减法来提取运动目标。先计算出背景图像和当前图像的差值,再对差值图像进行二值化,得到二值图像,如图1(a),(b),(c)所示。对上述 二值图像做进一步的后处理。最终提取出来的人体轮廓如图1(d)所示。由于采用背景消减法是运动目标检测的常用方法,限于篇幅,在此我们就不赘述了。
2.2运动人体腿部建模
文献[5]中的Stick模型把人体看成是由若干刚体构件组成的机构,并在该假设下将运动人体骨骼化为一组服从特定连接顺序的线段,且每条线段都具有一 定的转动灵活性。基于运动学分析的步态识别研究,采用各关节角度的时序变化来描述人体步态行为。在Stick模型中关节角度可定义为相应线段与给定轴线之 间的夹角。考虑到腿部运动是步态的主要组成部分,本文对Stick模型进行简化,仅对运动人体的大腿和小腿进行局部建模分析。即由轮廓图像生成腿部线段, 获得大腿和小腿的关节角度信息。
2.3腿部关节角度提取
运用边界搜索检测出轮廓图像中的大腿(或小腿)边界。采用线性最小二乘法对人体轮廓图像中的大腿(或小腿)边界进行线段拟合,将拟合结果作为本文模型中大腿(或小腿)的对应线段。设拟合出来的线段所在直线为:
则大腿(或小腿)对应关节角度
为:
对序列轮廓图像依次进行上述处理,即提取出了大腿和小腿关节角度的时序信息。
3腿部特征信号提取
3.1步态信号周期性
Murray[1]的步态研究表明步态运动具有准周期性的特点。文献[7]使用自相似图表确定步态周期,本文则将最大轮廓宽度取得极大值时对应的图像帧 确定为步态周期的起始点。由于单个周期包含了周期信号的全部信息,本文算法选取步态序列中任意一个步态周期参与步态识别过程。
3.2遗传算法搜索傅利叶级数系数
根据傅利叶理论,周期性连续信号可按傅利叶级数形式进行展开。例如,周期为的连续信号,可展开成下式:
式中,
为信号的直流分量,
对应信号各次谐波的系数,是最大谐波次数。对于步态信号而言,C.Angeloni等人[8]的研究表明,正常步态的最大频率成分不超过5Hz,而正常 步态单个周期的持续时间大约为1s,即正常步态的基波频率为1Hz。鉴于此,本文对大腿和小腿关节角度的时序信息进行傅利叶级数展开时,均取=5。由于人 体行进过程中的遮挡问题以及其它干扰因素的存在,总会出现某些帧的关节角度信息难以提取的情况,因此无法直接求解出各次谐波系数。
遗传算法是模仿自然界生物进化机制发展起来的随机全局搜索和优化方法,它能在搜索过程中自动获取和积累有关搜索空间的知识,并自适应地控制搜索过程以求 得最优(或近似最优)解。本文采用遗传算法来搜索各次谐波的系数,本质上是根据提取出来的有限帧关节角度,对一个步态周期内关节角度的连续变化规律进行估 计。本文选定的待优化目标函数为:
进行多次搜索,选择当取得最小值时的那组系数值作为步态周期的各次谐波系数。其中N为一个步态周期内的总图像帧数,z(t)表示由第t帧图像得到的大腿 (或小腿)关节角度值,则根据遗传算法搜索得到的系数带入(4)式计算得到。图2给出了根据已知关节角度信息,采用遗传算法估计出来的某步态周期内大腿和 小腿关节角度值的连续性时序变化过程。可以看出,在关节角度值已知处,估计值具有较高的估计精度。
实验发现,同一个人在不同步态周期中,对应的大腿(和小腿)关节角度时序变化的估计曲线颇为相似,而不同人对应的估计曲线之间则存在一定的差异。图3给出了不同人的大腿关节角度时序变化的估计曲线。
3.4生成步态特征向量
不同人正常步下步态周期的持续时间有一定差异,即便是同一个人,在不同步态模式下(如快步走与慢步走)对应的步态周期也是不一致的。显然,必须对遗传算 法搜索出的各次谐波系数进行尺度变换,方能实现准确的步态识别。本文利用傅利叶变换的尺度缩放性质,对各次谐波系数所对应的频率进行规一化,并将变换后所 得各次谐波系数的幅度值
所组成的矢量,作为步态特征向量,用来进行步态的分类识别。
4实验及分析
4.1步态数据库
本文采用CarnegieMellon大学CMU步态数据库进行实验验证。该数据库共含25个人,每个人包含4种不同的步态模式:慢步走、倾斜走、快步 走和抱球走,如图4所示。每种步态模式有六个视角,则每个人对应有24个步态视频序列。每一个视频序列约11秒长,帧频率30帧/秒,图像分辨率为 640×480。
4.2实验结果及分析
本文从CMU库中随机选择了单一视角下9个人的视频序列进行步态识别(每人有4种不同的步态模式,共计36个序列)。
实验选择了最近邻分类器和K-近邻分类器两种模式分类方法,使用留一校验法对本文方法的识别率进行无偏估计。每次留出一个样本,然后训练所有余下样本。 最后,根据留出样本与余下样本的相似性来对被留出的样本进行分类。表1给出了分别采用NN和3NN分类器的正确识别率。
从表1可以看出,将特征向量采用级联方式的融合,并选用3NN分类器进行分类,可以获得更高的识别率。特征向量级联在一定程度上避免了由于单个关节特征 数据误差所导致的误判。采用NN分类器时,对慢步走和抱球走两种步行状态,级联识别率相对于小腿关节识别率并没有明显的提高,这可能跟样本数量有限有关。
4.3算法比较
表2列出和本文采用相同或类似规模数据库的文献相关算法的识别结果,具有一定的可比性,从统计的结果可以看出本文算法具有较高的识别率。
5结语
本文提出了一种基于关节角度信息的步态识别算法,克服了通常情况下因遮挡而无法识别的难题。并在CMU库上对该方法进行了实验验证,获得了令人满意的识别效果。本文仅考虑了单一视角(摄像机镜头的主轴与人的行走方向垂直)的情况。
进一步的研究包括:提高算法的实时性和鲁棒性,在更大规模的数据库中对本文方法进行识别性能测试,并分析特征提取对视角变化的敏感性,提取对于视角与人的行走速度不敏感的步态特征。
参考文献
[1]MurrayM.P,DroughtAB,KoryRC.Walkingpatternsofnormalmen,J.BoneJointSurg,6-A(2)(1964)335–360.
[2]HuangP,HarrisC,NixonM.Humangaitrecognitionincanonicalspaceusingtemporaltemplates.VisionImageandSignalProcessing,1999,146(2):93-100
[3]WangL,HuWMandTanTN.Silhouetteanalysisbasedgaitrecognitionforhumanidentification.IEEETrans.PatternAnalysisandMachineIntelligence,2003,Vol.25,No.12,pp.1505-151