港中文联合Facebook出品VVingerfly
学术头条
2020-09-09
来源:AI科技评论
作者 | VVingerfly
编辑 | 陈大鑫
3D人体姿态和形状估计在最近几年是一个重要的研究热点,但大部分工作仅仅关注人体部分,忽略了手部动作,港中文联合Facebook AI研究院提出了一种从单张图片同时估计人体姿态和手部动作的新方法,展示效果好似科学怪物。如下图左下和右下所示,易看出本文提出的方法姿态估计效果更好。
本文作者提出了一个3D人体全身运动捕捉系统 FrankMocap,能够从单目视频同时估计出3D人体和手部运动,在一块GeForce RTX 2080 GPU上能够达到 9.5 FPS。作者提到 “FrankMocap” 是对现代普罗米修斯 (The Modern Prometheus)中科学怪人 (Frankenstein) 的怪物的致敬。
人们每天会拍大量的日常活动视频上传到网络,如果有一种基于普通摄像头的运动捕捉系统,能够捕捉视频中人体的运动,将在人机交互、人工智能、机器人等众多方向有所应用。同时捕捉人体和人手的运动对这些应用同样重要,但人手只占身体的很小一部分,要想直接捕捉两者的运动是一个很难的问题。当前的大部分相关工作都只顾及图片中人体的3D姿态,忽略图片中人手的动作。
有部分工作关注从单张图片同时估计人体的全身运动,但这些工作都是基于优化的方法,将参数化的人体模型拟合到图像信息,速度较慢不适合实时应用。
这篇文章提出了一个快速准确的方法来从RGB图片或视频估计人体和人手的姿态。作者采用 SMPL-X 人体模型,首先通过两个回归模块来从输入图片分别估计人体和人手的3D姿态,然后再通过一个整合模块将预测的结果组合在一起,得到最终的3D全身人体。文章代码将会开源。
项目主页:https://penincillin.github.io/frank_mocap
项目论文:https://arxiv.org/pdf/2008.08324.pdf
作者使用 SMPL-X 人体模型,给定一张彩色图片,通过两个网络模块分别预测手部姿态和人体姿态,然后再通过整合模块将手和身体组合在一起,得到最终的3D全身模型,整个流程如下图所示。
SMPL-X 人体模型是一个参数化的3D人体模型,是 SMPL 模型的扩展,能够通过低维的人体形状和姿态参数的组合来表达不同形状和姿态的3D人体,其与 SMPL 模型的最大差异在于 SMPL-X 模型通过引入额外参数,能够同时表达人体的手指运动和面部表情。
手部预测模块基于一个端到端的神经网络,直接回归手部姿态参数,其定义如下:其是从输入图像中截取的手部区域图片块,是弱透视投影的相机参数,能够将手部模型投影到输入图像。手部模块的架构如下图所示,其由一个编码器和解码器组成,编码器使用 ResNet-50,将手部图像块作为输入输出编码的图像特征,解码器由全连接层构成,从图像特征回归手部模型参数。
手部姿态和形状估计的网络训练时使用的损失函数主要由4个部分组成:其中是在有3D人体参数时的关节点轴角损失:是3D关节点标注数据时添加的关节点损失:是2D关节点损失,其对预测相机参数非常重要:是手部形状参数的正则项,用于惩罚不自然的手部形状。
3D手部姿态数据集通常是在受限的实验室环境下采集的,用这些数据集训练的模型经常会遇到过拟合的问题,在室外数据表现较差。
作者注意到,现有3D人体姿态估计方法表明利用不同的数据集可以大大提高模型的泛化能力,因此作者使用尽可能多的公开数据集来训练手部姿态估计网络,包括 FreiHAND、HO-3D、MTC (Monocular Total Capture)、STB (Stereo Hand Pose Tracking Benchmark)、RHD (Rendered Hand Dataset)、MPII+NZSL 数据集。
3D人体姿态和形状估计网络参考自 SPIN 的网络结构,SPIN 是一个从单张图片估计 SMPL 人体模型参数的 SOTA 的方法,作者将其输出从 SMPL 的参数修改为 SMPL-X 模型参数,并对网络进行了微调。3D人体姿态估计模块的定义如下其中是从输入图像中截取的人体部分,分别是人体全局旋转、人体姿态参数和人体形状参数。同样这里使用弱透视投影相机参数。
整合模块将3D人体和手部模块输出的结果组合在一起得到 SMPL-X 模型的参数表达,作者提供了两种方法来整合:1. 复制粘贴方式:直接将人体和手部组合起来,速度快;2. 优化拟合方式:使用2D关键点来优化人体参数以得到更加准确的结果,但速度较慢。
复制粘贴组合由于人体和手部模块的输出与 SMPL-X 人体模型的参数是兼容的,因此可以很简单地将两者合并在一起。只需将左右手从世界坐标系变换到人体模型腕关节的局部坐标系下即可。优化拟合方式通过优化人体模型的参数来拟合人体的2D关键点,以得到与图片更加对齐、更加准确的人体网格。
下面表格展示了文章方法和其他方法的运行时间对比,文章的复制粘贴组合方式在 GeForce RTX 2080 GPU 上能够达到9.5FPS,优化的方法也有0.95FPS,均高于 SMPLify-X 和 MTC 方法。下图展示了文章方法在手部姿态估计方面与当前 state-of-the-art 的方法的比较,文章方法的结果更加准确,与图片更加一致。
下图展示了文章方法和 Monocular Total Capture,SMPLify-X 结果的比较,文章方法估计的人体、人手姿态更加准确,而且速度会快很多。更多演示结果不如跳舞~熟练地玩抽纸~倒杯水喝~