0. 论文信息
标题:Scaling Mesh Generation via Compressive Tokenization
作者:Haohan Weng, Zibo Zhao, Biwen Lei, Xianghui Yang, Jian Liu, Zeqiang Lai, Zhuo Chen, Yuhong Liu, Jie Jiang, Chunchao Guo, Tong Zhang, Shenghua Gao, C. L. Philip Chen
机构:South China University of Technology、ShanghaiTech University、University of Hong Kong、Tencent Hunyuan
原文链接:https://arxiv.org/abs/2411.07025
代码链接:https://github.com/whaohan/bpt
官方主页:https://whaohan.github.io/bpt/
1. 导读
我们提出了一种压缩但有效的网格表示,分块和分片的标记化(BPT),便于生成超过8k面的网格。BPT通过采用分块索引和补丁聚合来压缩网格序列,与原始序列相比,它们的长度减少了大约75%。这一压缩里程碑释放了利用具有显著更多面的网格数据的潜力,从而增强细节丰富性并提高生成鲁棒性。借助BPT,我们在缩放网格数据上建立了基础网格生成模型训练,以支持对点云和图像的灵活控制。我们的模型展示了生成具有复杂细节和精确拓扑的网格的能力,实现了网格生成的SoTA性能,并达到了直接用于产品的水平。
2. 引言
网格作为三维几何表示的基础,广泛应用于视频游戏、电影制作和模拟等多种场景。尽管网格得到了广泛应用,但制作具有功能性拓扑结构的网格却需要投入大量的设计精力。这一劳动密集型过程成为了阻碍三维内容创作和沉浸式人机交互进步的瓶颈。近期的研究试图通过自回归Transformer来自动化网格雕刻过程。这些方法直接生成顶点和面,以维持高质量网格拓扑,在低多边形网格生成方面取得了令人瞩目的成果。
利用自回归Transformer对网格进行建模的基础是网格标记化,即将网格转换为一维序列。PolyGen和MeshXL通过将顶点坐标转换为排序后的三元组(每个三元组定义一组量化的三维坐标)来直接对网格进行标记化。它们使用联合或两个独立的自回归Transformer来学习这一维序列。MeshGPT及其变体则利用自编码器将网格转换为潜在序列。MeshAnythingv2和Edgerunner提出了改进的标记化方法,以进一步压缩原始网格序列。然而,这些方法仍将网格转换为相对较长的序列,限制了生成模型学习高多边形网格的能力。为了扩展网格生成的范围,需要一种更具压缩性的表示方法来扩大训练数据的范围。
推荐课程:
面向三维视觉的Linux嵌入式系统教程[理论+代码+实战]
。
在本文中,我们提出了一种既压缩又高效的网格表示方法,称为阻塞和补丁化标记化(Blocked and Patchified Tokenization,BPT)。BPT将笛卡尔坐标转换为块索引,这是首次在顶点级别尝试压缩网格标记。然后,我们选择连接最多面(即顶点度数最高)的顶点作为补丁中心。将中心顶点周围的面聚合为补丁,从而在面级别上压缩网格标记。我们的方法将原始网格序列的长度显著减少了约75%,实现了现有标记化方法中最先进的压缩率。借助BPT,我们的网格生成模型能够利用数百万个具有复杂细节的网格,从而显著提高其性能和鲁棒性。
BPT促进了广泛的三维应用。我们通过点云和图像上的条件网格生成证明了其有效性。我们的模型甚至使非专业用户也能生成达到产品级别的网格。其适用性涵盖了三维内容创作的多个实用领域,预示着三维生成新时代的到来。
3. 效果展示
根据从密集网格中采样的图像或点云生成网格。基于所提出的压缩记号化,我们的模型可以生成多达8k个面的网格。右下方的密集网格或图像表示条件。
使用BPT扩展网格生成的数据规模。(a)现有模型只能处理最多4000个面的网格,仍缺乏精细细节。借助BPT,我们的模型可以利用超过8000个面的网格,有效扩展了网格生成的训练范围。(b)我们在具有不同最大面数的网格上训练了相同的模型。随着网格面数的增加,网格生成的性能显著提高,凸显了高多边形训练数据的价值。网格生成性能通过输入点云和生成网格之间的Hausdorff距离来衡量(数值越低越好)。
4. 主要贡献
我们的贡献可以总结如下:
• 我们引入了阻塞和补丁化标记化(BPT),这是一种既压缩又有效的标记化方法,具有约75%的最先进压缩率。
• 借助BPT,我们研究了不同面配置下网格数据的扩展,发现纳入更多数据可以提高生成性能和鲁棒性。
• 我们构建了一个支持基于图像和点云的条件生成的网格基础模型,使用户能够创建达到产品级别的三维资产。
5. 方法
本节将结合图3和算法1探讨阻塞和补丁化标记化(BPT),这涉及块索引和补丁聚合。我们讨论原始网格标记化,详细介绍如何将顶点表示从笛卡尔坐标转换为块索引,介绍如何将附近的面直接聚合为补丁并对这些补丁进行建模。通过实现BPT,我们可以在有效保留网格拓扑的同时,实现约75%的最先进压缩率。
6. 实验结果
为了评估点云条件生成的能力,我们使用了大约500个由其他模型生成的密集网格进行测试。我们选择了MeshAnything和MeshAnythingV2作为基线。我们计算了从密集网格和生成网格中采样得到的点云之间的Hausdorff距离和Chamfer距离。定量比较结果如表2所示,表明我们的模型在Hausdorff距离和Chamfer距离上均达到了最先进的性能,并实现了显著提升。我们还对MeshAnything和MeshAnythingV2进行了定性比较,如图5所示。
受低效表示的限制,MeshAnything和MeshAnythingV2分别仅针对最大面数为800和1600的网格进行了训练。因此,这些模型在生成具有复杂细节的网格时表现不佳,并产生了更多不完整的网格,如图5中的定性比较所示。相比之下,采用我们提出的块化和贴片化标记化(BPT)方法,我们的模型能够利用具有更多面的网格,并学习具有关键局部性的网格序列,从而显著提高了生成性能。
很少有工作直接根据图像生成网格,且这些工作均未公开。为了证明所提出的BPT的有效性,我们从Edgerunner的网页上下载了其作品库,并使用我们的模型基于相同的图像生成网格。通过BPT,我们的模型在具有更多面的网格上进行了训练,因此能够生成具有更多细节的网格。如图6所示,与Edgerunner的作品相比,由我们的模型生成的网格在细节上更忠实地遵循了输入图像。
7. 总结 & 未来工作
在本文中,我们介绍了块化和贴片化标记化(BPT),这是一种对网格标记化的基本改进,可将序列长度减少约75%。这种压缩效率使得我们能够利用具有超过8000个面的网格,从而能够扩展训练数据并提升生成性能。通过利用BPT,我们构建了一个基于点云和图像的条件网格生成模型。
局限性和未来工作。当前的参数数量(5亿)仍然不足,我们将使用BPT进行额外的扩展实验。此外,我们可以探索其他有前景的序列建模架构,以更好地利用网格的归纳偏置。
对更多实验结果和文章细节感兴趣的读者,可以阅读一下论文原文~
本文仅做学术分享,如有侵权,请联系删文。
3D视觉交流群,成立啦!
目前我们已经建立了3D视觉方向多个社群,包括
2D计算机视觉
、
最前沿
、
工业3D视觉
、
SLAM
、
自动驾驶
、
三维重建
、
无人机
等方向,细分群包括:
工业3D视觉
:相机标定、立体匹配、三维点云、结构光、机械臂抓取、缺陷检测、6D位姿估计、相位偏折术、Halcon、摄影测量、阵列相机、光度立体视觉等。
SLAM
:视觉SLAM、激光SLAM、语义SLAM、滤波算法、多传感器融合、多传感器标定、动态SLAM、MOT SLAM、NeRF SLAM、机器人导航等。
自动驾驶:深度估计、Transformer、毫米波|激光雷达|视觉摄像头传感器、多传感器标定、多传感器融合、自动驾驶综合群等、3D目标检测、路径规划、轨迹预测、3D点云分割、模型部署、车道线检测、Occupancy、目标跟踪等。
三维重建
:3DGS、NeRF、多视图几何、OpenMVS、MVSNet、colmap、纹理贴图等
无人机
:四旋翼建模、无人机飞控等
2D计算机视觉
:图像分类/分割、目标/检测、医学影像、GAN、OCR、2D缺陷检测、遥感测绘、超分辨率、人脸检测、行为识别、模型量化剪枝、迁移学习、人体姿态估计等
最前沿
:具身智能、大模型、Mamba、扩散模型等
除了这些,还有
求职
、
硬件选型
、
视觉产品落地、产品、行业新闻
等交流群
添加小助理: cv3d001,备注:
研究方向+学校/公司+昵称
(如
3D点云+清华+小草莓
), 拉你入群。
▲长按扫码添加助理:cv3d001
3D视觉知识星球
「
3D视觉从入门到精通