想把自己的身体形象投射进电子游戏里?现在已经是很容易的事了。人工智能算法此前已被广泛应用于虚拟现实头像、监视、服装试穿或电影等多种任务的人体建模上,但大多数方法需要特殊的照相设备来检测景深,或从多个角度探查人体。近日,来自德国布伦瑞克工业大学和 Max Planck Institute for Informatics 的研究人员提出了一种新的算法,可以使用单个角度的标准视频素材为人体创建 3D 模型,用时仅需数秒。目前,该研究的论文已被评为 CVPR 2018 大会 Spotlight 论文。
图 1:本论文提出的技术首创从人的单个视频序列中提取精确的 3D 人体模型,包括头发和衣服,这些人在摄像机前面移动,从而保证我们能从各个角度看到他们。
视频demo:
引言
在许多应用中,包括虚拟现实和增强现实、用于监视的人体跟踪、游戏或生物测定,都需要人的个性化现实和可动画化的 3D 模型。该模型应包括特定个人身体的静态几何形状、头发和衣物,以及连贯的表面纹理。
获取这种模型的一种方法是使用昂贵的主动式扫描仪。但是这种扫描仪的尺寸和成本妨碍了它们在消费级应用软件中的使用。或者,可以使用来自一组密集静态身体姿势图像的多视角被动重建 [22, 46]。然而,人们很难长期站立不动,因此这一过程耗时且容易出错。此外,消费级 RGB-D 相机可用于扫描 3D 人体模型 [39],但这些专用传感器的可用性并不像普通摄像头那样广泛。此外,所有这些方法仅重建表面形状和纹理,而没有内部装配动画骨架。所有上述应用将受益于从单目 RGB 视频自动重建个性化可移动替身的能力。
尽管利用深度数据重建 3D 人体模型 [6, 71, 81] 或自由曲面 [86, 44, 47, 21] 的研究近年来已经有了很大进步,但对单目视频中穿衣服的人类进行 3D 重建(没有对该人进行预先扫描)的问题并未解决。在这篇论文中,研究者评估了单个视频中穿衣服的人的外形(视频中的人是运动的)。一些方法利用单个图像推断参数化人体模型的外形参数 [7, 20, 5, 27, 83, 34],但是重建受限于参数空间,无法捕捉每个人体的外形细节和衣物几何图形。
为了从视频序列中估计几何图形,研究者优化受限于人体模型的单个自由外形,以拟合 F 个图像的集合。不过,这需要一次优化 F 个姿势,更重要的是,优化过程中需要在内存中存储 F 个模型,使得计算成本高昂,且可行性不强。
图 2. 本论文提出方法概览。输入是具备对应分割的图像序列。研究者首先使用 SMPL 模型计算姿势 (a)。然后研究者 unpose 轮廓相机光线(图中红色)(b),并按照标准 T 型姿势优化对象的外形 (c)。最后,研究者计算纹理,生成个性化的混合形状模型 (d)。
该方法的关键在于将可视外壳方法 [41] 泛化至单目视频(其中的人处于运动状态)。标准可视外壳方法从多个视角捕捉静态形状。穿过图像轮廓点(silhouette point)的每束相机光线对 3D 人体形状带来约束。为使可视外壳方法适用于动态单目视频,必须「撤销」人类动作,使其变成标准帧。本论文中,(穿宽松/紧身衣服的)人的几何形状被表示为标准 T 型姿势的裸体人 SMPL 参数化人体模型的偏移,该模型的特征是依赖姿势的非刚性曲面蒙皮。研究者首先拟合 SMPL 模型和 2D 检测(类似 [37, 7]),来估计每一帧的初始人体形状和 3D 姿势。基于拟合,研究者将每一帧中的轮廓点与人体模型中的 3D 点结合起来,根据每个投影光线的对应 3D 模型点的反向变形模型,变换投影光线;研究者将该操作成为 unposing(图 3)。为所有帧 unpose 光线之后,研究者获得了一个可视外壳,以标准 T 姿势展示整个人体形状。之后,研究者优化人体形状参数和自由曲面顶点位移,以最小化 3D 模型点与 unposed 光线之间的距离。从而基于 SMPL 高效优化单个位移面,一次性拟合所有帧,这要求只能在内存中存储一个模型(图 2)。研究者的方法首次实现从单个运动人类视频序列(这样我们可以从各个侧面看到这个人)中提取出准确的 3D 人体模型(包括头发和衣服)。
在多个 3D 数据集上的研究结果表明本论文提出的方法可以重建 3D 人类形状,准确率高达 4.5 mm(比真值姿势的 3.1 mm 稍高一些),尽管单目视频很模糊。研究者提供了其数据集和源代码 [1]。
方法
给定描绘一个移动人物的一部单目 RGB 视频,目标是生成对象的个性化 3D 模型,包括身体外形、头发、衣物、个性化的纹理图和潜在地控制表面的骨架。因此新姿势的柔性曲面变形完全是骨架驱动的。本研究提出的方法由 3 个步骤构成:(1)姿势重建 (Sec. 3.2);(2)一致形态评估 (Sec. 3.3);(3)帧精炼和纹理图生成 (Sec. 3.4)。本文的主要贡献在第二步,第一步建立在以前的研究上,第三步中的纹理获取和时变性细节是可选的。
为了评估对象的一致形态(consensus shape),研究者首先计算每个帧的 3D 姿势。他们扩展了 [7] 中的方法使其更加鲁棒,并获得更好的时间一致性和轮廓重叠。在第二步,一致形态的计算在 3.3 节中有详细介绍。一致形态被高效优化,以最大化地解释每帧实例中的轮廓。由于时间变化导致的衣物变形,这些姿势的一致形态可能和帧轮廓有轻微的错配。因此,为了计算纹理和捕捉时间演化细节,第三步中将用滑动窗口方法对一致形态的偏离进行每一帧的优化(3.4 节)。给出精炼的逐帧形态,我们可以计算纹理图。本文的方法依赖于图像的前景分割。因此,研究者使用了 [9] 中基于 CNN 的视频分割方法,并对每个序列用 3-4 个手工分割图像进行训练。为了在单目 3D 人类形态重构中克服模糊性的问题,研究者使用 SMPL 身体模型 [40] 作为起始点。
图 3:形成图像轮廓的摄像头射线(左)从无姿态形成标准的 T-姿态(右)。这种方式可以让我们在单个模型上对多个帧进行有效的优化。
图 6:在 BUFF 和 D-FAUST 数据集的图像序列上的结果。左边展示的是 DFAUST 结果:(a) 真值 3D 扫描;(b)真实姿态的一致外观 (consensus-p);(c)consensus-p 热图;(D)一致外观(consensus);(e)consensus 热图(蓝色意味着 0mm,红色意味着 ≥ 2cm)。右边展示了在 BUFF 数据上的结果(a) 真值扫描;(b) 真实姿态的一致外观;(c)一致外观。
图 7:定性测试结果:因为重构的模版与 SMPL 人体模型有同样的拓扑结构,我们可以使用 SMPL 来改变重构形体的姿态和外形。虽然 SMPL 不建模带衣着人体的变形,但变形模版看起来还是可信的,从质量上来看足够承担多种应用。
图 9:输入图像(竖线左)与构建形象(竖线右)的对比。正如图像右侧所示,用本文方法构建的形体准确地覆盖了输入图像。在右下角还呈现了构建模型的侧面视角。
论文:Video Based Reconstruction of 3D People Models
论文链接:https://arxiv.org/abs/1803.04758
摘要:本论文描述了如何为单个单目视频中的移动人体做准确的 3D 建模。基于参数化的人体模型,我们提出了稳健的处理流程,即使是对穿衣服的人群也能够获得 5mm 分辨率的 3D 模型。我们的主要贡献是提出的这种方法可根据动态人体轮廓,柔性地变形轮廓锥体外形,得到共同参考帧中的视觉躯壳,用于重构人体表面。这种方法可有效地评估基于大量画面帧的 3D 外形、纹理和植入式的动画骨架。我们展示了对大量主体的评估结果,并分析了整体表现。只需要一个智能手机或者摄像头,我们的方法就能让每个人都创造自己的全动画数字孪生体,并可应用到社交 VR 或者在线时装购物的虚拟试穿。