M³:密集匹配遇见多视图基础模型的单目高斯溅射SLAM M^3: Dense Matching Meets Multi-View Foundation Models for Monocular Gaussian Splatting SLAM
通过增强多视图基础模型的密集匹配能力,实现高精度单目SLAM与3D重建
前置知识
SLAM
同时定位与建图技术,指在未知环境中,移动设备通过传感器数据同时估计自身位置并构建环境地图。视觉SLAM使用相机作为主要传感器,通过特征点匹配、束调整等算法实现位姿跟踪和场景重建,是机器人导航和增强现实的核心技术。
本文提出的M3框架本质上是一个视觉SLAM系统,理解SLAM的基本原理(前端跟踪、后端优化、回环检测)对于掌握M3的设计理念至关重要。
3D Gaussian Splatting (3DGS)
一种新颖的3D场景表示方法,使用各向异性的3D高斯椭球作为基本图元来表示场景。每个高斯包含位置、旋转、尺度、不透明度和球谐系数等参数,通过基于瓦片的可微分光栅化器进行高效渲染。与传统神经辐射场相比,3DGS实现了实时渲染能力。
M3使用3D高斯溅射作为场景表示方法,理解其光栅化原理和优化过程对于理解M3如何实现高保真度重建是必要的。
密集匹配
指在图像对之间建立像素级的对应关系,即找到每一点在另一幅图像中的对应点。与稀疏特征点匹配不同,密集匹配为每个像素提供对应关系,能够为几何优化提供更强的约束。常见方法包括光流法、立体匹配和基于深度学习的对应关系预测。
本文的核心创新点就是在多视图基础模型上增加了专门的密集匹配头,实现像素级精确对应关系,这是M3能够在复杂场景中实现高精度姿态估计的关键。
多视图基础模型
指在大规模多视图数据上预训练的深度神经网络,能够从单次前馈推理中预测多视图的几何信息。这类模型通过学习3D场景的统计先验,可以在没有显式优化的情况下估计相机位姿、深度图和3D结构。代表工作包括DUSt3R、MASt3R、Pi3等。
M3基于Pi3X模型,理解多视图基础模型的工作原理和局限性是理解本文为何需要引入专门匹配头的前提。
束调整
摄影测量和SLAM中用于联合优化3D点坐标和相机位姿的非线性优化方法。通过最小化重投影误差,同时调整所有相机参数和3D点位置,实现全局一致的重建。BA是SLAM后端优化的核心技术,通常使用Levenberg-Marquardt等迭代算法求解。
M3使用密集对应关系构建因子图进行全局优化,本质上就是束调整的变体,理解BA原理对于理解M3如何通过几何约束消除累积漂移至关重要。
研究动机
现有的多视图基础模型在SLAM任务中存在一个关键瓶颈:大多数模型以前馈方式估计姿态,产生的像素级对应关系缺乏严格几何优化所需的精度。具体来说,两两优先级方法(如MASt3R-SLAM)需要成对处理图像,导致二次计算复杂度和大量冗余计算;而多帧优先级方法(如VGGT-SLAM 2.0)虽然能提供全局几何一致性,但缺乏像素级密集对应关系,无法建立SLAM后端所需的强极线约束。在复杂的室内外场景(如ScanNet++、KITTI等数据集),这种对应关系的不精确会导致轨迹发散或重影等灾难性失败。例如,在长序列视频流中,缺乏精确密集匹配会累积显著漂移,使得最终重建的3D模型与真实场景严重偏离。
本文的目标是本文的目标是解决多视图基础模型在SLAM应用中的密集对应关系缺失问题,设计一个流式3D重建框架,能够从未校准的单目视频中同时实现高精度的姿态估计和高保真度的场景重建。具体而言,M3旨在:1)增强多视图基础模型以支持像素级密集匹配,2)通过单次前馈推理同时促进前端跟踪和后端全局优化,3)在保持计算效率的同时,在多样化的室内外基准测试中实现最先进的姿态估计和重建精度,4)有效处理真实世界中的动态物体,提高系统鲁棒性。
与已有工作不同的是,本文的独特切入角度是认识到现有多视图基础模型的根本缺陷——过度关注单个场景几何而忽视了视图间关系一致性。不同于以往将基础模型作为黑盒集成到SLAM框架中的方法,M3选择对基础模型本身进行增强,专门训练一个匹配头来恢复密集匹配能力。这种设计选择使得SLAM框架能够建立强几何约束,同时通过姿态引导的局部搜索将计算复杂度从二次降低到线性。另一个独特之处是M3将前端跟踪和后端优化紧密耦合,通过滑动窗口管理同时处理历史关键帧和新帧,避免了重复模型推理。
核心方法
M3的整体思路是将增强的多视图基础模型Pi3X与SLAM框架紧密结合,形成一个统一的流式3D重建系统。从直觉上理解,传统的SLAM依赖特征点匹配建立几何约束,而M3则利用基础模型的强大先验知识,通过专门训练的匹配头直接生成密集、精确的像素级对应关系。技术路线上,M3首先对Pi3X进行增强,添加一个匹配头用于预测密集特征描述符和匹配置信度;然后通过滑动窗口机制管理历史关键帧和新帧,通过单次前馈推理同时获得所有帧的几何先验;最后利用这些先验构建因子图进行联合优化,同时进行高斯溅射的场景表示更新。整个过程是增量的,新帧到达时能够实时更新相机位姿和3D模型。
M3的核心创新点是在多视图基础模型Pi3X上增加了专门的密集匹配头,这使其能够提供像素级精确的密集对应关系,这是与已有方法的本质区别。传统方法要么依赖两两匹配(计算效率低),要么缺乏密集对应(几何约束弱),而M3通过匹配头实现了高精度的多视图密集匹配,同时保持了计算效率。另一个关键创新是动态区域识别模块,通过描述符运动图检测和抑制动态物体,这是已有方法较少考虑的。此外,M3通过姿态引导的局部搜索将密集匹配的计算复杂度从二次全局搜索降低到线性局部精化,这也是一个重要的技术突破。
方法步骤详情
M3方法包含四个主要步骤。第一步是模型增强,对Pi3X架构进行扩展,添加匹配头,该头由密集预测Transformer块和2层MLPdesc组成,输出密集特征描述符和匹配置信度图。训练时冻结编码器、解码器和现有头,只微调匹配头,损失函数采用对称InfoNCE目标,其中相似度计算为s_tau(u,v) = exp(-tau * D_{1,u}^T * D_{k,v})。第二步是密集匹配,给定N幅图像,增强的Pi3X输出每帧估计,对于图像对,首先通过姿态变换初始化匹配,然后在半径为r的局部邻域内精化,选择使描述符相似度最大化的像素。第三步是动态区域估计,通过描述符运动图抑制动态区域,计算公式为M_i = ⊙ M_k^i,其中<·,·>表示逐元素点积,M_k^i是关键帧k的运动图变换到帧i。第四步是SLAM优化,包括前端跟踪和后端全局优化,跟踪通过最小化重投影误差,全局优化通过因子图最小化所有关键帧的集体重投影误差。同时进行神经高斯重建,每个高斯由空间中心、旋转、尺度、不透明度、球谐系数和LoD渲染d_max参数化。
技术新颖性
M3的技术新颖性体现在多个方面。首先,它首次提出在多视图基础模型上专门训练密集匹配头,而非简单地将其作为黑盒使用,这种针对SLAM任务专门优化的设计是一个重要的技术突破。其次,M3实现了前端跟踪和后端优化的紧密耦合,通过滑动窗口机制用单次前馈推理同时处理历史关键帧和新帧,这种设计显著减少了重复推理,提高了计算效率。第三,姿态引导的局部匹配搜索策略将计算复杂度从二次降低到线性,同时保持了高精度,这是一个重要的算法创新。第四,基于描述符的动态区域检测模块为SLAM系统处理真实世界的动态场景提供了有效解决方案,这在之前的工作中较少被关注。最后,M3在保持高精度的同时,使用632.2k高斯实现了高效的3DGS表示,相比ARTDECO的936.7k高斯减少了约32%的存储开销,体现了在表示效率方面的创新。
实验结果
M3在多个室内外基准测试中取得了最先进的姿态估计和重建精度。在姿态估计方面,M3在ScanNet++上达到ATE RMSE 0.065米,相比VGGT-SLAM 2.0的0.182米降低了64.3%,相比ARTDECO的0.137米降低了52.6%;在ScanNetV2上达到0.051米,相比VGGT-SLAM 2.0的0.073米降低了30.1%;在Waymo上达到0.773米,相比VGGT-SLAM 2.0的1.295米降低了40.3%;在KITTI上达到0.890米,相比VGGT-SLAM 2.0的2.521米降低了64.7%。这些结果表明M3在复杂室内外场景中都能显著降低累积漂移。在重建质量方面,M3在ScanNet++上达到PSNR 28.82 dB、SSIM 0.892、LPIPS 0.190,相比ARTDECO的26.71 dB提升了2.11 dB,LPIPS降低了0.056;在ScanNetV2上达到PSNR 27.08 dB、SSIM 0.904、LPIPS 0.272,相比ARTDECO的26.03 dB提升了1.05 dB,SSIM提升了0.002;在Waymo上达到PSNR 28.94 dB、SSIM 0.880、LPIPS 0.277,相比ARTDECO的28.63 dB提升了0.31 dB;在KITTI上达到PSNR 22.47 dB、SSIM 0.727、LPIPS 0.288,相比ARTDECO的21.47 dB提升了1.0 dB。这些结果显示M3在保持高保真度渲染的同时,显著减少了伪影和几何误差。在效率方面,M3使用632.2k高斯(室内)/ 1098.9k高斯(室外),训练时间4.7-7.2分钟,相比ARTDECO的936.7k(室内)/ 1388.1k(室外)高斯,存储效率提高了约32%。消融研究表明,移除描述符搜索会导致ATE从0.065米增加到0.094米,PSNR从28.82 dB下降到27.73 dB;移除内参对齐会导致ATE增加到0.236米,PSNR下降到26.14 dB;移除全局优化会导致ATE增加到0.130米,PSNR下降到28.49 dB;分离前后端会导致ATE增加到0.098米,训练时间增加到4.7分钟以上。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| 姿态估计(ATE RMSE,米) | ATE RMSE↓ | 0.065 (ScanNet++), 0.051 (ScanNetV2), 0.773 (Waymo), 0.890 (KITTI) | 0.182 (VGGT-SLAM 2.0, ScanNet++), 0.137 (ARTDECO, ScanNet++) | 相比VGGT-SLAM 2.0降低64.3% (ScanNet++), 相比ARTDECO降低52.6% (ScanNet++) |
| 重建质量(PSNR,dB) | PSNR↑ | 28.82 (ScanNet++), 27.08 (ScanNetV2), 28.94 (Waymo), 22.47 (KITTI) | 26.71 (ARTDECO, ScanNet++), 26.03 (ARTDECO, ScanNetV2) | 相比ARTDECO提升2.11 dB (ScanNet++), 提升1.05 dB (ScanNetV2) |
| 重建质量(SSIM) | SSIM↑ | 0.892 (ScanNet++), 0.904 (ScanNetV2), 0.880 (Waymo), 0.727 (KITTI) | 0.864 (ARTDECO, ScanNet++), 0.902 (ARTDECO, ScanNetV2) | 相比ARTDECO提升0.028 (ScanNet++), 提升0.002 (ScanNetV2) |
| 重建质量(LPIPS) | LPIPS↓ | 0.190 (ScanNet++), 0.272 (ScanNetV2), 0.277 (Waymo), 0.288 (KITTI) | 0.246 (ARTDECO, ScanNet++), 0.278 (ARTDECO, ScanNetV2) | 相比ARTDECO降低0.056 (ScanNet++), 降低0.006 (ScanNetV2) |
| 与feed-forward方法对比(PSNR,dB) | PSNR↑ | 27.789 (ScanNet++), 28.346 (Waymo) | 22.337 (AnySplat, ScanNet++), 21.974 (AnySplat, Waymo) | 相比AnySplat提升5.452 dB (ScanNet++), 提升6.372 dB (Waymo) |
局限与改进
作者承认M3框架仍然依赖于前馈预测的正确性,当基础模型产生严重不准确的对应关系或几何先验时,SLAM优化可能无法恢复,因为当前框架缺乏专门的回退机制。此外,框架目前仅限于单目视觉设置,没有利用互补的传感模式如激光雷达或惯性测量单元。从我的观察来看,M3在极端场景(如纯旋转、低纹理、剧烈光照变化)下的鲁棒性可能不足,因为这类场景对基础模型的对应关系预测提出了巨大挑战。另外,M3使用632.2k到1098.9k高斯表示场景,虽然比ARTDECO高效,但在大规模场景中仍然可能面临存储和渲染挑战。最后,M3的训练需要200K迭代,AdamW优化器,峰值学习率1e-4,这对计算资源有一定要求,可能在资源受限环境中部署困难。
独立分析的弱点
M3存在几个可以改进的弱点。首先,在纯旋转或极低纹理场景中,基础模型可能无法产生可靠的对应关系,导致系统崩溃。改进方向可以结合传统特征点匹配(如SIFT、ORB)作为回退机制,在基础模型失败时提供替代约束。其次,M3对动态物体的检测仅基于描述符一致性,在快速运动或严重遮挡情况下可能失效。改进方向可以集成光流法或运动分割算法(如RAFT++)提高动态检测的鲁棒性。第三,M3目前使用固定的滑动窗口大小(L=8),在不同场景的最优窗口大小可能不同。改进方向可以实现自适应窗口调整,根据场景复杂度和计算资源动态调整窗口大小。第四,M3的内存使用仍然较高(22.4G-23.2G),限制了在移动设备上的部署。改进方向可以采用渐进式高斯剪枝、层级表示或模型压缩技术降低内存需求。第五,M3缺乏显式的闭环检测机制,在长序列中可能累积漂移。改进方向可以集成基于视觉词袋或深度学习的闭环检测模块,检测并纠正累积误差。
未来方向
作者提出的多传感器融合是很有前景的方向,结合激光雷达的点云信息或IMU的运动约束可以显著提高在挑战性场景中的鲁棒性。另一个有前景的方向是开发专门的回退机制,当基础模型预测不可靠时自动切换到传统几何方法,确保系统的可靠性。基于本文成果,可以延伸的研究方向包括:1)将M3扩展到双目或RGB-D输入,利用额外的几何约束提高重建精度;2)开发实时部署版本,通过模型蒸馏、量化和硬件优化实现移动端实时性能;3)集成语义信息,实现语义感知的SLAM,同时进行几何重建和语义理解;4)探索在线学习和持续适应机制,使系统能够根据新观察持续改进模型;5)开发跨场景泛化能力,使训练的模型能够直接应用到未见过的场景类型中;6)研究更高效的3DGS表示方法,如自适应高斯分布、稀疏化策略等,进一步降低存储和计算需求;7)结合物理约束(如刚性、平面性)提高重建几何的一致性和准确性。
复现评估
论文提供了项目页面(https://city-super.github.io/M3/),但未明确说明代码和数据的开源情况。从实现细节来看,M3需要相当复杂的训练和推理流程,包括:Pi3X模型的微调(200K迭代,AdamW优化器,余弦学习率调度,峰值学习率1e-4,批大小N=8,平衡权重alpha=10.0),M3框架的实现(滑动窗口L=8,描述符匹配搜索半径r=4,关键帧插入阈值tau_k = max(0.333W, 30)),以及数据集准备(ScanNet++ 20场景、ScanNetV2 10场景、VR-NeRF 8场景、KITTI 8序列、Waymo 9序列、FAST-LIVO2 5序列)。所有实验在NVIDIA RTX 4090 GPU上进行,feed-forward基线由于内存需求使用NVIDIA H200 GPU。复现难度较高,主要原因包括:需要访问多个大规模数据集,需要大量的GPU计算资源,需要熟悉多视图基础模型和3DGS的复杂实现细节,以及需要精确的超参数调优。建议的复现步骤:1)准备所有数据集,2)下载预训练的Pi3X模型,3)按照论文描述微调匹配头,4)实现M3框架的滑动窗口管理和优化流程,5)在标准基准测试上评估性能并报告结果。
论文图表