论文阅读:像素对齐的隐式函数——PIFu
1 PIFu: Pixel-Aligned Implicit Function for High-Resolution Clothed Human Digitization
1.1 像素对齐的隐式函数 Pixle-Aligned Implicit Function
像素对齐的隐式函数 PIFu 由两个神经网络组合而成:一个全卷积图像编码器
其中
PIFu 能奏效的关键在于输入的像素对齐的图像特征向量
1.2 曲面重建 Surface Reconstruction
由于人体的拓扑结构较为复杂,很难找到一个可以用公式表达的隐式函数,当只有一些离散的观测点,比如某个点在人体内部,另外一个点在人体外部,此时在PIFu中使用如下的方式来表达:
可以认为人体曲面即是上面函数的 0.5 等值面, 当
于是,在处理每一个训练样本(2D 图像,3D 模型)时,2D 图像会输入到由全卷积网格组成的图像编码器
这里
1.3 纹理生成 Texture Inference
只需要将前面用于曲面重建的 PIFu 做一些改变,将其重新定义为一个 RGB 颜色的向量函数,便能够直接预测任意拓扑结构的 3D 几何表面的颜色。但为了能有更好的效果,还需要一些额外的改动。首先即是,为了专注于进行颜色的预测,可以将前面曲面重建中的图像特征
这里
1.4 采样策略
为了避免欠拟合和过拟合的出现,作者使用了一种基于曲面的组合采样法。首先,在几何表面随机采样 3D 点,并增加沿着
1.5 总结
① 测试时,使用 PIFu 重建对输入图像的视角和相机参数有一定的限制,如果测试图像的视角和相机参数与训练时使用的图像差距较大,重建出的效果不太好。
② 是否可以利用在 NeRF 中使用的位置信息编码,在训练 PIFu 时,以映射到高维的位置编码作为输入,让 PIFu 网格学习到更多信息。
③ 在训练时,可以增加训练数据的多样性,选取不同视角的图像进行训练。
④ 类似在 PIFuHD 中那样,在 PIFu 的输入中,加入人体的正反面法线图,让提取人体的正反面法线图的任务由一个单独的网络完成,减小 PIFu 网格的复杂程度,让 PIFu 更专注于重建人体结构。
2 PIFuHD: Multi-Level Pixel-Aligned Implicit Function for High-Resolution 3D Human Digitization
在 PIFu 的基础上,PIFuHD 实现了精度更高的重建模型,能够利用输入的更高分辨率的图片重建出拥有更多细节的人体结构。
其主要实现思路类似于 NeRF 中的 (coarse to fine)策略,将原来的 PIFu 流程,分成粗、细两个预测阶段。在粗预测阶段,输入是低分辨率的图像,主要作用是预测出模型的大致形状;而细预测阶段,输入则是高分辨率图像以及粗预测阶段提取的特征,最后即能得到较高精度的预测。
2.1 从正面推测反面 Front-to-Back Inference
之前使用 PIFu 直接进行人体模型重建时,PIFu 网格还兼具了对人体背部模型的推断的任务(输入是单目图像,需要预测被遮挡区域),这一定程度上增加了 PIFu 网格的复杂度,也影响了 PIFu 网格的性能。
所以,在 PIFuHD 中,作者提出,可以将这部分预测的任务,单独使用一个感知机完成,再将该预测结果作为输入,传入到后面的用于重建的 PIFu 网格。本文中,直接使用的 pix2pixHD ,从 RGB 彩色图预测出该图的正面和反面的法线图,分别用
2.2 粗预测阶段 a coarse level
在粗预测阶段,首先对输入的
其中,
2.3 细预测阶段 a fine level
细预测阶段与粗预测阶段相仿:
与粗预测阶段不同的是,这里使用的输入图像是高分辨率的,因此对应的正反法线面
2.4 损失函数和采样 Loss Function and Surface Sampling
不同于 PIFu 中使用的损失函数,这里作者使用了扩展的 BCE 损失函数:
其中,
参考:
[1] Shunsuke等.”PIFu: Pixel-Aligned Implicit Function for High-Resolution Clothed Human Digitization”,(2019).
[2] Shunsuke等.”PIFuHD: Multi-Level Pixel-Aligned Implicit Function for High-Resolution 3D Human Digitization”,(2020).