ICCV 2021 | 字节跳动利用单幅图片做三维重建!将NeRF、MPI结合,提出MINE新工作
来自字节跳动视觉技术团队的研究者将 NeRF 和 Multiplane Image(MPI)结合,提出了一种新的三维空间表达方式 MINE。该方法通过对单张图片做三维重建,实现新视角合成和深度估算。
论文地址:https://arxiv.org/pdf/2103.14910.pdf
项目地址:https://github.com/vincentfung13/MINE
一个模型只能表达一个场景,且优化一个场景耗时久;
per-pixel 渲染较为低效;
泛化能力较差,一个场景需要较多的照片才能训练好。
Encoder 是一个全卷积网络,输入为单个 RGB 图片,输出为 feature maps;
Decoder 也是一个全卷积网络,输入为 encoder 输出的 feature map,以及任意深度值(repeat + concat),输出该深度下的 RGB-sigma 图片;
最终的三维表达由多个平面组成,也就是说在一次完整的 forward 中,encoder 需要 inference 一次,而 decoder 需要 inference N 次获得个 N 平面。
利用 homography wrapping 建立像素点间的 correspondence。可以想象,从 target 相机射出一条光线,这条光线与 target 图片的一个像素点相交,然后,研究者延长这条射线,让它与 source 相机视锥的各个平面相交。相交点的 RGB-sigma 值可以通过 bilinear sampling 获得;
利用 volume rendering 将光线上的点渲染到目标图片像素点上,获得该像素点的 RGB 值与深度。
与 NeRF 相比,MINE 能够泛化到训练集没有出现过的场景;
与 NeRF 的逐点渲染相比,MINE 的渲染非常高效;
与 MPI 相比,MINE 的深度是连续的,能稠密地表示相机的视锥;
MPI 通过 alpha 合成(alpha compositing)进行渲染,但该方法与射线上点之间的距离无关,而 MINE 利用 volume rendering 解决了这个限制。
由于输入是单张图片,MINE 无法表达相机视锥以外的三维空间;
由于 MINE 的输入里没有观察角度,所以其无法对一些复杂的 view-dependent 效果(如光盘上的彩虹等)进行建模。