0%

<论文阅读>(四)Canonical Surface Mapping via Geometric Cycle Consistency

<论文阅读>Canonical Surface Mapping via Geometric Cycle Consistency

论文链接

Github链接

Contribution

  • 利用三维Template做为中介,弱化了实现稠密的,准确的多张图片对其所需的监督条件。
  • 已有的图片到图片,图片到三维模型的映射关系的形成工作,不外乎依赖于人工手动标记对应点或者按照某些形变规则,将形变施加于图片A获得图片B,从而获得了A,B之间的对应关系。这些方法对于光照,角度等变量的鲁棒性较弱。

Method

  • Preliminaries

作者利用两个参数将三维template平面化,u(u,v) 其中u(0,1)v(0,1) 并且定义ϕ(u)为恢复三维(x,y,z)的操作。
作者定义Cfθ(I) 其中fθ(I)表示网络参数,作者将网络的预测行为抽象定义为C

  • Geometric Cycle Consistency Loss

Lcyc=pIf||pp||22;p=π(ϕ(C[p]))

上面这个就是作者提出的一致性Loss,很好理解,就是像素p先经过网络映射在三维template上,接着投影回原图,两者之间的距离要尽可能小

  • Incorporating Visibility Constraints

由于相机视角的原因,任何物体都会存在一个自遮挡的问题,而这个问题在预测图片稠密映射时就会产生一定的干扰。比方说,从正面看过去,一只鸟类的喙很有可能与其尾巴处于一条线上,所以当投影至二维像平面式,尾巴上某点就会被喙给遮挡。在这种情况下,如果映射关系预测网络将图片上的喙映射在三维template的尾巴上,最后投影回像平面计算Lcyc的时候,依旧Loss会很小。所以作者就提出了:

Lvis=pIfmax(0,zpDπ[p])

其中Dπ[p]是三维template在对应相机参数下的深度图。

  • Mask Re-projection Loss & Multi-Hypothesis Pose Prediction

作者为了彻底摆脱对基准相机参数的需求,又新增了一个网络gθ 这个网络是用来预测相机,并且为了避免局部最小解(local minima),作者利用预测多个相机参数来达到这个目的。最后,作者使用一个约束来指导相机参数π的预测

Lmask=||frender(S,π)If||2

其中frender是在预测相机参数下,三维template投影至二维的Mask。 正如上面提到,作者会一次性预测多个相机参数,所以有(πi,ci)gθ(I)i=1..8,其中ci表示每个预测结果的概率是多少 。

最后,总的约束函数为:
Ltot=Ldiv(gθ(I))+i=1Ncci(Lcyci+Lvisi+Lmaski)

网络结构如图所示,对于2D-3D的映射关系预测,作者是利用一个U-Net结构(红色标注),输出为B4HW的特征图,其中[:,:3,:,:]表示的是预测的三维坐标。[:,3,:,:]表示的是预测的maskH,W分布代表输入图像的长和宽。gθ表示相机参数预测网络,具体上,作者首先用ResNet18提取图片特征,接着送入FC层预测相关相机参数。作者在相机参数的预测网络上,有很多设定还是十分有趣的,有兴趣可以找来看下。

  • 大致映射

之所以论文里提到approximate这个词呢,是因为,从代码上来看,fθ的输出$BHW*4$中关于2D pixel to 3D vertex的映射并不一定是在template mesh上,对于网络输出的一对UV坐标(u,v),作者首先是找到离这对坐标最近的面片是哪一个,接着计算该点关于这个面片的重心坐标(barycentric coordinate),最后根据重心坐标和面片三个顶点的位置坐标,得到最终的3D坐标,同时也确保了这个坐标在template mesh上。可以想象一个四面体(A-BCD),网络预测的3D坐标可能是A点,那么作者就是找到A点在BCD上的对应点。

Experiments


咋一看结果挺好,但是不知道作者为什么没有把CMR带基准相机参数的评测结果放出来,从消融实验的结果来看,在不利用预测相机参数的情况下,CSM结果并没有比不使用预测相机参数的CMR好太多,甚至在cars类别上的评分还低些