首页> 中国专利> 一种基于多任务学习的人体动作识别方法

一种基于多任务学习的人体动作识别方法

摘要

本发明公开了一种基于多任务学习的人体动作识别方法,所述方法包括以下步骤:从视频序列中提取时空兴趣点;分别提取两个视角下训练集和测试集的“词袋”特征;使用多任务学习方法进行人体动作识别。本发明将多任务学习思想运用到人体动作识别过程中,充分利用了人体各个动作之间的关联特性,通过对多个人体动作进行同时分析和识别,提高了人体动作识别的效率和准确度;并且通过实验也最终验证了本方法的可行性,满足了实际应用中的需要。

著录项

  • 公开/公告号CN104376308A

    专利类型发明专利

  • 公开/公告日2015-02-25

    原文格式PDF

  • 申请/专利权人 天津大学;

    申请/专利号CN201410681461.X

  • 发明设计人 刘安安;苏育挺;贾萍萍;

    申请日2014-11-24

  • 分类号G06K9/00;G06K9/62;

  • 代理机构天津市北洋有限责任专利代理事务所;

  • 代理人温国林

  • 地址 300072 天津市南开区卫津路92号

  • 入库时间 2023-12-17 04:06:25

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-08-08

    授权

    授权

  • 2015-03-25

    实质审查的生效 IPC(主分类):G06K9/00 申请日:20141124

    实质审查的生效

  • 2015-02-25

    公开

    公开

说明书

技术领域

本发明涉及人体动作识别领域,尤其涉及一种基于多任务学习的人体动作识别方法。

背景技术

随着计算机视觉技术的迅速发展,人体动作识别也逐渐成为广大科研工作者的研究重 点。人们通过摄像机拍摄和记录人体动作,然后再对记录的数据进行分析,实现动作的识 别。人体动作识别具有广泛的应用,包括在国防、军事上的应用和在一些民用场合(如超 市、停车场、银行等)的应用。

目前常用的人体动作识别分类方法主要包括以下几种:

(1)动态时间规整,这种方法可以描述不同时间长度或速度的两段视频序列之间的 相似性,通过寻找到不同动作之间的运动快慢速度进行动作识别。该方法过程简单、鲁棒 性好,但是它的运算量非常大,并且对端点的检测有很强的依赖性;

(2)隐马尔科夫模型,是目前最常用的模式识别的方法之一,它是一种时序建模的 方法,能够有效地对人体动作的时空特性进行建模。该方法可以更好地学习和处理分割连 续数据,通过状态之间的转化来描述动作的变化,但是这种方法是建立在时间序列的自学 习方法基础上的,具有很大的局限性;

(3)模板匹配法,这种方法可以为每个视频序列建立包含其运动特性的特征模板, 然后对模板进行匹配实现动作分类。该方法考虑到了动作之间的关联性,但是它对视频中 的噪声以及动作之间的时间间隔非常敏感,从而限制了它的应用范围;

(4)词袋特征+支持向量机,这种方法可以通过描述人体动作的局部时空显著特性, 实现对人体动作的识别。尽管该方法在人体动作识别方向已经取得了一些成绩,但是该方 法忽略了动作之间的关联性以及时空上下文特征,所以人体动作识别方法仍需要完善和改 进。

发明内容

本发明提供了一种基于多任务学习的人体动作识别方法,本发明提高了人体动作识别 的准确率,满足了实际应用中的需要,详见下文描述:

一种基于多任务学习的人体动作识别方法,所述方法包括以下步骤:

从视频序列中提取时空兴趣点;

分别提取两个视角下训练集和测试集的“词袋”特征;

使用多任务学习方法进行人体动作识别。

所述使用多任务学习方法进行人体动作识别的步骤具体为:

建立任务的训练数据及其标号、测试数据及其标号;

使用任务的训练数据及其标号训练模型;

使用训练模型对任务的测试数据进行预测。

所述使用多任务学习方法进行人体动作识别的步骤还包括:

使用最大值和查准率-查全率曲线两种判别方法对预测数据进行判别,计算识别准确率。

所述使用任务的训练数据及其标号训练模型具体为:

根据公式得到训练模型其中Wt为第t个任务 对应的训练模型,而且满足||Wt||0≤ω,ω为稀疏参数;X1为多任务学习的训练数据;Y1为 X1的对应标号;为对Wt取转置;||·||F为取二范数。

所述使用训练模型对任务的测试数据进行预测的步骤具体为:

根据公式使用训练模型W对测试数据X2进行预测,得到的 预测数据X的每一行为测试集中对应样本的预测数据;

测试数据的第i个原始样本经过预测后得到第i个预测数据表示为:

X(i,:)=(xi,1,xi,2,…,xi,23)

那么所有的预测数据即为X={X(i,:)}i=1368={(xi,1,xi,2,...,xi,23)}i=1368,其中xi,1为第i个预 测数据的第1维,xi,2为第i个预测数据的第2维数据,以此类推。

本发明提供的技术方案的有益效果是:本发明将多任务学习思想运用到人体动作识别 过程中,充分利用了人体各个动作之间的关联特性,通过对多个人体动作进行同时分析和 识别,提高了人体动作识别的效率和准确度;并且通过实验也最终验证了本方法的可行性, 满足了实际应用中的需要。

附图说明

图1为正面视角的示意图;

图2为侧面视角的示意图;

图3为单一的任务学习的示意图;

图4为多任务学习的示意图;

图5为查准率-查全率曲线的示意图;

图6为一种基于多任务学习的人体动作识别方法的流程图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面对本发明实施方式作进一步地详 细描述。

国际机器学习界的权威T.M.Mitchell认为,机器学习就是对一类特殊计算机算法的研 究,这类算法可以从以往的经验中不断学习,从而提升其在处理特定“任务”时的性能[1]。 多任务学习早期的研究工作源于对机器学习中的一个重要问题,即“归纳偏置”问题的研究。 机器学习的过程可以看作是对与问题相关的经验数据进行分析,从中归纳出反映问题本质 的模型的过程。归纳偏置的作用就是用于指导学习算法如何在模型空间中进行搜索,搜索 所得模型的性能优劣将直接受到归纳偏置的影响。不同的学习算法(如决策树,神经网络, 支持向量机等)具有不同的归纳偏置,人们在解决实际问题时需要人工地确定采用何种学 习算法,实际上也就是主观地选择了不同的归纳偏置策略。多任务学习的过程就是将归纳 偏置的确定过程也通过学习过程来自动地完成,即利用相关任务中所包含的有用信息,为 所关注任务的学习提供更强的归纳偏置。由于多任务学习在提高学习系统能力方面具有显 著的能力,该课题已成为目前国际机器学习界的一个研究热点。

1997年,R.Caruana对多任务学习的相关问题进行了初步的分析,并发表《Machine  Learning》,标志着多任务学习这一机器学习概念的正式提出[2]。传统的机器学习技术主要 针对单任务学习(single-task learning)问题,训练集中的所有样本均反映了单个任务的信息。 如T.Evgeniou等人[3]基于早期在多任务学习方面的工作,提出了一种多任务学习的正则化 框架,并且基于针对向量输出函数的核方法将多任务学习的正则化问题转为传统的单任务 学习问题求解。除了上述基于正则化与层次贝叶斯模型的方法,还出现一些基于Logistic 回归[4]、径向基函数网络[5]、支持向量机[6]以及独立成分分析[7]等技术的多任务学习方法。 此外,研究者们还对多任务学习范式下的属性选择问题进行了研究,此时学习系统的目标 是为多个任务寻找一个共享的输入属性空间,从而基于转化后的表示空间进行学习以得到 泛化能力更强的预测模型。目前,多任务学习技术已在模式识别、辅助医疗诊断、数据挖 掘、软件设计、语音处理等多个领域中得到了成功应用。

实际中,人类在学习如何完成一项任务时,往往都需要对一些与该任务相关的任务进 行学习并从中汲取经验,从而起到举一反三与融会贯通的作用。人类的学习过程如此,计 算机在解决实际问题时的情形也十分相似。在实际应用中,由于受到时间、人物、环境等 多种因素的制约,人们往往只能获得与某个任务相关的有限甚至少量样本。因此,当计算 机进行动作识别时,尤其是在遇到训练样本不充分的情况下,使用多任务学习算法有助于 发现人体动作之间的共性以及个性特征,提高人体动作识别的准确率。

101:从视频序列中提取时空兴趣点;

参见图1和图2,本方法使用的测试数据库即3M dataset(全称为multi-view, multi-modality and multi-action dataset,即多视角多模态多动作数据库),是由天津大学数字 多媒体实验室录制的。此数据库中共有23个动作,其中多人动作12个,单人动作11个, 每个动作都是由20组人(每组1-2人)做1-2遍。此数据库的所有动作均是在正面和侧面 两个视角下同时录制的,共包括1784段视频,其中每个视角下有892段视频。此数据库 中的每段视频只包含一个动作,其中多人动作分别是1:同向走、2:相向走、3:原地等 待、4:交谈、5:拥抱、6:握手、7:击掌、8:鞠躬、9:拳击、10:踢足球、11:传篮 球、12:抬箱子;单人动作分别是:13:投篮、14:拍篮球、15:转呼啦圈、16:发网球、 17:扣网球、18:打电话、19:喝水、20:用手机拍照、21:扫地、22:擦桌子、23:弹 吉他。

本数据库所有的视频均是在均匀的背景下采集的,采集帧速率是20fps/s,空间分辨率 是640×480。分别对正面和侧面两个视角下的视频进行相同的处理,分别将两个视角下的 所有视频分成训练集和测试集,其中每个视角下的训练集包括524段视频,测试集包括368 段视频。

本方法使用Laptev等人提出的时空兴趣点的提取方法[8],即提取3M dataset中每个视 频的时空兴趣点,每个时空兴趣点都是用162维的行向量来描述。因为对正面和侧面两个 视角下的视频进行的处理是相同的,下面以正面视角为例进行介绍。

对于3M dataset的正面视角,其训练集包括524段视频,如果用V1,t表示训练集V1中的 第t个视频,那么训练集中的所有视频可以表示为其测试集包括368段视频,如 果用V2,t表示测试集V2中的第t个视频,那么测试集中的所有视频可以表示为如果 设从训练集中的视频V1,t中提取到的时空兴趣点的个数为N1,t,那么从训练集的所有视频中 提取到的所有时空兴趣点的个数如果设从测试集中的视频V2,t中提取到的 时空兴趣点的个数为N2,t,那么从测试集的所有视频中提取到的所有时空兴趣点的个数 N2=Σt=1368N2,t.

102:分别提取两个视角下训练集和测试集的“词袋”特征;

正面视角下训练集和测试集的“词袋”特征的提取方法与侧面视角下训练集和测试集 的“词袋”特征的提取方法相同,下面以正面视角为例进行说明。

1、首先,学习词典:对从正面视角下训练集视频中提出的时空兴趣点进行聚类,从 而得到词典。

本方法采用的聚类算法是K-means[9]算法,使用K-means算法对从正面视角下训练集 视频中提出的N1个时空兴趣点进行聚类后,可将训练集中的时空兴趣点划分成K类,并 且得到K个聚类中心,这K个聚类中心组成的K×162矩阵即为词典CK×162。矩阵中的每 一行为一个聚类中心,根据步骤101可知,每个聚类中心为一个162维的行向量,那么第 k个聚类中心可以表示为Ck=(b1,k,b2,k,…,b162,k),其中1≤k≤K,b1,k为第k个行向量 的第1维数据,b2,k为第k个行向量的第2维数据,以此类推。K个聚类中心的集合表示为 {Ck}k=1K={(b1,k,b1,k,...,b162,k)}k=1K,本方法实验中采用的K=2000。

2、其次,提取训练集的“词袋”特征[10]:对于训练集中的某一段视频V1,t,用表示 从V1,t中提取的第n个时空兴趣点(共N1,t个),那么该段视频的所有时空兴趣点的集合为 分别计算每个时空兴趣点与K个聚类中心之 间的欧氏距离。

例如:为一个162维的行向量,所以可以表示为其 中为从V1,t中提取的第n个时空兴趣点的第1维数据,为从V1,t中提取的第n个时空 兴趣点的第2维数据,以此类推。如果与第m(1≤m≤K)个聚类中心Cm的欧氏距离 最小,就把归为第m类,具体公式表示为

m=argmin1kKLk=argmin1kK(Σi=1162(ai,nV1,t-bi,k)2)

其中,表示与第k(1≤k≤K)个聚类中心Ck之间的欧氏距 离;argmin1≤k≤KLk为当Lk(1≤k≤K)取最小值时,k的取值。

然后统计每类中时空兴趣点的个数,可以得到一个数量直方图(1×K的矩阵),此数 量直方图即为视频V1,t的“词袋”特征。训练集的“词袋”特征是训练集中所有视频的“词 袋”特征的集合,即为一个524×K的矩阵。训练集“词袋”特征的每一行,即为训练集中某 个视频的时空兴趣点的数量直方图,此视频对应的动作的标号即为该行的特征标号 label(1≤label≤23),从而可以得到训练集的特征标号。训练集的特征标号即为一个 524×1的列矩阵。

3、最后,提取测试集的“词袋”特征。对于测试集中的某一段视频V2,t,用表示 从V2,t中提取的第n个时空兴趣点(共N2,t个),那么该段视频的所有时空兴趣点的集合为 分别计算每个特征点与K个聚类中心之间的 欧氏距离。

例如:如果与第k(1≤k≤K)个聚类中心Ck的欧氏距离最小,就把归为第k类。 然后统计每类中时空兴趣点的个数,从而可以得到一个数量直方图,此数量直方图即为视 频V2,t的“词袋”特征。测试集的“词袋”特征是测试集中所有视频的“词袋”特征的集合, 即为一个368×K的矩阵。测试集“词袋”特征的每一行,即为测试集中某个视频的时空 兴趣点的数量直方图,此视频对应的动作的标号即为该行的特征标号label(1≤label≤ 23),从而可以得到测试集的特征标号。测试集的特征标号即为一个368×1的列矩阵。

103:使用多任务学习方法进行人体动作识别。

目前,现有的分类器大部分都是单独对某一个动作进行识别,如果把每个动作的识别 看成一个任务的话,这种分类方法称为单一的任务学习。在单一的任务学习过程中,每个 任务被认为是独立进行的,忽略了动作之间的关联性。因此,希望加入动作之间的关联信 息,对多个动作同时进行分类识别,即多任务学习。在多任务学习过程中,多个相关任务 同时进行学习,实现多任务之间的信息共享,间接增加参加任务的样本个数,提高预测的 性能。因此,多任务学习对提高动作识别的准确率非常有益,尤其是在数据库的训练样本 很少的状况下。图3和图4所示为单一的任务学习和多任务学习的主要差异,单一的任务 学习是把每个任务看成是独立的个体进行单独学习,而多任务学习是利用多个任务之间的 相关性进行同时学习。

1、建立任务的训练数据及其标号、测试数据及其标号;

因为3M dataset里共包含23个动作,所以本方法需要建立23个任务。对于第 t(1≤t≤23)个任务,如果训练集“词袋”特征的标号label等于t,那此标号对应的样本为 正样本(标记为1);如果训练集“词袋”特征的标号label不等于t,那此标号对应的样本为 负样本(标记为0)。步骤102中得到的训练集“词袋”特征也就是第t个任务对应的训练特 征,本方法称为训练子特征,用X1,t表示;训练子特征对应的标号称为训练子特征标号, 用Y1,t表示。

因为X1,t为第t个任务的训练子特征,Y1,t为第t个任务的训练子特征标号,那么所有 23个任务的训练子特征的集合即为多任务学习的训练数据,用表示,所有23 个任务的训练子特征标号的集合即为多任务学习的训练数据的标号,用表示。

同理,如果测试集“词袋”特征的标号label等于t,那此标号对应的样本为正样本(标 记为1);如果测试集“词袋”特征的标号label不等于t,那此标号对应的样本为负样本(标 记为0)。步骤102中得到的测试集“词袋”特征也就是第t个任务对应的测试特征,本方法 称为测试子特征,用X2,t表示;测试子特征对应的标号称为测试子特征标号,用Y2,t表示。

因为X2,t为第t个任务的测试子特征,Y2,t为第t个任务的测试子特征标号,那么所有 23个任务的测试子特征的集合即为多任务学习的测试数据,用表示,所有23 个任务的测试子特征标号的集合即为多任务学习的测试数据的标号,用表示。

2、使用任务的训练数据及其标号训练模型;

本方法参照J.Zhou等人[11]提出的基于最小二乘损失的集群多任务学习算法(简称为 Least_CMTL)进行模型的训练。

根据公式得到训练模型其中Wt为第t个任务 对应的训练模型,而且满足||Wt||0≤ω(ω为稀疏参数,可根据经验及需求设定);X1为多 任务学习的训练数据;Y1为X1的对应标号;为对Wt取转置;||·||F为取二范数。

3、使用训练模型对任务的测试数据进行预测;

根据公式使用训练模型W对测试数据X2进行预测,得到的 预测数据X为一个368×23的矩阵,X的每一行为测试集中对应样本的预测数据。若把测试 数据的第i(1≤i≤368)个原始样本经过预测后得到第i个预测数据表示为:

X(i,;)=(xi,1,xi,2,…,xi,23)

那么所有的预测数据即为X={X(i,:)}i=1368={(xi,1,xi,2,...,xi,23)}i=1368,其中xi,1为第i个预 测数据的第1维,xi,2为第i个预测数据的第2维数据,以此类推。

4、使用最大值和Precision-Recall curve(查准率-查全率曲线)两种判别方法对预测数 据进行判别,计算识别准确率。

1)最大值判别方法:

若第i(1≤i≤368)个原始测试样本的预测数据X(i,:)=(xi,1,xi,2,…,xi,23)满足公式 j=argmax1≤i≤368X(i,:)=argmax1≤i≤368(xi,1,xi,2,…,xi,23),那么就规定第i(1≤i≤368) 个原始测试样本的预测标号为j(1≤j≤23)。同理,可得到所有测试样本的预测标号P。 对比测试集“词袋”特征的标号label和预测标号Predict_label,计算准确率。

2)查准率-查全率曲线方法:

将预测数据X={X(i,:)}i=1368={(xi,1,xi,2,...,xi,23)}i=1368变形为:

X={X(:,t)}i=123={(x1,t;x2,t;...;x368,t)}t=123

那么任意列向量X(:,t)=(x1,t;x2,t;…;x368,t)为测试集中每个样本判别为动作t的预测 值,其中x1,t为第1个样本判别为动作t的预测值,xi,2为第2个样本判别为动作t的预测值, 以此类推。根据经验设置动作t的分类阈值Tt,当X(:,t)中第i个值xi,t满足xi,t>Tt(1≤i≤ 368,1≤t≤23)时,则将此样本判别为动作t(标记为1);反之,则不将此样本判别为动 作t(标记为0)。

通过调整分类阈值Tt,获取不同的查全率和查准率,从而可以得到动作t对应的查准率 -查全率曲线(图5所示:纵坐标为查准率,横坐标为查全率)。通常随着分类阈值从大到 小变化,查准率减小,查全率增加。为了使测试准确率达到最好,查准率-查全率曲线应越 靠近坐标(1,1)的位置越好。因此,实验中,不断调整分类阈值直至分类阈值查准率 -查全率曲线最靠近坐标(1,1)的位置,那么即为需要的动作t的判别阈值,对应得到的 判别标号即为所有测试样本判别为动作t的判别标号Pt。同理,可得到所有动作的判别标号 P={Pt}t=123.

最后,通过对比所有任务的测试数据的标号和所有动作的判别标号 P={Pt}t=123,计算准确率。

下面通过具体的几组实验来验证本方法的可行性,详见下文描述:

第一组实验:通过上述步骤101-103即可对正面视角下人体动作进行识别;

第二组实验:将步骤101-103中使用的所有正面视角下的视频对应替换为侧面视角下 的视频,再进行步骤101-103中的相关操作,即可对侧面视角下人体动作进行识别;

第三组实验:将正面视角下多任务学习的训练数据X1和侧面视角下多任务学习的训 练数据X1进行级联得到双视角下的训练数据X1;将正面视角下多任务学习的测试数据X2和 侧面视角下多任务学习的测试数据X2进行级联得到双视角下的测试数据X2;双视角下训练 数据和测试数据对应的标号和正面视角/侧面视角下对应的标号完全相同,分别表示为Y1和 Y2。然后使用双视角下的测试数据和训练数据进行步骤103的相关操作,即可对双视角下 人体动作进行识别。

选取现有技术中比较成熟的最大值判别方法和查准率-查全率曲线方法进行验证,通过 上述步骤101-103对人体动作进行识别,得到的验证后的结果如表1所示:

表1

第四组实验:根据经典的“词袋特征+支持向量机”[12]的方法,分别使用以上三组实验 中对应的训练数据(正面视角下的X1/侧面视角下的X1/双视角下的X1)和测试数据(正面 视角下的X2/侧面视角下的X2/双视角下的X2)进行动作识别,,得到的验证后的结果如表2 所示:

表2

通过上述实验可以看出本方法的识别性能,验证了本方法的可行性,可以满足实际应 用中的需要。

参考文献

[1]Mitchell T M.Machine learning.New York:McGraw-Hill,1997.

[2]Caruana R.Multitask learning.Machine Learning,1997,28(1):41-75.

[3]Caruana R.Multitask learning.PhD thesis,School of Computer Science,Carnegie  Mellon University,1997.

[4]LapedrizaMasip D,Vitrià J.A hierarchical approach for multi-task logistic regression. In:MartíJ,BenedíJ M,A M,Serrat J,eds.Lecture Notes in Computer Science 4478, Berlin:Springer,2007,258-265.

[5]Liao X,Carin L.Radial basis function network for multi-task learning.In:Weiss Y, B,Platt J,eds.Advances in Neural Information Processing Systems 18,Cambridge, MA:MIT Press,2006,795-802.

[6]Kato T,Kashima H,Sugiyama M,Asai K.Multi-task learning via conic programming.In: Platt J C,Koller D,Singer Y,Roweis S,eds.Advances in Neural Information Processing  Systems 20,Cambridge,MA:MIT Press,2008.

[7]Zhang J,Ghahramani Z,Yang Y.Learning multiple related tasks using latent independent  component analysis.In:Weiss Y,B,Platt J,eds.Advances in Neural Information  Processing Systems 18,Cambridge,MA:MIT Press,2006,1585-1592.

[8]I.Laptev.On Space-Time Interest Point.International Journal of Computer Vision,2005.

[9]J.MacQueen,L.M.LeCam and J.Neyman.Some Methods of classification and  Analysis of Multivariate Observations.In Proc.5th Berkeley Symposium on Mathematical  Statistics and Probability,1967.

[10]L.Fei-Fei and P.Perona.A Bayesian hierarchical model for learning natural scene  categories.In Proc.CVPR,2005.

[11]J.Zhou,J.Chen and J.Ye.MALSAR:Multi-Task Learning via Structural  Regularization.Arizona State University,2012.

[12]I.Laptev,M.Marszalek,C.Schmid,and B.Rozenfeld.Learning realistic human  actions from movies.In CVPR’08,2008.

本领域技术人员可以理解附图只是一个优选实施例的示意图,上述本发明实施例序号 仅仅为了描述,不代表实施例的优劣。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则 之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号