【论文笔记】Fast3R:前向并行muti-view重建方法

众所周知,DUSt3R只适合做稀疏视角重建,与sapnn3r的目的类似,这篇文章以并行的方法,扩展了DUSt3R在多视图重建中的能力。

abstract

多视角三维重建仍然是计算机视觉领域的核心挑战,尤其是在需要跨不同视角实现精确且可扩展表示的应用中。当前的主流方法,如DUSt3R,采用了一种基于成对处理的方式,即对图像进行两两处理,并需要通过昂贵的全局对齐程序来实现多视角重建。我们提出了Fast3R,这是对DUSt3R的一种新颖的多视角扩展,通过并行处理多个视角,实现了高效且可扩展的三维重建。Fast3R基于Transformer的架构在一次前向传播中处理N张图像,避免了迭代对齐的需求。通过在相机姿态估计和三维重建上的大量实验,Fast3R展示了最先进的性能,在推理速度上显著提升,并减少了误差累积。这些结果表明,Fast3R是多视角应用中的一个强大替代方案,在不牺牲重建精度的前提下提供了更强的可扩展性。

1. Introduction

传统的重建流程,例如基于运动恢复结构(SfM)[44]和多视角立体视觉(MVS)[18]的方法,主要依赖于图像对来重建三维几何。但它们需要大量的工程来实现特征提取、对应匹配、三角测量和全局对齐等顺序阶段,从而限制了其可扩展性和速度。

DUSt3R[61通过将成对重建问题转化为点图的回归问题能够直接从RGB图像中预测三维结构。并放宽了传统投影相机模型的硬约束[61],在具有挑战性的视角下展现了令人印象深刻的鲁棒性。这代表了三维重建领域的一次根本性转变,因为端到端可学习的解决方案不仅减少了流程中误差的累积,还显著简化了操作。

然而,**DUSt3R的根本是重建两幅图像输入的场景。为了处理多于两幅图像,DUSt3R需要计算O(N²)对点图并执行全局对齐优化过程。这一过程计算成本高昂,随着图像数量的增加,其扩展性较差。**例如,在A100 GPU上仅处理48个视角就可能导致内存溢出(OOM)。另外,两两重建这一过程限制了模型的上下文信息,既影响了训练期间的学习效果,也限制了推理阶段的最终精度。从这个意义上说,DUSt3R与传统SfM和MVS方法一样,面临着成对处理的瓶颈问题。

Fast3R是一种新型的多视图重建框架,旨在克服上面提到的局限性。 FAST3R在Dust3R的基础上,利用Transformer-based架构[56]并行处理多个图像,允许在单个正向过程中重建。 每个帧可以同时参与重建过程中输入集中的所有其他帧,大大减少了误差的积累。 并且Fast3R推理的时间也大大减少。

总结:

(1)Fast3R是一种基于Transformer的多视角点图估计模型,无需全局后处理,在速度、计算开销和可扩展性方面实现了显著提升。

(2)通过实验证明,模型性能随着视角数量的增加而提升。在相机姿态定位和重建任务中,当模型在更大规模的视角集上训练时,其性能会得到改善。在推理过程中使用更多视角时,每个视角的精度会进一步提高,并且模型能够泛化到远超训练时所见视角数量的场景

(3)我们展示了在相机姿态估计任务中的最先进性能,并显著提升了推理时间。在CO3Dv2数据集[39]上,Fast3R在15度误差范围内的姿态估计精度达到99.7%,与经过全局对齐的DUSt3R相比,误差减少了14倍以上。

现代三维重建方法都是基于MVG,分为多个顺序阶段:特征提取、寻找成对图像对应关系、通过三角测量生成三维点及成对相机相对姿态,以及全局捆绑调整(bundle adjustment)。然而,任何流程化方法都容易累积误差,尤其是在手工设计的组件中。此外,顺序处理的特性阻碍了并行化,从而限制了速度和可扩展性。MVG方法自计算机视觉早期就已存在,并且至今仍在使用的理由是:当它们没有灾难性失败时,可以非常精确。最新的多视角几何流程,如COLMAP[44]或OrbSLAM2[30],融合了近60年的工程改进,但这些方法在静态场景(如ETH-3D[52])中仍然有超过40%的概率会灾难性失败,而这类场景由于图像覆盖密集,实际上可以被认为是相对简单的情况。

DUSt3R通过点图回归来替换MVG流程中直到全局成对对齐的所有步骤。直接为成对图像在共享坐标系中预测三维点图。其他MVG组件任务,如相对相机姿态估计和深度估计,可以从生成的点图表示中恢复。然而,DUSt3R存在很大局限性,即只能完成稀疏视角重建,上述也提到了DUSt3R的局限性。

然而,DUSt3R具有启发意义,MASt3R在每个解码器输出上添加了一个局部特征头,而MonST3R[69]则对动态场景进行了数据驱动的探索,但两者本质上仍然是成对方法。特别是MASt3R并未对全局对齐方法进行任何改动。与我们同期的工作,Spann3R[57]将图像视为有序序列(例如来自视频),并使用成对滑动窗口网络以及学习的空间记忆系统逐步重建场景。这扩展了DUSt3R以处理更多图像,但Spann3R的增量成对处理无法修复早期帧的重建,这可能导致误差累积。作者提出的Fast3R的Transformer架构使用了all-to-all注意力机制,使模型能够同时并联合地推理所有帧,而无需假设图像顺序。Fast3R消除了顺序依赖性,从而在单次前向传播中实现了跨多个设备的并行推理。

3. Model

3.1. Problem definition

如图2,输入N个无序无pose的RGB图像,Fast3R预测对应的pointmap)以及confidence map来重建场景,不过这里的有两类,一种是全局pointmap,另一种是局部pointmap,confidence map也一样,全局置信图,局部置信图,比如,在MASt3R中,是在视角1的坐标系下,就是当前相机坐标系:

3.2. Training Objective-Fast3R的loss设计

Fast3R的预测与GT的loss是DUST3R的一个广义版本,即归一化 3D 逐点回归损失的置信加权:

首先,我们回顾DUST3R的点图loss:

在此基础上,使用confidence-ajusted loss:

我们的直觉是置信度加权有助于模型处理标签噪声。与DUST3R类似,我们在真实世界的扫描数据上进行训练,这些数据通常包含底层点图标签中的系统性误差。例如,在真实激光扫描中,玻璃或薄结构通常无法正确重建[4, 67],而相机配准中的误差会导致图像与点图标签之间的错位[66]。

3.3. Model architecture

Fast3R的结构设计来源于DUSt3R,包括三部分:image encoding, fusion transformer,

and pointmap decoding,并且处理图片的方式是并行的。

(1)Image encoder

与DUST3R一样,对于任意的图片,encoder部分使用CroCo ViT里面的,即分成patch提取特征,最后得到,其中,记作:

然后,在fusion transformer之前,往patch 特征H里面添加一维的索引嵌入(image index positional embeddings),索引嵌入帮助融合Transformer确定哪些补丁来自同一图像,并且是识别的机制,而定义了全局坐标系。使模型能够从原本排列不变的标记集中隐式地联合推理所有图像的相机pose。

(2)Fusion transformer

Fast3R 主要的计算在Fusion transformer过程中,我们使用的是与ViTB [12] 或 BERT类似的12层transformer,还可以按照比例放大,在此过程中,直接执行all-to-all的自注意力,这样,Fast3R获得了包含整个数据集的场景信息。

(3)pointmap decoding

Fast3R的位置编码细节也很讲究,这个细节大家感兴趣可以仔细看看,可以达到训练20张图,推理1000张图的效果。最后,使用DPT-Large的decoder得到点图以及置信图,下面简单介绍一下DPT-L。

DPT探讨了如何将视觉Transformer应用于密集预测任务(如语义分割、深度估计等)。通过引入层次化特征提取、多尺度特征融合以及专门的密集预测头,改进了ViT架构,使其能够有效处理高分辨率输入并生成像素级预测。

4. Experiments

baseline是DUSt3R,MASt3R,Spann3R,所以,训练数据与他们保持一致,包括object-center和scene scan两类,在 64 个 A100 GPU 上训练 6.13 天

4.1. Inference Efficiency

表2显示了随着视角数量增加,推理时间和内存使用情况的变化。Fast3R能够单次处理多达1500个视角,而DUSt3R在超过32个视角时就会耗尽内存。Fast3R的推理时间也显著更快,且随着视角数量的增加,其优势更加明显。

4.2. Pose Estimation

受DUSt3R[61]的启发,我们从预测的全局点图中估计焦距、相机旋转和相机平移。我们首先基于图像分辨率初始化一组随机焦距猜测,然后使用RANSAC-PnP根据猜测的焦距和全局点图估计相机的旋转和平移RANSAC-PnP的离群点数量用于对每个猜测的焦距进行评分(越低越好),并选择得分最高的焦距来计算相机的内参和外参矩阵

表1中显示了15°阈值下的相对旋转精度RRA(预测的相机旋转与真实旋转之间的误差小于15°的比例)和相对平移精度(RTA),30°阈值下的平均精度mAA(多个误差阈值(通常从0°到30°)下的平均精度),以及模型的每秒帧数(FPS)。在Co3D数据集上,Fast3R在RRA和mAA指标上超越了所有其他方法,实现了接近完美的RRA,同时在RTA上保持竞争力。重要的是,速度比DUSt3R快200倍,比MASt3R快700倍。

图4和图5显示,Fast3R的预测随着视角数量的增加而改进,表明该模型能够利用多张图像的额外上下文信息。

4.3. 3D Reconstruction

在场景级基准测试(7-Scenes [47] 和 Neural RGB-D [3])以及物体级基准测试(DTU [1])上评估了Fast3R的三维重建性能。

使用ICP(迭代最近点算法)将每张图像的局部点图独立对齐到全局点图,并使用对齐后的局部点图进行评估。Fast3R在与DUSt3R和MASt3R等其他点图重建方法的比较中表现出了竞争力,同时速度显著更快,如表3和表4所示。我们相信,随着更好的重建数据、更多的计算资源以及更优的训练策略,Fast3R的性能将进一步提升。

5. Conclusion

我们提出了Fast3R,这是一种能够在单次前向传播中直接预测所有像素在统一参考系中三维位置的Transformer模型。通过用端到端训练的通用架构取代整个SfM(运动恢复结构)流程,Fast3R及类似方法有望受益于Transformer的常规扩展规律:随着数据质量的提升和参数规模的增加,性能持续改进。由于Fast3R采用全局注意力机制,它避免了现有系统中因瓶颈而导致的两个潜在人为扩展限制。首先,图像对重建的瓶颈限制了模型可用的信息量。其次,成对全局优化只能部分弥补这一问题,且无法通过增加数据来改进。

通过我们的高效实现,Fast3R能够以超过250 FPS的速度运行,并在一次前向传播中处理1500张图像,远超其他方法,同时在三维重建和相机姿态估计基准测试中取得了具有竞争力的结果。另外,Fast3R继承了未来工程改进的优势,能够高效地服务于和训练基于Transformer的大型模型。例如,像Deepspeed-Inference [38]和FlashAttention [7, 8]这样的工具包提供了融合内核、模型并行化和数据并行化功能。这些功能加速了推理并减少了内存需求,使每个设备能够处理更多图像,且图像数量随设备数量的增加而扩展。

Fast3R的架构允许并行处理多个视角,其位置嵌入设计使得在视角上下文长度上能够实现"短训练,长测试"。然而,我们观察到,对于重建区域非常大的场景,当视角数量变得极端(例如超过200个)时,某些视角的点图(特别是那些置信度得分较低的视角)开始表现出漂移行为。目前解决这一问题的一种方法是丢弃置信度得分较低的帧。在密集重建中,这种方法通常不会对重建质量造成太大影响。

相关推荐
忆~遂愿1 小时前
3大关键点教你用Java和Spring Boot快速构建微服务架构:从零开发到高效服务注册与发现的逆袭之路
java·人工智能·spring boot·深度学习·机器学习·spring cloud·eureka
天宇琪云2 小时前
关于opencv环境搭建问题:由于找不到opencv_worldXXX.dll,无法执行代码,重新安装程序可能会解决此问题
人工智能·opencv·计算机视觉
deephub3 小时前
十大主流联邦学习框架:技术特性、架构分析与对比研究
人工智能·python·深度学习·机器学习·联邦学习
_zwy3 小时前
【Linux权限】—— 于虚拟殿堂,轻拨密钥启华章
linux·运维·c++·深度学习·神经网络
英国翰思教育4 小时前
留学毕业论文如何利用不同问题设计问卷
人工智能·深度学习·学习·算法·学习方法·论文笔记
gaoenyang7605255 小时前
探索高效图像识别:基于OpenCV的形状匹配利器
人工智能·opencv·计算机视觉
背太阳的牧羊人5 小时前
分词器的词表大小以及如果分词器的词表比模型的词表大,那么模型的嵌入矩阵需要被调整以适应新的词表大小。
开发语言·人工智能·python·深度学习·矩阵
MYT_flyflyfly7 小时前
计算机视觉之三维重建-单视几何
人工智能·数码相机·计算机视觉
想成为配环境大佬7 小时前
MaskGAE论文阅读
论文阅读
新加坡内哥谈技术8 小时前
DeepSeek:硅谷AI格局的拐点?
人工智能·深度学习·学习·语言模型