《SAM 3D: 3Dfy Anything in Images》学习总结

SAM 3D的训练包含3个阶段。

  1. Pretraining,让模型学会从单一、孤立、纯合成物体的渲染图,重建出准确的 3D 几何形状(shape)+ 高质量纹理(texture)。这是典型的无条件单图到3D生成(unconditional image-to-3D),不加任何 mask、点、框提示。
  2. Mid-Training,把 Pretraining 阶段那个"只会在纯白背景里生成孤立合成物体"的模型,升级成能处理真实世界复杂照片里物体的基础能力。这是从"玩具数据"迈向真实世界的关键一步。
  3. Post-Training,该阶段有两个目的。首先是关闭domain gap,即,消除 Mid-training 阶段(RP-3DO 等半合成数据)与自然真实图像之间的分布差距,比如光照不均、噪声、真实遮挡等。然后是让 3D 输出形状质量更符合人类审美和实用需求,比如更光滑的表面、更逼真的纹理、避免畸形等。这是从"技术正确"转向"用户友好"的关键转折,类似于 GPT 系列的 RLHF,但这里更偏向 SFT + 人类反馈循环。

预训练,Pretraining

论文中,他们直接沿用了2024 - 2025年最成功的几篇单图到3D论文的技术路线,例如,

DreamFusion / Magic3D 类的 score distillation sampling(SDS)

LRM/Instant3D 类的 triplane+transformer 大模型架构

Wonder3D / SyncDreamer 类的多视角一致性监督

该阶段的训练数据是一个(I,S,T)(I,S,T)(I,S,T)三元组,分别代表图像,几何,纹理。主要来源Objaverse-XL的270万个高质量带纹理3D模型,这是目前公开最大的带纹理3D资产库。额外他们还内部采购3D模型。

随后他们对每个3D模型做了24个随机视角的高清渲染,纯白背景,物体居中,相机参数(外参,内参)完全已知,他们将这个数据命名为Iso-3DO数据集(isolated 3D Objects)。

总共训练了2.5万亿个token,使用的架构是LRM类似的transformer + triplane架构,2.5万亿tokens越等于训练了2.5亿张图像。

中训练,Mid-training

该阶段是为了让模型能具备一项最重要的能力,Mask-following(跟着掩码走),输入不再是整张干净图像,而是带真实背景的图 + 二值mask(来自SAM2产生的或人工标注) ,模型只重建mask里面的物体。

数据集包含两个子集,其中一个子集用来遮挡,另一个子集用来替换,大概的意思是,第一个子集是为了模型能够完善子集的Occlusion Robustness ,使得模型即使仅看一部分,也能猜出剩余的3D形状,而替换的意思不用过多解释,就是需要被预测的三维模型了。

需要知道的是用来遮挡的,和替换的,本质上都是三维模型,论文中提到了一种"Render-Paste"的方法先将这些三维模型渲染出来,在通过alpha抠图的方式将它们贴到真实背景上。这样保留了真实光照和背景。

Note:这部分有点拗口

此外模型必须能够预测物体在相机坐标系里的平移(translation)和缩放(scale)相当于让模型能够判断物体离相机多远,多大,为后面多物体场景的布局打下基础。以上数据集称为RP-3DO(Render-Paste 3D Objects)

在这个阶段模型又训练了2.7万亿个token,两个阶段加起来总计为5.2万亿个,有些学者觉得这也是为什么SAM3D模型仅有7B左右,但能力超过很多图生3D的模型------数据量和质量都很高。

到这个阶段模型已经掌握了最终推理时的全部输入输出模态。

后训练,Post-training

Post-training的两大核心目标

  1. 关闭所谓的domain gap,即,消除Mid-training阶段与自然真实图像之间的分布差距(比如光照不均、噪声,真实遮挡等)。
  2. 对齐人类偏好(align with human preference),让3D输出形状质量更符合人类审美和使用需求(比如更光滑的表面、更逼真的纹理、避免畸形)。
    这是从"技术正确"转向"用户友好"的关键转折,类似于GPT系列的RLHF,这里更偏向SFT + 人类反馈循环。

论文提到,Post-training使用的是多阶段微调(multi-stage post-training),并且这几个阶段是多次循环的。

Collection Step,样本制作

论文提到,3D数据标注的最大痛点是普通人不会画mesh,但会选,所以他们让标注员从候选3D模型中选出最像的那个。但是由于第一次迭代的模型所生成的东西很差,能过质量线的很少(code start problem,冷启动难题),所以作者使用别的一些模型来辅助生成,或用3D检索从 Objaverse-XL 中找最像的出来,也就是说,第一轮的数据基本不依赖自己的模型。但是随着训练的不断进行,由SAM3D生成的候选数据才逐渐占据主导。

收集的完整数据包含5项:S(几何),T(纹理),R(旋转),t(平移),s(缩放),数据规模:100万张真实自然图像 + 314万无纹理mesh + 10万带纹理mesh

样本制作可分为三步

Step1:choosing target objects

即,选图+mask,(I,M)(I,M)(I,M),来源:SA-1B、CO3Dv2、OpenImages、互联网抓取等。用 SAM 2 自动出 mask + 人工验证/补选,确保类别均衡(用了 3D 专用 taxonomy,长尾类别会特意补)。

Step2:object model ranking and selection

即,选3D,(S,T)(S,T)(S,T),分别代表shape(mesh)和texture。到这一步,如果标注过程有界面的话,可能会长这样,左边是原图 + mask,右边是16个候选的3D模型,标注人员根据左边,选出右边最像的,打分,然后旋转角度让它更对齐。坏的候选直接变负样本,好的变GT。

Step2.5:hard example triage(artists)

即,如果存在标注人员也选不出对应3D模型的目标物体时,就需要3D建模人员手动建模或大幅修复。这部分数据称为Art-3DO(大概几万条),一般是一些长条物体,或者在图像上角度较为极端,不好识别的,还有一些具有透明/反光材质的。

Step3:aligning objects to 2.5D scene

将已选择的3D + 原图 + 点云(用Dust3r,MASt3R或Depth Anything V2估出来),让标注员在3D界面里拖拽、旋转、缩放这个mesh,知道和点云、和其他物体完美对齐,得到(R,t,s)(R,t,s)(R,t,s),

论文中还提到,作者把整个数据pipeline抽象成一个数学模型,简化理解,这个数学模型接收 (I,M)(I,M)(I,M) 作为输入,得到3类数据

  1. D+D^+D+:高质量正样本,(I,M,S,T,R,t,s)(I,M,S,T,R,t,s)(I,M,S,T,R,t,s)。
  2. rrr:质量分数。
  3. D−D^-D−:负样本,(I,M,S′,T′,R′,t′,s′)(I,M,S',T',R',t',s')(I,M,S′,T′,R′,t′,s′),用来训练 DPO | KTO | PPO。

Model Improvement Step,训练

Post-training的训练是整体循环的,每一轮循环包含3个阶段

阶段一:SFT

使用 Stage3 对齐的 (I,M,S,T,R,t,s)(I,M,S,T,R,t,s)(I,M,S,T,R,t,s) 进行监控 SFT,采用常规 Regression,L1/Chamfer/CD + flow match,这一步可以将 domain gap 变得很小。

阶段二:DPO(直接偏好优化)

直接拿Stage 2产生的样本训练DPO,能够去除大量"艺术家也没注意到的细微瑕疵"。

阶段三:蒸馏加速(推理速度的提升)

这部分不是很理解,后面再补充

相关推荐
子午44 分钟前
【鸟类识别系统】Python+TensorFlow+Django+人工智能+深度学习+卷积神经网络算法
人工智能·python·深度学习
qq_160144871 小时前
AI爱好者入门:2025年CAIE报考指南与学习路径解析
人工智能·学习
WebGIS开发1 小时前
东北黑土地保护|智慧城市地图可视化智能监测、管理系统
人工智能·gis·智慧城市·gis开发·webgis·地理信息科学
某林2121 小时前
在slam建图中为何坐标base_link,laser,imu_link是始终在一起的,但是odom 会与这位三个坐标在运行中产生偏差
人工智能·算法
Keep__Fighting1 小时前
【机器学习:逻辑回归】
人工智能·python·算法·机器学习·逻辑回归·scikit-learn·matplotlib
23遇见1 小时前
AI情绪识别技术:价值与局限并存的智能革新
人工智能
科技与数码1 小时前
国产MATLAB替代软件的关键能力与生态发展现状
大数据·人工智能·matlab
数据的世界011 小时前
重构智慧书-第6条:在趋近圆满中践行成长
人工智能
阿杰学AI1 小时前
AI核心知识29——大语言模型之Multimodality(简洁且通俗易懂版)
人工智能·ai·语言模型·自然语言处理·aigc·多模态·多模态大模型