论文翻译:View Adaptive Recurrent Neural Networks for High Performance Human Action Recognition from Skel

        随着三维骨骼数据的普及,基于骨骼的人体动作识别越来越受到人们的关注。一个主要的挑战在于捕捉到的人类行为在很大程度上存在差异。提出了一种新的视点适应方案来自动调节行为发生时的观察视点。我们设计了一种基于LSTM结构的自适应递归神经网络(RNN),而不是基于人类定义的先验准则重新定位骨架.这使得网络本身能够从一端到另一端适应最合适的观察观点。大量的实验分析表明,所提出的视图自适应RNN模型力求(1)将不同视图的骨架转换为更一致的观点,(2)保持动作的连续性,而不是将每一帧转换为相同的位置和相同的身体方向。我们的模型在三个基准数据集上取得了显著的改进,超过了最先进的方法。

介绍
       识别人类行为一直是计算机视觉中最重要和最具挑战性的问题之一。对人类动作识别技术的需求增长非常迅速,并扩展到许多领域,如视觉监视、人机交互、视频索引/检索、视频摘要和视频理解[27,42]。虑到输入的不同,人类动作识别可以分为基于彩色视频的和基于彩色视频的3 d skeleton-based方法。在过去的几十年里,基于彩色视频的人类动作识别得到了广泛的研究,而基于3D骨骼的人类代表,由于其高水平的表征和对视点、外观和周围干扰变化的鲁棒性,近年来引起了大量研究的关注[2,10,28,47]。约翰松早期开创性工作的生物学观察表明,即使没有外貌信息[19],人类也可以通过人体几个关节的运动来识别动作。此外,微软Kinect[48]、英特尔RealSense[1]等性价比高的深度相机的流行。双摄像头和基于深度[34]的人体姿态估计技术的发展,使得三维骨架数据的获取更加容易。就像之前在调查论文[10]中列出的许多作品一样,我们专注于基于骨架的动作识别。
基于骨架的人类动作识别的主要挑战之一是捕获人类动作数据时复杂的视点变化。首先,在一个实际的场景中,相机的捕捉视点在不同的序列中是不同的,例如,正面角度相机的位置,导致骨架表现之间的巨大差异。第二,行为人可以针对不同的方向执行动作。而且,随着时间的推移,他/她可能会动态地改变自己的取向。作为说明在图1中,当从不同的视点捕获时,相同姿态的骨架表示是相当不同的。在实践中,观察观点的变化使动作识别成为一个非常具有挑战性的问题[2,16]。在以前的工作中已经尝试过克服视图的变化来实现健壮的动作识别。然而,这些作品中的大多数都是为彩色视频中的人类识别而设计的。然而,基于骨架的人脸识别中视图不变性的研究仍处于探索阶段。

图1:从不同的视角(不同的相机位置、角度和主题方向)捕捉到的相同姿势的骨架表示是非常不同的

在之前的作品中,只有很少的尝试从视角的变化来考虑这种效果。一般处理采用预处理步骤,通过将身体中心放置在原点,然后旋转骨架,使身体平面平行于(x, y)平面,将摄像机坐标系中的三维关节坐标转换为个人中心坐标系,使骨架数据对绝对位置和身体方向不变,这样的预处理获得了部分视图不变量。然而,它也有很多缺点。一方面,它失去了部分运动信息,如身体中心的运动轨迹和速度,以及身体姿态的变化动力学。例如,行走的动作变成了原地行走,旋转身体的舞蹈动作变成了面向固定方向的舞蹈。另一方面,处理过程(即。(如平移、旋转)并不是在头脑中明确地以优化动作识别为目标设计的,而是基于人类定义的标准,这减少了开发最佳视角的空间。如何设计一个能够提供良好行为认知观点的系统,是一个有待进一步研究的问题。在这项工作中,我们解决了基于骨架的高性能动作识别的视图变异问题。本文提出了一种视图自适应方案,该方案自动调整每一帧的观察视点,从而获得新视图下的骨架表示。注意相机视角的调节相当于将骨架转换为新的坐标系统。为此,如图2所示,我们设计了一种基于LSTM架构的视图自适应RNN,以根据输入骨架来学习和确定合适的视点。主LSTM网络利用在已确定的观察视点中新表示的骨架来方便动作识别。以识别性能最大化为目标,对整个网络进行端到端的训练,以鼓励视图适应子网络学习并确定合适的视点。

图2:我们的端到端视图自适应RNN的架构,它由视图自适应子网和主网络组成
LSTM网络。视图自适应子网络在每个时隙确定合适的观察点。使用新的观察视点下的骨架表示,主LSTM网络决定动作类。 

综上所述,我们做出以下贡献:

我们提出了一种自调节视图适应方案,动态地重新定位观察点,以便更好地从骨架数据中识别动作。
•我们将提出的视图适应方案集成到一个端到端的LSTM网络中,该网络在识别过程中自动确定“最佳”观察点。
•我们对视图适应模型的结果进行了很多观察和分析。我们发现,所提出的模型在保持动作连续性的同时,自动地调整框架以使其具有更一致的观察观点

基于以上贡献,我们提出了一个端到端的高性能行为识别系统。大量的实验分析和评估证明了它强大的能力克服视图变化问题,并在三个基准数据集的最新性能。

相关工作
2.1。视图不变动作识别

在现实场景中,可以从任意的摄像机视点观察到人的行为。这一因素阻碍了有效动作识别技术的发展。研究者对这一问题非常关注,并设计了视图不变的彩色视频动作识别方法:其中一类方法需要多视图视频进行培训[15,8,41,44,25]。例如,基于定向梯度的3D直方图词汇包模型[41]是从各个角度学习数据,提供健壮性的视图变化。另一类方法设计视图不变特征表示[20,30,3],如自相似描述符[20]或基于轨迹曲率的描述还有一类方法使用基于知识转移的模型[7,23,22,49,50,29]。他们发现了一个视野独立的潜在空间,在这个空间中,来自不同视角的特征可以直接进行比较。考虑到彩色视频和骨架序列的不同域,针对彩色视频设计的方法不能直接推广到基于骨架的动作识别相比之下,关于视点对基于骨架的动作识别的影响的研究还不够深入。在进行骨架预处理时,常用的策略是单调的[45,39,5,51,18,31,24日,35)。不幸的是,它们导致了部分相对运动信息的丢失基于序列的预处理,利用第一帧确定的参数,对所有帧进行相同的变换,使运动不受初始身体位置和初始方向的影响,保持运动信息。然而,由于人体并不是刚性的,人体平面上定义的关节“髋”、“肩”、“颈”并不总是适合[40]定位对齐的目的。在这样一个确定的身体平面对齐后,弯腰的人将使他/她的腿倾斜向上。Wang et al.[40]仅使用序列中的垂直位姿帧,通过旋转变换的平均来确定身体平面。但是,序列可能不包含直立姿势。

      与上面的工作相反,我们利用依赖内容的视图适应模型来自动学习和确定每一帧的合适视点。基于骨架的动作识别的RNN
早期的作品使用手工制作的特征从骨架上识别动作[10,45]。最近的许多研究利用递归神经元网络从原始骨架输入中识别人类行为,并通过神经元网络实现特征学习和时间动态建模。Du等[5]提出了一种用于动作识别的端到端的递阶神经网络,它将身体各部分作为每个神经网络的输入,分层融合子网络的输出。Zhu等人[51]提出了利用群稀疏正则化自动探索LSTM网络中判别骨架关节的共现。在感知部分的LSTM模型[31]中,LSTM模型的内存单元被分离为基于部分的子单元,以推动网络学习每个单独部分的长期上下文表示。为了解节点间的时空关系,时空LSTM网络将深层LSTM体系结构扩展到两个并发域,即,时域和空域[24]。为了进一步利用联合判别,时空注意模型[35]进一步在网络中引入注意机制,使其能够在一个框架内选择性地聚焦于骨骼的判别关节,并对多个框架的输出进行不同程度的注意。

        以上大部分工作都是使用human将中心和方向对齐的骨架作为RNNs的输入定义一致性的标准。与此相反,我们的模型自动确定观察视点,从而为有效的动作识别提供骨架表示。

RNN和LSTM概述:

为了使这篇论文自成一体,在这一节中,我们简要回顾了递归神经网络(RNN)和具有长短期记忆(LSTM)[12]的RNN,在此基础上构建了我们的框架。RNN是一种用于序列数据建模和特征提取的强大模型,它允许之前的信息持续存在[9,26]。图3 (a)显示了一个RNN神经元,其中时间步长t时的输出响应ht为输入xt和RNN本身在最后一步ht−1的隐藏输出。然而,这种标准RNN在实践中面临梯度消失效应[12,11,9],长期依赖关系处理能力不强。LSTM[12]的先进RNN体系结构缓解了这一问题。图3 (b)显示了一个LSTM神经元。LSTM的关键是细胞状态ct,它有点像传送带[26]。遗忘门ft和输入门it通过线性交互来调节细胞状态中先前信息的删除或当前信息的添加。

使用LSTM查看适应模型
我们提出了一种基于骨架的人类动作编码的端到端LSTM网络,该网络带有视图自适应模块

定义。图2显示了所提网络的总体架构,包括视图自适应子网和主LSTM网络。在接下来的小节中,我们首先阐述了观察点调节的问题。然后详细描述了我们所提出的视点自适应网络,该网络能够一帧一帧地自适应地确定最合适的观察视点。

问题公式化
       原始的3D骨架被记录下来,对应于摄像机坐标系(全局坐标系),原点位于摄像机传感器位置。为了对动作的初始位置不敏感,为了便于我们的研究,对于每个序列,我们将全局坐标系平移到第一个坐标系的身体中心作为我们新的全局坐标系o
如图2所示,我们的系统的Vt是这个全局坐标系下的骨架表示一个人可以选择从合适的观点来观察一个行为。由于从固定视图捕获的3D骨架的可用性,可以设置一个可移动的虚拟摄像机,并从新的观察视角观察动作,如图4所示。从移动虚拟摄像机视点(观测视点)重新观察t帧处的骨架,将骨架转换为移动虚拟摄像机坐标系下的表示,该坐标系又称为观测坐标系O’。

图4:观测视点(可移动虚拟相机)调节示意图。骨架序列是在全局坐标系o下从第一帧f = 1到最后一帧f =T的骨架记录,该动作可以由一个可移动的虚拟摄像机在该观测坐标系下重新观察。对于第t个坐标系,观测坐标系位于新位置dt,分别绕x轴、Y轴、z轴逆时针旋转,对应全局坐标系。然后骨骼就可以复原了。对于第t个坐标系,观测坐标系位于新位置dt,分别绕x轴、Y轴、z轴逆时针旋转,对应全局坐标系。骨架可以在该观测坐标系下表示。

          给定带有T个坐标系的骨架序列S,在全局坐标系O下,第T个坐标系上的第j个骨架关节记为vt,j = [xt,j, yt,j, zt,j]T,其中T∈
∈(1,···,T), j∈(1,···,j), j为帧内骨架关节总数。我们将第t个坐标系中的关节集合表示为Vt = {Vt,1,···,Vt,J}。

        对于第t帧,假设移动虚拟相机放置在合适的视点上,通过dt∈R平移得到相应的观测坐标系3.,以及径向t、径向t、径向t分别绕全局坐标系的x轴、Y轴和z轴逆时针旋转。因此,表示第j个骨架关节vt,j = [xt,j, y ' t,j, z ' t,j]在该观测坐标系下的第T个坐标系的T为:

式中,R y t,(1)表示旋转原始坐标系的y轴旋转的坐标变换。逆时针的,定义为:

同样,Rx t,和,和,Rz t,分别表示了绕x轴旋转t弧度的原始坐标系和绕z轴逆时针旋转t弧度的坐标变换。注意,第t帧中所有的骨架关节具有相同的变换参数,即考虑到观点的变化是一个刚性运动,所以,首先,首先,首先,首先,首先,首先,首先,首先,首先,观点的变化是一个刚性运动。给定这些转换参数,骨架表示V' t = {v′t, 1,··,v新观测坐标下的' t,J}可由(1)求得:此外,视点可以根据不同的框架而变化。关键问题是如何确定移动虚拟摄像机的视点。
4.2。查看自适应递归神经网络
我们使用视图自适应子网络来自动确定观测视点。,如4.1节所述,使用主LSTM网络学习时间动态,并从端到端从视图调节的骨架数据中进行动作识别的特征抽象,如图2所示。

        适应子网。一种观测视点的调节对应于移动虚拟相机的重新定位,可以通过该虚拟相机的平移和旋转来描述(观测协调系统)。在第t帧对应的时隙中,以骨架Vt为输入,的两个分支利用LSTM子网络学习旋转参数求得旋转矩阵Rt,平移向量dt,对应全局坐标系。

用于学习旋转参数的旋转子网络分支由一个LSTM层和一个完整连接组成(FC)层。旋转参数为

h r t∈r的隐式输出向量为LSTM层,N表示LSTM神经元的个数,Wr∈R3×N, br∈R,,3×1分别为FC层的权值矩阵和偏移向量。由旋转参数得到旋转矩阵Rt,用于学习翻译参数的翻译子网分支由LSTM层和FC层组成。平移向量dt计算为:

h d t∈RN×1为其LSTM层的隐藏输出向量,Wd∈R3×N, bd∈R3×1为FC层的权值矩阵和偏移向量。在第t个框架的观察视点下,骨架的表示形式为V然后通过:

      请注意,为了获得一个有效的视图自适应子网,我们已经试验了许多替代的名称,并发现目前的设计非常有效。首先,我们使用分离的LSTM层来学习旋转和转换模型,而不是使用共享的LSTM层,因为旋转和转换是不同的操作,很难从共享的LSTM神经元学习,其次,我们对旋转分支子网络和平移分支子网络使用相同的骨架输入,而不是只取一个分支的输出(例如平移)
/旋转)作为另一个输入(例如,旋转/平移)。这是因为模型在全局一致坐标系下更容易学习。

       主要LSTM网络。LSTM网络具有建模长期时间动态和自动学习特征表示的能力。与[51,35]的设计相似,我们通过叠加三个LSTM层,然后是一个带有a的FC层来构建主LSTM网络SoftMax分类器。FC层的神经元数量等于action类的数量。

       端到端培训。整个网络是端到端可培训的。我们使用交叉熵损失作为训练损失损耗的梯度不仅在每个子网内部流回,而且从主LSTM网络流回适应子网。让我们表示损失backpropagated视图的输出由ǫv适应子网′t j,其中j∈(1,···,j), j为骨架关节数。然后将损失反向传播到分支的输出,以确定dt的平移向量为:

其中,⊙表示以元素为导向的产品。同样,也可以得到反向传播到分支输出的用于确定旋转参数的损耗。例如,反向传播到输出端的输出损耗为:

在端到端训练可行的情况下,引导视图自适应模型选择合适的观察点,提高识别精度。我们的方案具有以下特点。首先,它根据内容自动选择合适的观察点,而不是使用人类预定义的标准。其次,对视图自适应模型进行优化,以达到较高的识别精度。

       我们的方案具有以下特点。首先,它根据内容自动选择合适的观察点,而不是使用人类预定义的标准。其次,对视图自适应模型进行优化,以达到较高的识别精度。

实验结果
     我们在三个基准数据集上评估了我们提出的视图自适应方案的有效性。对NTU数据集进行了深入分析。为了更好地理解模型,给出了观察视点下骨架表示的可视化。

数据集和设置
        NTU RGB+D Dataset (NTU)[31]。Kinect捕获的数据集是目前最大的用于人类动作识别的RGB+D视频和骨架数据集56880视频样本。它包含60个不同的操作类,包括日常操作、相互操作和与健康相关的操作。样本采集自17个相机设置,在不同的设置中,相机对受试者的高度和距离是不同的。在每一个设置中,三个摄像头被放置在相同的高度,但从不同的水平角度:−45度(相机2),0 0(相机1),每个受试者做每个动作两次,一次面对左相机,一次面对右相机。每个受试者有25个关节。标准评估包括交叉科目(CS)评估,其中40个科目被分成训练和测试组,以及交叉视图(CV)评价,其中相机2和3的样本用于训练,相机1的样本用于测试。

          Kinect交互数据集(SBU)这Kinect捕获数据集是一个与两个受试者交互的数据集,包含8类282个序列,具有受试者独立的5倍交叉验证。每个主题都有15个关节。三维人机交互集(SYSU)[13]。Kinect捕获的数据集包含由40个受试者执行的12个动作。它有480个序列。每个受试者有20个关节。我们评估了[13]两个标准协议的性能。对于set -1,一半的样本用于训练,剩下的用于测试每个活动。在设置2中,一半的受试者用于训练,其余的用于测试。使用了30倍交叉验证。考虑到序列的最大长度较高,对该数据集进行时域下采样。实现细节。我们在Keras[4]工具箱平台上使用theano[38]构建了我们的框架。使用概率为0.5的Dropout[36]来缓解过拟合。类似于[37]的梯度裁剪是通过对梯度的规范(不超过1)强制执行一个硬约束来避免梯度爆发的问题。亚当采用[21]对所有网络进行训练,初始学习率设为0.005。

         在我们的网络设计中,我们在每个LSTM层使用100个LSTM神经元来处理NTU和SYSU数据集。为避免过拟合,我们对SBU数据集每LSTM层使用50个LSTM神经元,其训练样本数量远远少于NTU和SYSU数据集。我们为NTU、SYSU和设置批处理大小
SBU数据集分别为256、64和8。为视图自适应子网,我们将所有的连接层参数初始化为零,以提高训练效率.

与其他先进技术的比较
     表1、表2和表3展示了我们提出的视图适应方案(VA-LSTM)与其他最新方法的性能比较NTU, SBU和SYSU数据集。我们可以看到,我们的方案显著优于最新的方法,约6%,4%,1%的准确性NTU, SBU, SYSU数据集。

视图适应模型的效率
为了验证所提出的视图适应模型的有效性,我们进行了两组比较,如表4所示。一组比较评估了不同的预处理方法和我们提出的方案之间的效率。另一组结果评估视图适应模型的效率。提出了一种基于vva - lstm的最终视图自适应方案,该方案可自动调节网络中的观测视点。这是平移分支和旋转分支同时连接的方案,即。,这个开关strans在图2中。我们的方案是VA-trans-LSTM,它只允许视点的转换。,开关srota是关闭的,而strans是打开的。相比之下,Strans+LSTM是我们的基线方案,而没有启用视图适应模型。,开关srota和strans都是关的,而V注意,输入Vt与我们的视图自适应方案相同,在整个序列中,全局坐标系移动到第一帧的体中心,对初始位置不敏感(见4.1节)。我们将这种预处理称为序列级转换。,S-trans。VA-rota-LSTM是我们的方案,它只允许视点的旋转。时,开关srota是开的,而strans是关的。从表4中,我们观察到,由于引入了视图适应模块,我们提出的最终视图适应方案在CS和CV设置方面的准确率分别比基准方案Strans+LSTM高出3.4%和5.3%。人们可能想知道,在输入到主框架之前,根据广泛使用的人类定义的处理标准,使用预处理骨架时的性能如何LSTM网络。可以将这种预处理看作是确定视点的人工定义规则。我们将基于预处理的方案命名为c++ LSTM,其中C表示预处理策略,如F-trans+LSTM。第三到第七行显示采用不同预处理策略的各种方案。F-trans指的是执行坐标系水平平移,使每个坐标系的身体中心在坐标系原点处。S-rota意味着序列水平旋转的旋转参数计算出第一帧,这是修复轴平行向量从“左肩”到“右肩”,Y设在平行向量从“花键基地”到“脊柱”,和z轴X×Y。类似地,F-rota表示帧级旋转。Ftrans&F-rota表示同时执行了F-trans和F-rota,与[31,24,35]中的预处理类似。第2行中的scheme Raw+LSTM表示一个scheme,它使用没有任何预处理的原始骨架作为主LSTM网络的输入。注意,对于3D骨架,主体到摄像机的距离不会影响骨架的大小。因此,在我们的框架中没有考虑缩放操作。从表4的对比中,我们得到了以下观察和结论。(1)我们最终的方案明显优于常用的预处理策略。与F-trans&F-rota+LSTM相比[31,24,35],我们的方案实现了5.3%的改进CS和CV设置的准确率分别为3.7%。与S-trans&S-rota+LSTM相比,该方案的精度分别提高了3.0%和2.2%。(2)当只允许旋转(或平移)来调整视点时,我们的方案仍然比人工定义的旋转(或平移)预处理方案的性能更好。(3)帧级预处理不如序列级预处理,因为帧级预处理丢失的信息更多,例如帧间的运动。(4) Strans+LSTM对动作的初始位置不敏感,明显优于以raw骨架作为输入raw +LSTM的方案。已学习视图的可视化在每一帧中,视图自适应子网络通过重新定位虚拟移动摄像机确定观察点,然后将输入骨架Vt转换为表示V这为优化识别性能提供了新的视角。我们把Vt和V形象化不是为了更好地理解我们的模型。

图1展示了从不同角度捕捉到的相同姿态的不同序列骨架。有趣的是,各种视点的转换骨架(绿色)具有更加一致的视点,即。这里是正面视角。另一个例子如图6所示,由不同的动作执行相同的骨架框架,科目。我们可以看到,它们被转换成相似的观点。在不同的动作和顺序中可以观察到类似的现象。

图5:同一主题从不同视角拍摄的相同姿态的画面。第二行:原始的骷髅。第三行:从我们模型的观察观点来看的骨架表示。注意第三个骨架是非常嘈杂的,因为在Kinect拍摄时遮挡。

图6:对于不同的被试,从不同的角度捕捉到“饮酒”这一动作的框架。第二行:原始的骷髅。第三行:从我们模型的观察观点来看的骨架表示。

图7:动作序列的框架:(a)“弓”;(b)“惊人的”。第二行:原始骨架。第三行:F-trans&F-rota预处理后的骨架。第4行:从我们模型的观察观点来看的骨架表示。

      为了在一段时间内可视化骨架表示,我们在图7中显示了在原始和新的观察视点下的一个动作的一些帧。我们可以看到,在我们的视图适应模型被应用后,即使是不同行为的被试也会朝向一个更加一致的视图。不同于帧级预处理(如第3行),框架之间转换的骨架是连续的,看起来很自然。在动作“bow”的图7 (a)中,我们的模型经过处理后,身体的方向是平行于x轴的,而经过框架水平预处理的腿是倾斜向上的。在图7 (b)动作“蹒跚”,预处理结果中保留了我们模型处理后主体位置的变化,而丢失了该运动。

      从观察中我们发现,习得观点适应模型倾向于(1)调节观察观点,使被试表现为以一致的观点、交叉顺序和动作被观察;(2)保持动作的连续性而不丧失大部分的相对动作。所提出的视点自适应模型以识别性能最大化为目标进行了优化,在选择合适的视点方面效果显著。不同行为/主体的观点的一致性克服了观点多样性所带来的挑战,在视频捕捉中,使网络专注于动作特定特征的学习。另外,与某些预处理策略不同的是,它保留了有价值的运动信息。

结论:
       我们提出了一个从骨骼数据识别人类动作的端到端视图适应模型。我们的网络不需要按照人类预先设定的准则来重新定位动作识别的骨架,而是能够自己将观察视点调整为合适的视点,以识别性能最大化为优化目标。它通过依赖内容的递归神经元网络模型,克服了人工定义的预处理方法的局限性。实验结果表明,该方法具有较好的实用性,它通过依赖内容的递归神经元网络模型,克服了人工定义的预处理方法的局限性。实验结果表明,该模型在三个基准数据集上显著提高了识别性能,取得了较好的识别效果。

猜你喜欢

转载自blog.csdn.net/com_fang_bean/article/details/107529886