Find3D是一款由加州理工学院推出的先进3D部件分割模型,能够根据任意文本查询对对象的任意部分进行分割。其强大的数据引擎自动从互联网收集3D资产生成训练数据,并利用对比训练方法构建出可扩展的3D模型。Find3D在多个数据集上表现卓越,平均交并比(mIoU)性能较次佳方法提升三倍,能够处理来自iPhone照片和AI生成图像的复杂3D构建。
Find3D是什么
Find3D是加州理工学院开发的一款技术先进的3D部件分割模型,能够实现基于文本的任意对象分割。通过强大的数据引擎,该模型可以自动从网络上获取3D资产并生成训练数据,无需人为干预。Find3D在Objaverse-General、ShapeNet-Part和PartNet-E等多个数据集上展现出色的性能,显著提升了模型的交并比。
Find3D的主要功能
- 开放世界3D部分分割:用户只需输入文本查询,即可识别和分割任意物体的任何部分,打破了预定义部分集的限制。
- 无需人工注释:依靠数据引擎自动生成训练数据,完全消除了人工注释的需求。
- 高性能与泛化能力:在多个数据集上表现卓越,交并比(mIoU)比次佳方法高出三倍。
- 快速推理:相较于现有基线,推理速度提升6至300倍,大幅提高效率。
- 鲁棒性:在多样的物体姿态和查询条件下,依然保持稳定的分割效果。
- 查询灵活性:支持各种类型的文本查询,涵盖不同粒度和描述风格的部分查询。
Find3D的技术原理
- 数据引擎:
- 使用2D基础模型(如SAM和Gemini)来自动注释3D对象。
- 将3D资产渲染为多个视图,每个视图均传递至SAM进行分割。
- 对于SAM返回的每个掩码,查询Gemini以获取相应部分名称,从而形成(掩码,文本)对。
- 将部分名称嵌入到视觉和语言基础模型(如SigLIP)的潜在嵌入空间中。
- 基于投影几何将掩码反投影到3D点云中,创建(点,文本嵌入)对。
- 模型训练:
- 采用基于Transformer的点云模型,将点云视作序列并执行块注意力机制。
- 模型返回的点特征与文本嵌入的余弦相似度相结合,支持任意自由形式的文本查询。
- 通过对比学习目标处理标签的多义性和部分可见性问题,支持在数据引擎生成的数据上进行可扩展训练。
- 对比学习目标:
- 解决每个点可能具有多个标签的问题,以及由于每个掩码仅覆盖部分视图而导致的未标记点问题。
- 基于对比学习目标,使模型能够学习到鲁棒的特征表示,从而在开放世界中实现精确的部分分割。
Find3D的项目地址
- 项目官网:ziqi-ma.github.io/find3dsite
- GitHub仓库:https://github.com/ziqi-ma/Find3D
- arXiv技术论文:https://arxiv.org/pdf/2411.13550v1
- 在线体验Demo:https://huggingface.co/spaces/ziqima/Find3D
Find3D的应用场景
- 机器人视觉与操作:在机器人技术中,帮助机器人识别和定位物体的特定部分,进行精准的抓取和操作。
- 虚拟现实(VR)和增强现实(AR):在VR/AR应用中,提升用户与虚拟环境的互动体验,提供更深层次的虚拟物体理解。
- 计算机辅助设计(CAD):在CAD软件中,帮助设计师快速识别和编辑3D模型的特定部分,大幅提升设计效率。
- 游戏开发:在游戏开发中,创造更复杂的3D物体互动,例如角色装备的更换或物体破坏效果。
- 建筑和工程:在建筑和工程领域,辅助分析和理解复杂的3D结构,如建筑模型或机械部件。
常见问题
- Find3D支持哪些类型的文本查询?:Find3D支持多种类型的文本查询,包括不同粒度和描述风格的部分查询。
- 如何获取Find3D的技术文档?:您可以通过项目官网或GitHub仓库获取详细的技术文档和使用说明。
- Find3D的推理速度有多快?:Find3D的推理速度比现有基线快6到300倍,显著提高了效率。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
相关文章
暂无评论...