干货|基于双流递归神经网络的人体骨架行为识别!

2017 年 12 月 15 日 全球人工智能 王洪松


免费加入AI技术专家社群>>

- 日薪5K-10K招兼职AI讲师>>

- 招募1000名AI推广大使>>

行为识别主要研究视频序列中人的行为。传统的基于RGB视频的行为识别研究受光照、场景和摄像机镜头移动等因素影响很大,因此很难描述序列中人体的运动。由于深度传感器(比如Kinect)的成本的降低和实时的人体骨架关键点估计(pose estimation)算法的出现,基于人体骨架的行为识别研究越来越受欢迎。基于骨架的行为的输入为人体关键点的坐标的序列,可以很好的分析行为中人体的运动。


早期基于骨架的行为识别方法主要基于手工设计对行为分析有用的特征。这些手工特征的表达能力有限,不能适应大规模行为识别的任务。最近两年出现了一些端到端的基于递归神经网络(Recurrent Neural Networks, 简称RNN)的算法,可以直接处理原始数据并预测行为。这些方法把每个时刻的关键点坐标拼接成一个向量,不同的时间的坐标向量组成一个序列,然后采用RNN网络学习特征的表达并直接预测行为。实际上,人体不同关键点的数据是具有空间结构关系的。之前基于RNN的方法只考虑了骨架坐标随着时间的动态演变,而忽略了它们在某一个时刻的空间关系。


双流递归神经网络


因此,我们提出一种基于双流递归神经网络(Two-stream RNN)的方法,分别对骨架坐标的时间动态特性和空间相对关系建模,方法示意图如下图所示。



我们的方法采用两个RNN网络(时间通道的Temporal RNN和空间通道的Spatial RNN)处理人体骨架关键点数据,最后在分数层采用加权平均的方式融合。这两个网络可以作为一个端到端训练的整体。


时间通道


对于时间通道,Temporal RNN的处理方式和之前基于RNN的方法是一样的。也就是,把每个时刻的关键点坐标拼接成一个向量,采用RNN网络学习坐标随着时间的变化。这里,我们探索了两种不同的结构:多层RNN(Stacked RNN)和层次化RNN(Hierarchical RNN)。多层RNN就是简单的把单层RNN堆叠起来,上一层RNN的输出作为下一层RNN的输入。我们发现堆叠2~3层的时候,结果最好。层次化RNN是受到前有工作的启发,即把人体关键点分为5个部分(躯干,先对于每一部分的坐标点,把同一个时刻的坐标拼接成一个向量,采用RNN学习这一部分的运动。然后把不同部分在同一时刻RNN的输入拼接起来,再采用RNN网络学习整个人体的运动规律。层次化RNN的示意图如下图所示。



空间通道


对于空间通道,Spatial RNN目的在于学习不同坐标点之间的连接关系。为了便于RNN处理,我们需要把关键点的图的结构转化为一个序列。举个例子,对于Kinect v1的数据,共有20个关键点,结构如下图(a)所示。我们尝试两种方法把把关键点的图的结构转化为一个序列。第一种方法(chain sequence),如下图(b)所示。根据物理连接关系,我们发现人体关键点可以划分为三个序列,即双手,躯干和双脚。于是我们简单的把这三个序列串联成一个序列。第二种方法(traversal sequence),如下图(c)所示。我们从人体中心点出发,采用遍历的方法,把所有的关键点都访问一遍。根据节点访问的先后顺序,输出一个序列。为了和chain sequence做对比,遍历的时候,我们先遍历双手,然后躯干,最后双脚。

坐标变换


对于基于骨架的行为识别,输入为人体关键点的三维坐标。为了增强网络的泛化能力和防止网络训练过程中出现过拟合,我们探究了基于三维坐标变换的数据增强技术,包括旋转、缩放和希尔变换。

我们只在训练的时候做坐标变换,测试的时候不做变换。旋转变换得到不同角度的坐标数据,可以增强模型对跨视角的识别能力。缩放变换改变坐标的大小,可以适应不同升高和体型的拍摄的人。希尔变换改变坐标的形状,可以增强模型的鲁棒性。


实验结果


NTU RGB+D是当前基于Kinect数据的行为识别研究最大的数据库,标准实验设置有两种,一种是cross subject,即测试集中的人和训练集中的人没有交集,另一种是cross view,即测试数据的拍摄角度和训练数据不同。SBU Interaction是交互式行为识别研究中常用的一个数据库。我们首先比较了不同RNN结构的方法的实验结果。



我们发现,对于Temporal RNN,在相同的条件下,Hierarchical RNN的结果要比Stacked RNN的好。可能的解释为,Hierarchical RNN综合考虑和人体局部的运动和全局的运动信息。对于Spatial RNN,Traveral sequence的结果比Chain sequence的好。可能的解释是,Traveral sequence在遍历中对每个节点来回访问了两遍,也就是考虑了前向和方向的连接关系。


我们又采用Two-stream RNN和最近的发表的方法做对比,发现Two-stream RNN比之前的最好方法高出1~2%。




原文:https://mp.weixin.qq.com/s?__biz=MzIyNjY3MjQ5NA==&mid=2247483930&idx=1&sn=0131c07a9ecefec691b478589fe5fbb5&chksm=e86da81bdf1a210d23f8415da25ac16159b211e59f3dc8cec9b2957af19960a6181dbc987a87&mpshare=1&scene=23&srcid=1215rG7OW0vUbnGdI3EYErFG#rd

登录查看更多
13

相关内容

行为识别的要旨是企业在内部协调和对外交往中应该有一种规范性准则。这种准则具体体现在全体员工上下一致的日常行为中。也就是说,员工们的一招一式的行为举动都应该是一种企业行为,能反映出企业的经营理念和价值取向,而不是独立的随心所欲的个人行为。
【ICML2020-华为港科大】RNN和LSTM有长期记忆吗?
专知会员服务
74+阅读 · 2020年6月25日
图卷积在基于骨架的动作识别中的应用
极市平台
24+阅读 · 2019年6月4日
行为识别(action recognition)目前的难点在哪?
极市平台
36+阅读 · 2019年2月14日
【紫冬声音】基于人体骨架的行为识别
中国自动化学会
16+阅读 · 2019年1月30日
【紫冬分享】基于人体骨架的行为识别
中国科学院自动化研究所
20+阅读 · 2019年1月18日
基于人体骨架的行为识别【附PPT与视频资料】
人工智能前沿讲习班
31+阅读 · 2019年1月15日
【技术分享】基于双流递归神经网络的人体骨架行为识别
机器学习研究会
5+阅读 · 2017年9月1日
Arxiv
5+阅读 · 2018年3月30日
VIP会员
相关VIP内容
【ICML2020-华为港科大】RNN和LSTM有长期记忆吗?
专知会员服务
74+阅读 · 2020年6月25日
相关资讯
图卷积在基于骨架的动作识别中的应用
极市平台
24+阅读 · 2019年6月4日
行为识别(action recognition)目前的难点在哪?
极市平台
36+阅读 · 2019年2月14日
【紫冬声音】基于人体骨架的行为识别
中国自动化学会
16+阅读 · 2019年1月30日
【紫冬分享】基于人体骨架的行为识别
中国科学院自动化研究所
20+阅读 · 2019年1月18日
基于人体骨架的行为识别【附PPT与视频资料】
人工智能前沿讲习班
31+阅读 · 2019年1月15日
【技术分享】基于双流递归神经网络的人体骨架行为识别
机器学习研究会
5+阅读 · 2017年9月1日
Top
微信扫码咨询专知VIP会员