论文名:Self-supervised Single-view 3D Reconstruction via Semantic Consistency
作者:Xueting Li, Sifei Liu, Kihwan Kim, Shalini De Mello, Varun Jampani, Ming-Hsuan Yang, and Jan Kautz
What
- 从 2D 图像 和 mask 中 预测 3D mesh shap, texture 和 camera pose的 工作。
- 不需要3D的标注 或者 特征点标注 或者 多视角的图像 或者 3D先验的模板
- 只需要 同一类物体的图像,有相同的part (比如鸟都有喙)。
How
- 用了 SCOPS 方法 做语义分割。
- 语义部件不变性(semantic part invariance) 。一个点的语义是不会改变的,即使形状发生改变 。 这和我们前一篇讲的 Location Consistency 差不多。
- 构建的 uv map是用 semantic segmentation 的结果。
- 这边 只有一个encoder 来编码image,有多个decoder 分别预测 shape,camera 和 texture。
- 同样的 shape decoder,只是预测bias。
- 同样的 texture decoder,预测的是 flow。
疑问
- 这边鸟的话,所有semantic uv map 都是一样的么? 看Fig3 对于这个 uv map 还是有点疑问。
- 从 single image 预测 semantic uv map,预测的时候肯定有空洞 怎么补上空洞。
- 作者提出一个论点: We demonstrate that this semantic part invariance allows us to build a category-level semantic UV map, namely the canonical semantic UV map, shared by all instances, which in turn allows us to assign semantic part labels to each point on the mesh.
- 所以所有鸟 用的是同一个 semantic uv map。而形状上有不同而已。可以用来矫正 camera pose。
- 实际上 由于noise 和 不可见的背面,倒是semantic map 不是特别一致,所以 训练的时候,用的是同一个batch里面的平均值。
- 这边为啥不用rgb 呢,因为rgb 可能导致 像Fig4 里面对应不上,比如翅膀对上嘴了。 所以这边用的是part segmentation 导出了 Eq2
- 另外 还有顶点位置?上的损失。Yp是采样的一些点,Vp是预测的part对应的顶点。希望预测到的part的顶点 和 Yp中的顶点距离小。 这边 的 V横线 也是平均的shape template (是Fig3 里面没有加bias 的 template)我感觉这就是 prototype,希望 prototype也学好的loss。
- 训练策略是 训一轮template 训练一轮 uvmap
- 最后还有个 2D->3D -> 2D的监督。注:这边没有用rgb作为输入,而是直接用了一个coordinate G,看他变形 能不能再变回来。有种cyclegan里identity loss的感觉。(虽然这个类比不太恰当) 还是很自然的,比rgb监督更好。