文章目录
论文内容
创新点
【两步方法,图像->2D->3D】
- 一个基础的网络模型有效捕捉姿态对齐特征
- 顶部一个分层双向RNN网络-BRNNS包含一组人体结构知识(运动学、对称、运动协调),与其他相似分层结构相比,该模型递归更加充分,并且在中间层无语义信息。
- 一个姿态样本模拟器用于在虚拟摄像机视角中增加样本数量(提高模型通用性)【因为现有的方法过于依赖摄像机的视角,换个视角的图像性能变得很差】
- 提出一个新的评估协议,用在跨视角的设置中,来提高不同方法的泛化能力
从解决问题的角度概括:
- 现有方法对摄像机视角依赖过强:增加学习过程中的摄像机视角;提出一个姿态模拟器用虚拟摄像机视角增加样本数量;
网络结构
表示方式
2D与3D之间图像投影公式
( xi,yi:关节ui的2D坐标;Xi,Yi,Zi:3D坐标;wi:深度w.r.t相机参考帧;K:相机内在参数;ax,ay:K中本地长度;x0,y0:K中重要点;R:相机旋转参数;T:相机转换参数)注意:忽略相机变形
Base 3D-Pose Network
作用:得到2D和3D的姿态对齐特征【启发于Martinez等人】
结构:两个联级块,每个块中,几个完全连接的线性层,交错着Batch Normalization、Dropout层、ReLU激活,堆放在一起。
流程:输入2D pose detections–>在全连接层映射成1024维特征–>进入第一个block和其后面的线性层–>得到3D姿态表示–> 反映射到1024维空间–>进入残差连接层(加速训练,提升效果)–>进入第二个block–>得到3D姿态–>反映射到1024维特征–>将3D姿态的1024维特征与初始的2D姿态1024维特征结合–>得到能同时拥有3D姿态和原始2D姿态信息的表示方式–>进入下面的grammar network。
细节:
- 每个block可以直接得到损失函数的梯度,也就是隐式深度监督
3D-Pose Grammar Network-BRNN
【使用改进的双向RNN(BRNN)学习高层次的3D姿态语法】
- RNN对链式结构的学习效果很好,因此选择RNN;
- BRNN考虑了正向和反向两种状态;
- 使用RNN捕捉链式语法,而不是用于时序数据;
运动学语法(Kinematic grammar)
【描述人体运动,不考虑力学】
五个运动学语法:
正向运动学: 通俗来说是给定父骨骼位置以及它的变换来得出子骨骼的位置以及变换,打一个比方,就像运动手臂,可以带动手肘,进而带动手掌运动。正向运动学的概念是非常容易理解的,实现起来也比较方便,即在场景中先绘制父骨骼,应用父骨骼的变换,然后根据这个变换绘制子骨骼,以此类推。
反向运动学:是以子骨骼的位置和变换反推父骨骼的位置和变换。
对称语法(Symmetry grammar)
【衡量人体两侧的对称性】
运动协调语法(Motor coordination grammar)
【表示数个肢体以一定姿势组合在一起的动作,本文中考虑的是四肢的协调性】
公式
- 两层BRNNS都使用下面的公式;三种语法姿态语法用BRNNS节点中间的边来表示,或者隐式地编码到BRNN体系结构中。
- 后面四个BRNN节点中,两个用于对称关系,两个用于运动协调的依赖性。
- 最终的三维人体关节由语法层次中所有节点的结果进行均值池化得到。
t 步骤;at 输入特征;yt 输出;htf、htb正向与反向状态;o 是分类器函数;
学习过程
学习过程包含了两个部分:1) 用2D-3D损失训练base network中的basic blocks;2)在训练好的base network顶部放置pose grammmar network,并以端到端的方式对整个网络进行微调
姿态样本模拟器(Pose Sample Simulator, PSS)
数据集中四个相机视角训练可能会影响3D姿态估计器在其他场景中应用的普遍性
产生的过程包含两步:1)将真实的3D姿态映射到虚拟摄像机平面中获得真实的2D姿态。 2)通过抽样条件概率分布,模拟2D姿态检测
第一步:首先指定一些列虚拟摄像机校准,通过引用其他真实摄像机的内在参数K’和模拟合理的内在参数如(摄像机位置T‘,和旋转R’)。
第二步:首先用条件概率分布模型减小2D姿态检测和2D姿态真实值之间的差距。定义的概率分布是以一种混合高斯分布。
NG是高斯分布的个数;wj是第j个分量的组合权重;N(c;uj;Σj)是第j个多元高斯分布的均值为uj,协方差为Σj。NG=42;
aj,i是关节ui在第j个多元高斯分布中的的协方差矩阵;
概率分布可以通过EM算法学习得到。E估计权重w组合;M更新高斯参数u和Σ;使用K-means聚类初始化参数。每个学习后的高斯均值uj可以作为一个原子姿态代表一组相似的2D姿态。