专利名称:一种基于归一化r变换分层模型的人体行为识别算法的制作方法
技术领域:
本发明涉及机器视觉研究领域,尤其涉及的是一种基于归一化R变换分层模型的 人体行为识别算法。
背景技术:
人体行为识别在视频监控、基于内容的视频检索、体育赛事分析、人机交互和虚拟 现实技术等领域具有广泛的应用价值,已经成为计算机视觉中的热点研究领域。人体行为 识别,通常被简化成一个时变数据的分类问题,包括行为描述和行为分类识别两大部分。
目前行为理解研究中最常用的特征有形状特征和运动特征两种。但人体行为种类 繁多、复杂多变,通常单独采用某一外观形状特征或者运动特征表征人体行为都存在不足。 外观形状特征容易获得且比较稳定,对纹理变化不敏感。运动特征则没有利用有关人体结 构的任何形状信息,而是直接从图像序列中提取出目标运动特性(时分)信息(如光流信 息、运动方向、轨迹、位置、速度等)来表征运动状态。运动特征具有静态形状特征无法比拟 的优势,即使是在远距离或恶劣的能见度情况下和最小运动系统中,都能够根据运动模式 轻松地区别和识别目标的运动类型,而形状特征在此种情况下往往变得模糊不清。但目前 的计算机视觉方法很难准确地提取运动特征,为了充分利用形状特征和运动特征各自的优 势,故出现了利用多种特征进行人体行为表征的方法。与使用单一特征相比,使用多特征融 合进行人体行为识别的算法更鲁棒。
现有的人体行为的多特征描述方法往往只是多种特征的直接合并,然后结合相应 的识别方法一步得到识别结果,这种方法虽然一定程度上提高了人体行为的识别率,但存 在不足。一方面,会导致维数急剧增加,使得识别的速度大幅度地降低,进而需要进行降维 处理;另一方面,特征融合会削弱单一特征的区分性能。由于识别结果由所有特征共同决 定,故某一特征对特定几种行为的区分能力,会因其他特征的相似性被削弱。
在行为识别方面,近年来,分层模型已逐渐成为国内外学者应用较多的一种行为 表不方法,Badler提出一种基于运动动词的分层框架来分析运动,将一个运动动词视为 一种行为,而这些动词是预先定义在静态图像的规则基础上,用自动状态机建立其行为之 间的联系;Nagel将行为进行四层定义change、event、verb、history,其中‘change’表 示变化、即图像中除噪声以外的变化,‘event’表示预先定义的动作,是描述复杂行为的基 础,‘verb’表示一种行为,‘history’是对整个行为的理解;Park和Aggarwal通过事件 语义学来描述和识别交互行为,将人的动作通过“主语+动词+宾语”这样一个框架来自 动表达。之后,Park等人又提出了一个驾驶员动作的表示模型,利用了语言学中的动词 元结构按每三个代理运动目标一组的结构形式来描述运动。Moeslund采用了分层定义法 来定义行为,将行为按照语义上的描述分为三个层次action/motor primitives, action 和 activityo ‘action/motor primitives’ 是指组成 ‘action’ 的基本单兀,‘action’ 是 ‘motor primitives’的有序组合,‘activity’是由许多‘action’经过逻辑组合而形成的。 将行为按照姿态、动作、活动/行为这样一个层次进行划分是目前应用较多的一个模型。
由于人体行为复杂多样并且缺少明确的分类模式,目前还没有一种通用的描述模型,大部分的研究是针对特定的应用采用某种行为表示模型。在不同的应用环境和研究任务下,模型的层次及各个层次的定义有所不同。另外,目前的分层模型是对行为按照从局部到整体,由简到繁的层次进行划分,主要借鉴事件语义学与动词语义表达式来描述和识别行为。未考虑因行为间的相似性导致的识别过程可能存在先粗分再细分的层次关系。发明内容
为保留多特征的鉴别能力和区分能力,同时不增加特征维度。本发明借鉴人们对事物识别和理解的一般分析过程(即由粗到细、由主要特征到细节特征),在分析和总结以往行为识别方法、行为分层模型和具体研究的基础上,提出了一种基于多特征的先划分再识别的人体行为识别分层模型。
本发明的技术方案如下
一种基于归一化R变换分层模型的人体行为识别算法,包括行为训练阶段和行为识别阶段;行为训练阶段依据MEI的归一化R变换完成行为的第一层大类划分,然后分别确定划分出的各行为类别的描述和识别方法;行为识别阶段,第一层利用欧式距离法确定行为的所属大类别,第二层则依据该大类别在训练阶段制定的行为描述和识别方法进行最终的行为识别。
所述的算法,具体步骤如下
Stepl :对行为训练集S= {SI,S2,S3,…,Sn}中的行为Si,逐帧提取其人体姿态二值轮廓,其中,行为Si={Kl,K2,K3,-,Km}, Kj为组成行为Si的第j帧图像;
St印2 :计算行为Si的运动能量图像Ei ;提取行为Si的关键姿态对(Kil,Ki2), Kil为运动幅度最小的视频巾贞,Ki2为运动幅度最大的视频巾贞;
St印3 :计算运动能量图像Ei的归一化R变换曲线Ri ;计算Ki2的星状模型STi 以及Kil和Ki2的宽度比和高度比;
St印4 :若行为集S未处理完,则转Stepl ;否则,转St印5 ;
St印5 :利用K-Means对行为的归一化R变换集R= {Rl,R2, R3,…,Rn}进行聚类,依据聚类中心集RN,对行为S进行大类划分,得到的各划分类为Ci ;
Step6 :针对各类Ci分别选取合适的行为描述方式,并确定相应的分类识别方法;
St印7 :对于查询行为Sq={Kl,K2,K3,…,Km},处理步骤同St印I一St印3 ;
StepS :根据训练得到的RN,利用欧式距离法确定查询行为Sq的归一化R变换曲线的类别Ci ;
St印9 :将查询行为Sq以Ci类别的描述方式进行表征;
SteplO :根据训练阶段确定的Ci类别的分类识别方法,确定查询行为Sq的具体所属类别。
基于归一化R变换分层模型的人体行为识别算法中的第一层依据MEI的归一化 R变换将行为划分为多个大类,第二层对各类行为使用不同的行为 描述和识别方法进行识别,实现分而治之。本发明第二层分别使用标识了运动部位和运动幅度的关键姿态的星状模型、宽比和高比特征确定各类行为的识别结果。该行为识别分层模型简洁、识别率高。
图1为人体行为分层识别框架;
图2为本发明方法的流程图;具体实施方式
以下结合具体实施例,对本发明进行详细说明。
本发明所涉及的ME1、归一化R变换、K-Means、星状模型、距离变换等均是成熟技术,都有公开文献报道,本发明中不再赘述。
为了利用多特征的鉴别能力和区分能力,同时避免因融合多特征导致的特征维数增加。提出了一种人体行为分层识别模型,第一层依据单一特征快速确定出行为的类别划分,第二层则针对不同行为划分选取不同特征(组合)实现行为类型识别。这种分而治之的分层识别方法降低了行为特征的维数,在一定程度上解决了行为识别复杂度较高的问题, 其次,通过分层搜索,可以根据不同行为类型划分,自适应选择最佳描述特征,进而提高识别的准确性。
考虑到不同的人执行相同动作,其速度和组成动作的各个姿态可能存在差异性, 而动作的发生区域大体是一致的。经过权衡计算复杂度和模型精确度,第一层选取描述了运动发生区域的运动能量图像(MEI)为特征,另外,由于存在因视角改变造成的位置和尺度变化或不同人之间自身的尺度差异,选了具有平移和尺度不变性且对噪声不敏感的归一化R变换对MEI进行表征。第二层确定行为的具体所属类别时,则选取了比运动全局特征 MEI更能体现细节特征的关键姿态作为特征,利用宽比和高比特征以及星状模型进行行为表征,本发明的方法框架如图1所示。
基于归一化R变换分层模型的人体行为识别算法包括行为训练和行为识别两部分,均由划分大类和确定具体类别两层构成(如图1),不同的是,行为训练阶段是通过对训练集的学习确定各层的行为分类准则及参数,而行为识别阶段则是根据训练阶段确定的模型和规则识别查询行为在各层中的所属类别。具体实现方案,如图2,训练阶段,依据MEI的归一化R变换完成行为的第一层大类划分,然后分别确定划分出的各行为类别的描述和识别方法。识别阶段,第一层利用欧式距离法确定行为的所属大类别,第二层则依据该大类别在训练阶段制定的行为描述和识别方法进行最终的行为识别。
本发明的算法具体步骤描述如下
Stepl :对行为训练集S= {SI,S2, S3, - ,Sn}中的行为Si,逐帧提取其人体姿态二值轮廓,其中,行为Si={Kl,K2,K3,-,Km}, Kj为组成行为Si的第j帧图像;
St印2 :计算行为Si的运动能量图像Ei ;提取行为Si的关键姿态对(Kil,Ki2), Kil为运动幅度最小的视频巾贞,Ki2为运动幅度最大的视频巾贞;
St印3 :计算运动 能量图像Ei的归一化R变换曲线Ri ;计算Ki2的星状模型STi 以及Kil和Ki2的宽度比和高度比;
St印4 :若行为集S未处理完,则转St印I ;否则,转St印5 ;
St印5 :利用K-Means对行为的归一化R变换集R= {Rl,R2, R3,…,Rn}进行聚类,依据聚类中心集RN,对行为S进行大类划分,得到的各划分类为Ci ;
St印6 :针对各类Ci分别选取合适(可依据经验选取)的行为描述方式,并确定相应的分类识别方法;
St印7 :对于查询行为Sq={Kl,K2,K3,…,Km},处理步骤同St印I一St印3 ;
StepS :根据训练得到的RN,利用欧式距离法确定查询行为Sq的归一化R变换曲线的类别Ci ;
St印9 :将查询行为Sq以Ci类别的描述方式进行表征;
SteplO :根据训练阶段确定的Ci类别的分类识别方法,确定查询行为Sq的具体所属类别。
实验结果
采用留一交叉验证法对Weizmann人体行为数据库中的10种行为进行实验,每个动作均由9个人分别单独完成,其中Lena分别演示了向左和向右两种走、跑和单脚向前跳跃,共有93组数据。
训练阶段,首先计算所有行为MEI的归一化R变换曲线,再利用K-Means对其进行聚类(K值为6),依据聚类中心,将行为划分为3大类,第一类包括bend 、jack和p jump, 第二类仅有wavel,剩下的6类则组成第三类。接着,分别确定第一类和第三类的行为描述和行为识别方法。第一类中三种行为有较明显的差异,选用了算法Step2的关键姿态对 (Kil, Κ 2)的宽比和高比特征对其进行描述,并利用经验阈值(当Kil和Ki2的宽度比小于1. 55且高度比在区间[1. 85,1. 2]中时,识别为行为pjump ;宽度比在区间[1. 5,2. 5] 且高度比在区间
中时,为行为Bend;宽度比在区间[1. 5,2. 5]且高度比在区间 [O, O. 75]中时,为行为bend ;宽度比大于2. 5时,为行为jack)识别各行为;第三类中的 walk、run、side和skip四种行为较相似,故选取的特征是区分性更强的人体星状模型,最后利用模板匹配进行行为识别。识别阶段首先确定查询行为的所属大类别,再根据相应类别的行为描述和行为识别方法确定行为的最终类型。实验结果表明,对10种行为的平均识别率达92. 47%ο
应当理解的是,对本领域普通技术人员来说,可以根据上述说明加以改进或变换, 而所有这些改进和变换都应属于本发明所附权利要求的保护范围。
权利要求
1.一种基于归一化R变换分层模型的人体行为识别算法,其特征在于,包括行为训练阶段和行为识别阶段;行为训练阶段依据MEI的归一化R变换完成行为的第一层大类划分, 然后分别确定划分出的各行为类别的描述和识别方法;行为识别阶段,第一层利用欧式距离法确定行为的所属大类别,第二层则依据该大类别在训练阶段制定的行为描述和识别方法进行最终的行为识别。
2.根据权利要求1所述的算法,其特征在于,算法具体步骤如下Stepl :对行为训练集S= {SI,S2, S3,…,Sn}中的行为Si,逐帧提取其人体姿态二值轮廓,其中,行为Si={Kl,K2,K3,-,Km}, Kj为组成行为Si的第j帧图像;St印2 :计算行为Si的运动能量图像Ei ;提取行为Si的关键姿态对(Kil,Ki2),Kil为运动幅度最小的视频巾贞,Ki2为运动幅度最大的视频巾贞;St印3 :计算运动能量图像Ei的归一化R变换曲线Ri ;计算Ki2的星状模型STi以及 Kil和Ki2的宽度比和高度比;St印4 :若行为集S未处理完,则转St印I ;否则,转St印5 ;St印5 :利用K-Means对行为的归一化R变换集R= {Rl,R2, R3,…,Rn}进行聚类,依据聚类中心集RN,对行为S进行大类划分,得到的各划分类为Ci ;Step6 :针对各类Ci分别选取合适的行为描述方式,并确定相应的分类识别方法;St印7 :对于查询行为Sq={Kl,K2,K3,…,Km},处理步骤同St印I一St印3 ;StepS :根据训练得到的RN,利用欧式距离法确定查询行为Sq的归一化R变换曲线的类别Ci ;Step9 :将查询行为Sq以Ci类别的描述方式进行表征;SteplO :根据训练阶段确定的Ci类别的分类识别方法,确定查询行为Sq的具体所属类
全文摘要
本发明公开了一种基于归一化R变换分层模型的人体行为识别算法,包括行为训练阶段和行为识别阶段;行为训练阶段依据MEI的归一化R变换完成行为的第一层大类划分,然后分别确定划分出的各行为类别的描述和识别方法;行为识别阶段,第一层利用欧式距离法确定行为的所属大类别,第二层则依据该大类别在训练阶段制定的行为描述和识别方法进行最终的行为识别。该行为识别分层模型简洁、识别率高。
文档编号G06K9/66GK103065161SQ201210569908
公开日2013年4月24日 申请日期2012年12月25日 优先权日2012年12月25日
发明者范勇, 高琳, 欧阳寒, 李郁峰, 李绘卓 申请人:西南科技大学