SAM 3D:3Dfy anything in Images
原本看这篇论文以为是一个比之前更接近真实世界的3d生成新任务,还想着水他一篇,但是看了之后发现数据集不公开,做的话也没那么多资源,但是meta的工作,所以主要从这里边学习大厂大规模研究的工程和技术细节:数据pipline怎么做,训练策略以及实验评测设计。 这是看完之后的Ganko,纯大厂风格的力大砖飞工作,鉴定完毕,又浪费一天,tmd。(没有看不起的意思,我觉得我的小作坊编故事风格的工作还不如这种,这种至少有用) 论文想解决的问题 这篇论文要解决的是三个层层递进的问题,一个是旧3d重建任务针对单个物体,但是真实世界中的物体通常有遮挡,远距离等各种影响。这篇论文要解决的是一整个真实场景的3d重建,在重建场景中每个物体的同时预测物体的具体位姿以重建整个场景。因此就会引出第二个问题,3d模型数据不像自然2d图像和语言数据,自然界存在很多,合成数据有sim2real的问题要解决。然后就是标注问题,分类任务普通人就能标注,极低成本获得大量数据,但是3d建模需要专业技术。 解决思路 三个问题是递进的,解决了标注和数据问题,设计迭代模型反而简单。所以先从标注成本入手,普通人不能进行3d建模,但是能区分3d建模质量的高低(Human in loop - HIL),设计了MITL pipline,让普通人从几个候选中挑选并且对齐位姿(怎么获得候选个问题,就是冷启动问题,核心方法会写)。用这个pipline收集大规模的数据,然后针对真实世界的复杂性设计了方法和仿LLM的训练策略,(合成预训练-半合成中期训练-真实数据后训练)。 核心方法 网络结构 每个部分的具体实现: Encoder:Encoder全都使用DINOv2,得到4组条件token,一组是裁剪物体:通过掩码M以及对应的裁剪二值Mask对裁剪的图像I进行编码,提供聚焦的高分辨率的物体视图。另一组是全图I以及全图二值掩码,提供全局上下文线索。点云Encoder可选可不选,可以选用硬件采集也可以用其他深度估计方法来得到。 Geometry Model:论文的问题定义中把这个任务定义成了一个条件分布估计 $q(S, T, R, t, s|I, M )$,在具体的实现中又把整个任务拆成了两个条件分布,几何模型负责 $p(O,R,t,s∣I,M)$,回答物体在什么地方,大概长什么样子。(O是粗形状,R是6d pose,t是物体在相机系中的3维位置,s是在三个轴上的缩放)。输入图像和掩码经过编码后,送入一个 12 亿参数的流匹配 Transformer(flow transformer),采用 Mixture-of-Transformers (MoT) 架构——一种多模态 Transformer 变体,通过精心设计的 attention mask(Fig. 2 右图所示)让不同模态(图像、掩码、形状、位姿)之间既共享信息又保持各自的处理流(two-stream approach)。MoT 的特点是稀疏高效:不同模态有各自的 Transformer 层,只在多模态自注意力层做信息交互。(本质双流加交叉注意力) Texture & Refinement Model:这部分负责 $p(S,T∣I,M,O)$,从粗形状 O 中只保留"被占据"的体素(active voxels),跳过空区域,一个 6 亿参数的稀疏潜流 Transformer(sparse latent flow transformer)在这些活跃体素上做两件事——把粗糙的几何细节补全(比如把 643643 的粗体素细化成更高分辨率的形状 S),同时合成物体的纹理 T。 3D Decoders:得到Texture & Refinement Model的隐空间的特征表示之后,使用两个独立的解码器解码,一个mesh解码器用于传统建模行业,另一个Gaussian解码器用于实时渲染和新视角合成,两个解码器共享一个隐编码空间。 训练 ...