文章目录
1. 概要
题目: CvxNet:Learnable Convex Decomposition,CVPR2020
论文:https://arxiv.org/pdf/1909.05736.pdf
Code:https://github.com/tensorflow/graphics/tree/master/tensorflow_graphics/projects/cvxnet
Video:https://www.youtube.com/watch?v=Rgi63tT670w
项目:https://cvxnet.github.io/
一句话概述:提出了一种基于原始分解的结合表示方法
背景知识:
凸多面体,也称欧拉多面体。是一种简单多面体,即整个多面体都在其任何一个面所在平面同侧的多面体。凸多面体的任何一个面延展都不会通过它的内部,即把凸多面体的任何一个面伸展成平面,它的所有其他面都在这个面同侧。
凸对象(Convex Object):
- 显示表达:通过计算凸包的顶点而派生的网络;结果直接,但训练较为复杂。
- 隐式表达:1. 半空间约束或支持集合的集合;2. 适合于神经网络的训练;3. 是从徐耀表示的几何拓扑中抽象出来。训练是一个简单的分类问题,但是表面就需要通过移动立方体来提取。
高维数据表达:
体素:
- 高维表示,用于判别模型和生成模型
- 缺点:内存要求高,分辨率<643;
- 改进:利用体素稀疏性的八叉树,可以减少内存消耗,但更为复杂
表面:
- 多边形网格,用于图卷积,网络的输出
- 缺点:可能会产生自相交的网络
点云:
- 高维表示,由深度传感器得到作为输入或中间结果
- 缺点:想要生成3D网格会较为复杂
图元:
- 通过一组体积图元来近似输入形状
- 体素可以视为图元为单位立方体的情况
- 其他方法:构造实体几何
2 Motivation
基于计算机图形学基础,任何固体对象可以分解为凸多面体的集合。也可以理解成为图元构成最终图的过程。
3 思想
传统显示表达,结果非常直接,但是训练较为复杂;
而隐式训练是一个简单分类问题,但是表面需要通过移动立方体来提取。
而所提出的Convex,是基于凸组合的混合表示,表示低维凸面族,通过自动编码过程自动派生。可应用在自动凸分解、图像到3D的重建,以及零件的形状检索当中。
4 算法
4.1 可微凸指示器(Differentiable convex indicator)
- 在超平面表示部分, H h ( x ) H_h(x)