"); //-->
作者丨叫我佳老师@知乎(已授权)
来源丨https://www.zhihu.com/question/517340666/answer/2374684918编辑丨极市平台
项目链接:https://manycore-research.github.io/faceformer/
论文链接:https://arxiv.org/abs/2203.04229
代码链接:https://github.com/manycore-research/faceformer
肝完了ECCV 2022,来介绍一下我们刚被CVPR 2022接受的基于单张线框图的三维重建论文。
太长不看(TL;DR)我们提出了首个基于数据驱动的面检测算法;我们基于面检测结果提出了一个简易的三维重建解决方案。
前言面检测是计算机视觉/图形学中的一个基本问题。传统方法基于复杂的几何搜索与推断,很不直观。然而,人眼可以迅速地从图片中找出此类几何元素,因此我们猜想:人脑的判定方式是基于历史观测数据。因此提出通过数据驱动的方法,训练神经网络在进行此类检测。
基于自回归模型的面检测面检测就是从输入的单张线框图(矢量图)中找到真实三维面所对应边的集合,如下图所示。
面检测边界表达(B-Rep)是CAD中标准模型表达的方式,我们的方法借鉴了其中共边(co-edge)这一个属性:
每个边(edge)对应了两个共边(co-edge),且两个共边方向相反;
每条边(edge)严格被两个面(face)共享,这条边的两个共边分别对应了这两个面;
共边(co-edge)方向定义:沿环的方向看,(假设面的方向朝上)面总在边的左侧。
借助共边, 面就可以方便被表达为共边的环 (co-edge loops) , 如上图所示, 三个标记的面的共 边的集合分贝是 和 。
随后,我们设计了一种基于Transformer的自回归模型,从每条共边出发,网络自动的寻找其所在的面。如下图所示,网络每次基于当前预测的共边集合,输出下一条边,当预测结束后,预测出对应面的类型。
Faceformer示意图这样做的好处是,我们的模型可以在共边这个维度上做到并行,加速网络的推断。我们惊讶的方法,基于自回归的方法能够达到93.8%的准确率和95.9%的精度(如果训练更久,达到99%也不在话下)。
三维重建随后,我们基于面检测的结果设计了一个三维重建算法。大致的思想是利用面检测中得到的平面,三维重建提供了一组共面的约束。但是,只依赖面检测的结果是不够的,我们假设物体有三个相互垂直的主方向(曼哈顿假设),进一步约束面的朝向(具体算法参见论文吧,在此就不赘述了)。
再来看看我们三维重建的结果吧,与单纯基于图像的三维重建算法相比,我们的方法不仅重建地更好,而且还能保证拓扑的正确性。比较amazing的是最后一行的结果,相信小伙伴们单单通过输入图片也很难想象出这个三维物体的形状吧。
三位重建结果对比*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。