浙大三维视觉团队提出 Neural Body,单目RGB视频重建人体三维模型,无需预训练网络...

点击蓝字

关注我们

AI TIME欢迎每一位AI爱好者的加入!

今天,我们介绍一篇2021 CVPR的人体自由视角合成的论文:Neural Body: Implicit Neural Representations with Structured Latent Codes for Novel View Synthesis of Dynamic Humans,该论文由浙江大学CAD&CG国家重点实验室/浙大三维视觉实验室提出。

1.论文链接:arxiv.org/abs/2012.1583

2.论文代码:github.com/zju3dv/neura

3.Project page: zju3dv.github.io/neural

论文的两个demo

1. 从稀疏视角视频中生成的自由视角视频

2. 从单目视频重建出3D human shape

一、引言

1.1 论文的问题描述

论文希望生成动态人体的自由视角视频,这有很多应用,包括电影工业,体育直播和远程视频会议。大家在春晚或一些综艺类节目应该已经见过子弹时间的特效。

1.2 当前方法在这个问题的局限性

现在效果最好的视角合成方法主要是NeRF [3] 这个方向的论文,但他们有两个问题:

  • 需要非常稠密视角来训练视角合成网络。比如NeRF论文中,一般用了100多个视角来训练网络。

NeRF的训练视角

对于静态物体,这是可以做到的,一般是对着静止的物体拍一圈图片。但如果对于动态场景来说,我们无法要求演员静止来让我们给他拍一圈图。为了拍摄稠密多视角视频,之前的方法需要昂贵的相机阵列来进行捕捉。这套设备特别昂贵,而且还很不方便,一般只在电影拍摄时用到。

http://henrybetts.co.uk/an-attempt-at-bullet-time/

  • NeRF只能处理静态场景。现在大部分视角合成工作是对于每个静态场景训一个网络,对于动态场景,上百帧需要训上百个网络,这成本很高。

1.3 我们的观察和对问题的解决

在稀疏视角下,单帧的信息不足以恢复正确的3D scene representation。论文的key idea是是通过整合时序信息来获得足够多的3D shape observation。大家平时应该能有这种感觉,观看一个动态的物体更能想象他的3维形状。我们论文用的就是这个intuition。

这里整合时序信息的实现用的是latent variable model。具体来说,我们定义了一组隐变量,从同一组隐变量中生成不同帧的场景,这样就把不同帧观察到的信息和一组隐变量关联在了一起。经过训练,我们就能把视频各个帧的信息整合到这组隐变量中,也就整合了时序信息。

二、 论文方法

2.1 Prerequisite: Neural radiance fields

论文使用neural radiance field (NeRF) [3] 来表示一个3维场景。对于一个场景的任意一点,NeRF取出3维坐标和视角方向,输入到一个MLP中,输出color和density。这个表示能通过volume rendering从图片中很好的优化场景的3D模型。

NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis

这里的网络是一个global implicit function。global的意识是NeRF只用一个MLP网络去记录场景中所有3维点的颜色和几何信息。

2.2 Neural radiance fields on local latent codes

我们方法首先将NeRF改成一个local implicit function,也就是让NeRF从一组local latent codes中生成场景。

Neural radiance fields on local latent codes

  • Local latent codes的生成。比如对于某一帧,论文定义了一组离散的local latent codes。为了摆放这些latent codes,需要对这一帧预测一个人的粗糙的human mesh,比如SMPL模型。这里论文用了浙大三维视觉实验室开源的EasyMocap来检测每一帧的SMPL模型,代码地址为:zju3dv/EasyMocap。

然后我们在SMPL模型的mesh vertex上摆放latent codes,就像图中最左边的样子。

  • NeRF on local latent codes。Neural Body将local latent codes输入到一个3维卷积神经网络,得到一个latent code volume,这样就能通过插值得到空间中的任意一点的latent code。然后Neural Body把latent code送入NeRF的网络中,就能得到相应的color和density。这里说NeRF是local implicit function的原因是,相比于原来NeRF用一个MLP记录整个场景的信息,这里场景的信息记录在local latent codes。比如脸部和手部的latent codes分别记录脸和手的appearance和shape information。

2.3 Structured latent codes

为了从同一组latent codes中生成不同帧的场景,我们将这些latent codes摆放在一个可驱动人体模型的mesh vertex上,也就得到了structured latent codes。

Structured latent codes

我们通过人体模型驱动structured latent codes的空间位置

2.4 从同一组structured latent codes生成不同帧的场景

对于不同的视频帧,Neural Body将latent codes摆放为对应的人体姿态,然后输入到NeRF中得到对应帧的3维场景。像NeRF一样,论文用volume rendering从图片中优化网络参数。通过在整段视频上训练,Neural Body实现了时序信息的整合。

三、 实验分析

3.1 多视角视频上的结果

论文采集一个叫做ZJU-MoCap的多视角数据集,在上面和NeRF [3], Neural Volumes [4], Neural Textures [5], NHR [6] 比较。数值结果上Neural Body远远超过之前的方法。

在可视化结果上,Neural Body在视角合成和三维重建的结果也远远超出了之前的方法。

PIFuHD [7] 是很出名的三维人体重建的工作。他是在大量的ground truth 3d data上训练重建网络。需要注意的是,我们的网络不需要ground truth 3d data,只需要在目标视频上进行训练。对于复杂的人体姿态,PIFuHD的泛化能力有限。我们重建的结果更符合图片中观察到的人体姿态。

3.2 单目视频上的结果

输入一段人在摄像机前转一圈的视频,Neural Body就能恢复出3维人体模型。

3.2 Ablation study

论文在camera view和视频长度上做了ablation study。

  • 输入的camera view数量越多,视角合成的效果就越好。

  • 在视频上训练比在单帧上训练的效果要好,但在很长的视频上训练会导致模型效果下降。

四. 参考文献

[1] 4DREPLAY. 4dreplay.com/

[2] Orts-Escolano, Sergio, et al. Holoportation: Virtual 3d teleportation in real-time. In UIST, 2016.

[3] Mildenhall, Ben, et al. Nerf: Representing scenes as neural radiance fields for view synthesis. In ECCV, 2020.

[4] Lombardi, Stephen, et al. Neural volumes: Learning dynamic renderable volumes from images. In SIGGRAPH, 2019.

[5] Thies, Justus, et al. Deferred Neural Rendering: Image Synthesis using Neural Textures. In SIGGRAPH, 2019.

[6] Wu, Minye, et al. "Multi-View Neural Human Rendering." In CVPR, 2020.

[7] Saito, Shunsuke, et al. PIFuHD: Multi-Level Pixel-Aligned Implicit Function for High-Resolution 3D Human Digitization. In CVPR, 2020.

[8] Alldieck, Thiemo, et al. Video based reconstruction of 3d people models. In CVPR, 2018.

AI TIME欢迎AI领域学者投稿,期待大家剖析学科历史发展和前沿技术。针对热门话题,我们将邀请专家一起论道。同时,我们也长期招募优质的撰稿人,顶级的平台需要顶级的你,

请将简历等信息发至yun.he@aminer.cn!

微信联系:AITIME_HY

AI TIME是清华大学计算机系一群关注人工智能发展,并有思想情怀的青年学者们创办的圈子,旨在发扬科学思辨精神,邀请各界人士对人工智能理论、算法、场景、应用的本质问题进行探索,加强思想碰撞,打造一个知识分享的聚集地。

我知道你在看

点击 阅读原文 了解更多精彩

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值