目录
一、LLaVA-3D
1、概述
2、方法
3、训练过程
4、实验
二、Video-3D LLM
1、概述
2、方法
3、训练过程
4、实验
三、SPAR
1、概述
2、方法
4、实验
四、VG-LLM
1、概述
2、方法
3、方法
4、实验
一、LLaVA-3D
1、概述
空间关系不足:传统LMMs(如LLaVA)专注于2D图像/视频理解,缺乏对3D空间关系(深度、距离、物体相对位置)的感知能力。
数据与模型断层:3D点云数据稀缺且质量低,难以大规模训练。点云编码器性能弱于成熟的2D CLIP模型,导致特征表达能力不足。
传统3D LMMs需要对3D实例分割提取物体特征,流程冗长。点云特征与2D视觉特征表示空间不兼容。
所以LLaVA-3D不需要点云信息,直接利用多视图信息,并继承2D LMM的语义先验(多视图输入LLaVA-Video)
2、方法
架构
首先使用预训练的LLaVA-Video-7B作为基础模型,将多视图图像作为视频帧序列输入保留多视图图像处理能力,延续CLIP-ViT的视觉编码器,来提取2D patch的特征(2D patch tokens)。
另外利用深度图信息,相机内外参,通过深度反投影到像素3D世界坐标中,并对每一个patch都计算平均3D坐标,并通过两层MLP将坐标编码为特征向量(3D patch tokens)
如果用户的问题中存在坐标信息时(比如:[1.2,0.8,0.9]位置的物体有什么作用),那么在LLM中不仅要输入2D和3D特征信息,同时要输入一个特定token,相当于把坐标信息从文字中提前解析出来,丢到LLM中。LLM完全依赖LLaVA-Video架构。
3D边界框生成(解码):并不是采用直接通过LLM输出坐标信息,而是对tokens进行了解码,利用Grounding Decoder,回归物体中心坐标(x,y,z) + 尺寸(w,h,d) + 旋转角(ψ,θ,φ)。具体来说,首先输入3D patch features(应该是2D+3D的features信息,输入到LLM的那部分,并进行了采样),之后通过3D knn cross attn.之后再输入LLM输出中的location tokens,进行自注意力机制,最后回归box 参数。
3D patch pooling
针对于多视图或者视频序列过长时,可能会超过大语言模型能够接受的范围,所以要对输入的patch进行压缩。LLaVA-3D提出两个方法,体素池化和最远点采样。
体素池化:可以理解为,将图像降采样,对于同一个体素内的patch特征取平均,并只保留该平均特征。
最远点采样:从大规模点集中选取有代表性的子集,比如第一轮先初始一个点到采样点集合S中,之后计算所有点到S的最小距离,选择距离最远的点加入S,反复迭代,直到满足所需的采样点数量。
3、训练过程
数据
训练过程
先对LLaVA-3D的2D和3D模块同时训练2D部分输入LLaVA-Video的数据,3D部分输入上图的LLaVA-3D-Instruct-86K。
冻结其他模块,单独微调Grounding decoder。
4、实验
LLaVA-3D可以实现多模态3D问答(坐标空间推理,场景关系推理),3D密集描述生成,3D视觉定位,并同时兼具视频视觉理解能力。
对于3DQA问题,关注基础3D空间理解ScanQA,SQA3D,MMScanQA是几何-语言对齐的,比如某一坐标下物体的材质是怎样的。OpenEQA是具身智能真实场景的推理。
3D视觉定位中对比了3D-LLM,Grounded 3D-LLM。
3D密集描述上,采用Scan2Cap和MMScan的描述,后者应该是带有定位的QA。
同样对于LLaVA-Video原本的能力,没有下降(MVBench,VideoMME)。
二、Video-3D LLM
1、概述
对比LLaVA-3D,其实也是视频帧中获得空间信息。而且点云信息和体素信息的标注成本过高,不容易实现。
LLaVA-3D是复用预训练的2D encoder,避免2D到3D转换困难。Video-3D LLM是直接利用RGB视频,不在考虑2D的问题,直接全面采用VideoLLM。在计算效率上,LLaVA-3D采用池化策略,而Video-3D LLM采用最大覆盖采样,通过贪婪算法,加速推理时间。同样的两者均实现视觉定位问题,LLaVA-3D则引入一个特定的3D感知解码器,而Video-3D LLM则直接规定一个分类问题,减少架构的繁琐性。
下图为传统3D方法的操作,点云标注困难,2D与3D难以对齐。新方法下直接利用视频并在视频中标注坐标信息来训练LLM。
2、方法
架构
输入:从RGB-D扫描的3D场景中采样帧序列,通过深度图反投影得到全局坐标
。
视频帧提取特征:对每一帧通过ViT,先进行patchify之后得到
个图像并提取特征
。之后对每一个图像块
内对应的3D坐标取平均,得到一个块级的3D坐标。
3D位置编码:利用刚才得到的3D坐标进行正弦编码。
对于Video LLM同样采用LLaVa-Video 7B架构(利用Qwen2.5训练的,这与LLaVA-3D相同)
解码部分与LLaVA-3D区别非常大,针对于描述问题和定位问题采用了完全不同的结构来计算损失。首先对于描述问题,采用传统的文本生成问题计算交叉熵损失,对于定位问题,只考虑基于图片和深度信息得到的与LLM输出的<ground>tokens部分隐藏层特征
之间的InfoNCE对比损失。
可以理解为图片经过2D encoder输出得到
与3D位置编码
的和。f和g都是可学习的MLP,
为温度系数。
3、训练过程
注意,我们不可能对场景中每一个物体进行描述,,也不能把每一帧作为一个整体来提取caption,这样物体会存在模糊。所以在训练过程和推理过程中,都会引入候选框信息。训练过程中依赖真实的标注物体,而推理过程则利用Mask3D进行标注。
假设训练过程中,我们现在已经根据已知的深度图获得了点云信息,那么根据给定的3D标注框,就可以对应到与之重叠的视觉块(相当于2D的掩码),并对这一部分视觉特征进行平均池化并加以位置编码,得到了他这一个掩码下的tokens信息。
4、实验
为什么要采用与LLaVA-3D不同的采样方法,因为均匀采样会失去一些小物体的信息。
定位问题上同样测试ScanRefer和Multi3DRef指标,这两个分别是单目标定位和多目标定位。然后同样对比3D问答,视觉定位,密集描述问题。
三、SPAR
1、概述
SPAR论文原文是这个《From Flatland to Space: Teaching Vision-Language Models to Perceive and Reason in 3D》
动机:由于视觉语言模型在3D空间感知上存在明显局限,传统方案依赖显式3D数据(如点云),但此类数据稀缺且分布不均。SPAR提出核心问题:能否仅通过2D图像数据让VLMs学习3D空间理解? 其灵感源于人类通过2D观察隐式重建3D空间的能力。
所以,SPAR模型中,在训练过程中,文本QA标签由3D真值生成,但模型中并不直接接触3D点云信息,推理过程中采用纯图像作为输入。可以理解为SPAR实现了3D到2D的转换,将3D真值,转换为大规模生成的2DQA信息。
SPAR为了引入3D数据所以建立了一个7M的数据,补充了单视图和多视图的问答信息。但是缺点就是数据量太大了,不容易训练。同时生成了一个基于SPAR-7M的benchmark。
2、方法
数据集
数据集来自于ScanNet,ScanNet++,Structured3D的场景共4500+,包含精确地3D网格,物体bbox,相机位姿信息,并且过滤掉相似帧。
数据集中包含了每一个物体的位置,在哪一个场景中,在哪一帧中,所以可以用它来建立QA。QA共包含33类任务,覆盖深度估计,距离预测,甚至视角变换,物体匹配,空间想象等任务。
SPAR-Bench
从33类任务中精选20类核心任务,排除视频时序任务。每类任务抽取400个验证集样本 → 人工校验 → 保留 7,207高质量QA对,并且进行人工验证,剔除模糊/误导性问题。
架构
主干采用InternVL2.5-8B,没有别的改进,训练过程中数据集采用SPAR-mix(SPAR-7M+通用数据混合),并将EMOVA-2M作为通用能力基线,这是一个大规模的通用视觉问答数据集。
训练过程并未描述。
对于输出的文字中的3D定位框部分,通过提前Mask3D得到的检测框来进行IoU计算,优化3D定位的准确性。但是后面的VG LLM看到,其实这个方式不如直接接一个空间编码器,而且空间编码器可以学到更多的空间信息,不需要大量的数据训练。
4、实验
对于2D通用benchmark和空间理解问题进行评估,主要对比的是baseVLM(internvl2.5),在2D指标上存在明显的下降,3D性能提高。
SPAR-Bench上不高就奇怪了,数据量在那摆着呢。
其他的定位,描述指标上,不如Video 3D LLM。
四、VG-LLM
1、概述
这个模型解决的是现有方法依赖显式3D输入的问题,并不限于最传统的输入点云信息,bev地图,甚至Video-3D LLM这种输入深度图的信息。VG-LLM只输入RGB视频,无需显式的3D数据信息。另外相比于后面将介绍的SPAR模型,不仅VG-LLM只需要其3%的数据量就可以训练,而且不需要隐式的引入3D数据信息。
在后续对比实验中,仍然采用上面的定位,描述,目标检测问题,甚至对比空间推理性能和通用多模态能力。
2、方法
这个模型也用到了3D encoder用来提取几何信息(Spatial-MLLM)
首先输入完全采用RGB图片,并采用双流融合设计。
2D Visual Encoder
2D编码器不跨帧交互,仅提取单帧语义特征,所以对于输入的视频序列,也就是n帧图形,应该每一帧单独处理,单独输入到编码器中。
视觉编码器采用Qwen2.5-VL的视觉编码器,图像先patchify成若干块,之后丢入编码器中生成初始tokens,之后对相邻的2x2个patches合并为一个token
,减少75%的tokens数量。
最后将所有帧的tokens按照索引顺序拼接,形成一个完整的2d visual tokens序列
3D Visual Geometry Encoder
输入视频序列,并输出几何特征信息,并且根据2D visual tokens的尺寸,进行下采样到
。
MLLM
主体架构采用Qwen2.5-VL-3B,VGGT采用1B架构。
3、方法
数据集
VG-LLM 的训练数据分为三大类,空间推理指令数据,通用视频指令数据,3D场景理解数据。
空间推理指令数据:从三大 3D 数据集人工标注生成:ScanNet(室内场景)、ScanNet++[(高精度重建)、Structure3D(合成场景),覆盖 33 类空间任务,but仅使用数据集的3%。
通用视频指令数据:从 LLaVA-Video-178K,抽取 Hound 子集,聚焦动态场景描述,视频帧数限制在4-8帧,混合简单描述和复杂推理任务,保留模型原有的视频理解能力。
3D 场景理解数据:(ScanRefer/Scan2Cap/EmbodiedScan),分别是ScanRefer:3D视觉定位,利用EmbodiedScan的逐帧物体可见性标注,Scan2Cap:密集描述,利用LEO模型预先检测得到的,视频目标检测三类。在标记中完全将3D框转化为文本信息。
训练过程
对于2D视觉编码器和3D视觉编码器均冻结,只训练几何与语义对齐的MLP和MLLM骨干网络。
VG-LLM采用统一的文本序列生成问题,并将坐标信息文本化,采用标准交叉熵损失。
推理过程中对于不同的任务,如果是视觉定位和检测任务,则输出特定的文本格式。比如第五帧时,给我棕色椅子的坐标,输出{"frame":5, "bbox":[1.20,3.45,...]},比如给一个连续的视频信息,检测视频中的物体,输出
{"objects":[{"category":"chair", "bbox":[...]}]},对于3D密集描述信息和空间推理则直接输出文本信息即可,不需要解析。
4、实验
定位问题和密集描述上,在不需要3D场景输入的情况下,超过了SPAR模型,并且逐渐接近Video-3D LLM(并没有完全超越)
对于多模态模型对比上VSI-Bench,距离,尺寸,计数上分数很高。
跨任务模型BLINK是深度估计性能,CV-Bench是评测MLLM的2D、3D空间感知能力,依赖于传统CV数据集,在2D,3D上均超过了SPAR-8B模型。
参考论文:
[2409.18125] LLaVA-3D: A Simple yet Effective Pathway to Empowering LMMs with 3D-awareness
[2505.24625] Learning from Videos for 3D World: Enhancing MLLMs with 3D Vision Geometry Priors
[2503.22976] From Flatland to Space: Teaching Vision-Language Models to Perceive and Reason in 3D
[2412.00493] Video-3D LLM: Learning Position-Aware Video Representation for 3D Scene Understanding