【论文笔记】FLARE:feed-forward+pose&geometry estimate+GS

发布于:2025-03-16 ⋅ 阅读:(14) ⋅ 点赞:(0)

浙大周晓巍大神组的又一篇新作,CVPR2025,拖延两周了才看完,中间有其他事没顾上,本文使用了一个经验性的技巧方法,局部与全局学习结合,pose学习与几何学习结合,相辅相成,在速度与质量上做到了兼顾与高效,官网有在线demo,效果不错!!!并且虽然题目是稀疏视角,但是在显存足够的前提下,可以增加图片数量!
文章地址:https://arxiv.org/pdf/2502.12138
开源代码:https://github.com/ant-research/FLARE?tab=readme-ov-file

abstract

        我们提出了FLARE,一种前馈模型,旨在从未校准的稀疏视角图像(即少至2-8张输入)中推断出高质量的相机姿态和3D几何结构。这是一个在现实应用中具有挑战性但又非常实用的场景。
我们的解决方案采用了一种级联学习范式,其中相机姿态作为关键桥梁,认识到其在将3D结构映射到2D图像平面中的重要作用。具体来说,FLARE从相机姿态估计开始,其结果作为后续几何结构和外观学习的条件,并通过几何重建和新视角合成的目标进行优化。利用大规模公共数据集进行训练,我们的方法在姿态估计、几何重建和新视角合成任务中实现了最先进的性能,同时保持了推理效率(即少于0.5秒)。

1. Introduction

        传统三维重建的pipeline是SfM-MVS,但是对于稀疏视角重建问题来说,这个路线存在局限性并且无法奏效,目前对于稀疏重建的解决方法主要依赖数据驱动,利用图像特征来完成重建任务,分为下面几类基于优化的方法(如BARF [36]和NeRF-- [81])联合优化相机姿态和几何结构,但它们需要良好的初始化,并且在新场景中的泛化能力较差。深度相机估计方法 [35, 50, 51, 60, 76, 99] 将稀疏视角SfM视为相机参数回归问题,但在准确性和泛化性方面表现不佳。VGGSfM [77] 通过引入多视角跟踪和可微分束调整改进了这一问题,但在提供密集几何结构方面仍有不足。基于预训练模型的方法,DUSt3R [80] 和 MASt3R [32] 提出了生成具有像素级几何信息的双视角点图的方法,但它们依赖于后优化的全局配准,耗时且通常效果欠佳。PF-LRM [78] 提供了从四张图像进行前馈重建的能力,但其三平面表示 [5] 限制了其在大规模场景中的性能。因此稀疏重建领域仍然缺乏一种满足可扩展性、准确性和效率,同时优化相机、几何和外观估计的全面解决方案

        我们提出了FLARE,一种新颖的前馈且可微分系统,能够从未校准的稀疏视角图像中推断出高质量的几何结构、外观和相机参数。我们在多个大型公共数据集上训练了我们的模型 [1, 34, 39, 49, 68, 83, 93, 95]。在相机姿态估计、点云估计和新视角合成任务中取得了最先进的成果。以未校准的图像作为输入,FLARE 能够在仅 0.5秒 内使用3DGS生成逼真的新视角合成效果,这相比之前的基于优化的方法有了显著提升。如图1所示,我们的系统能够从少至2-8张输入图像中重建3D场景并估计相机姿态。本文的主要贡献如下:

1)我们提出了一种高效、前馈且可微分的系统,用于从未校准的稀疏视角图像中实现高质量的3DGS场景重建,推理时间少于0.5秒
2)我们的方法证明利用相机姿态作为代理,能够有效简化复杂的3D学习任务。因此,我们引入了一种新颖的级联学习范式,该范式从相机姿态估计开始,其结果作为后续几何结构和外观学习的条件。

3)我们提出了一种两阶段几何学习方法,首先学习以相机为中心的点图,然后构建一个全局几何投影器,将这些点图统一到全局坐标系中


2. Method

        第2.1节中介绍了用于稀疏视角姿态估计的神经姿态预测器。基于姿态估计结果,第2.2节是两阶段学习范式,用于几何估计。第2.3节介绍3D高斯重建头,用于实现高质量的外观建模与新视角合成。最后2.4节是框架的训练loss。

 2.1Neural Pose Predictor

        考虑直接估计一个coarse camera pose,我们观察到,估计的姿态不需要非常精确——只需近似于真实分布即可。并且我们的核心观点是:即使相机的pose不够精确,它也能提供关键的几何先验和空间初始化,从而显著降低几何和外观重建的优化复杂度

        给定一组图像,首先切成non-overlapping patch输入神经网络得到tokens,然后初始化可学习相机隐变量,再把图像tokens与相机隐变量连接到一起送入Transformer decoder(称为“神经姿态预测器”),输出coarse camera pose

        其中,是一个7维向量,即表示旋转的四元数与平移,注意,这里是绝对旋转与绝对平移。

2.2Multi-view Geometry Estimation

        我们的核心思想是首先在局部坐标系(相机坐标系)中学习以相机为中心的几何,然后构建一个神经场景投影器,在估计姿态的指导下将其转换到全局世界坐标系中

1.局部几何与pose估计

        在相机空间中学习几何与图像形成过程一致,因为每个视图直接从其视角观察局部几何。这也简化了几何学习,因为只需关注每个视图中可见的局部结构,而不需要推理复杂的全局空间关系。在每一个局部,我们通过两阶段学习(局部几何估计和全局几何转换)提高了重建质量。

        首先,将图像分块为低分辨率 tokens,以及将前面估计的送入网络得到coarse pose tokens,与前面的图像低分辨率tokens 拼接起来,再将拼接后的 tokens 输入到一个 Transformer 中,以估计低分辨率的 3D 点 tokens ​,Transformer 中的自注意力机制可以在不同视图之间建立关联,并利用相机的几何线索。

        最后,输入到 DPT 的解码器  中,进行空间上采样,得到局部相机空间中的pointmap 和置信度图 ​,dust3r之前是两个两个得到在第一个图坐标系中的这些信息。

        另外,在网络中引入额外的可学习pose tokens ,输出优化后的姿态估计 ,同时进行几何预测主要的思想是:同时进行姿态优化和几何估计,两个任务之间可以相互提供补充的监督信号,从而提升各自的性能。另外,为了在推理时处理可能不准确的姿态估计,对预测的相机姿态添加高斯噪声,使网络能够适应推理时的噪声姿态,增加了鲁棒性。

        DPT 即Dense Prediction Transformer ,基于 Transformer 进行密集预测,最初用于计算机视觉任务中的密集预测(如语义分割、深度估计等),能够将低分辨率的特征图上采样到高分辨率,同时保持全局上下文信息。在本文中,DPT 被用作解码器将低分辨率的 3D 点 tokens 上采样为高分辨率的点图置信度图​。

2.全局估计

        我们的目标是利用优化后的相机姿态 ,将以相机为中心的几何预测转换为一致的全局几何。但是如果有不准确的的pose估计那么就会导致全局几何错误,所以使得直接的几何重投影(如三角测量或透视变换)是一个不可靠的方法。

        所以,我们还是考虑使用前面的3D点tokens来完成,也就是构建一个可学习的几何投影器 Fg(⋅),以为条件,以为输入,得到全局tokens,然后再次使用DPT上采样得到pointmap与confidence map

2.3. 3D Gaussians for Appearance Modeling

        我们将上面得到的点云作为输入,进行3DGS的建模,高斯属性包括如下:

为了高效地建模外观,我们使用预训练的 VGG 网络从输入图像v中提取特征。并且在全局几何投影器 Fg上构建另一个 DPT 头,以生成外观特征。最后,将与 VGG 特征融合,输入到一个浅层 CNN 解码器 Fa(⋅)中,回归高斯参数

        为了解决估计几何与真实几何之间的尺度不一致问题,我们将两者归一化到一个统一的坐标空间中。我们从预测的点图  和真实点图  中计算平均尺度因子,在渲染时将场景归一化到单位空间。使用可微分的高斯光栅化器 R(⋅)来渲染归一化后的 3D 高斯分布:

Ip′​ 是渲染的图像。

2.4 loss

        loss分为三部分,分别是相机pose损失、几何损失和gs损失。

        相机姿态损失定义为旋转和平移损失的组合,遵循 VGGSFM 中的loss:

        其中 ​ 是第 i 张图像的真实pose,​ 是姿态参数化之间的 Huber 损失。

        几何损失使用 DUSt3R 中的一个loss:

        gs损失为渲染图像 和真实图像​ 之间的 L2 损失和 VGG 感知损失​ 的总和。此外,我们还加入了一个深度损失,用于监督渲染的深度图 ​ 与单目深度估计器Depth anything  的预测 ​ 之间的loss:

3. Experiment

3.1配置

数据与训练:我们follow了DUSt3R 与 MASt3R的数据集,包括多种类型的场景MegaDepth [34], ARKitScenes [1], BlendedMVS [93], ScanNet++ [95], CO3D-v2 [49], Waymo [68], WildRGBD [83], and DL3DV [39].使用 8 个视图作为输入进行训练。在 64 个 NVIDIA A800 GPU 上训练 200 个 epoch,输入分辨率为 512×384,总训练时间约为 14 天

第一阶段:先训练几何估计网络和相机姿态估计器(不包含高斯回归头),训练约 7 天,每个 GPU 的批量大小为 8。

第二阶段:引入高斯回归头,同时冻结粗略相机姿态估计器,训练约 7 天,每个 GPU 的批量大小减少为 4。

3.2 pose估计

评估指标

使用三个指标评估相机姿态估计的准确性:

AUC:计算不同角度阈值下的准确率曲线下面积,通过比较预测姿态与真实姿态的角度差异来确定准确率。

RRA(相对旋转准确率):测量旋转角度差异。

RTA(相对平移准确率):测量平移角度差异。

3.3 稀疏视角重建

        通过两阶段几何学习范式,利用相机姿态作为几何先验,减少了噪声并提高了重建精度。

评估指标

  • 使用 精度(accuracy) 和 完整性(completion) 指标评估点云质量。

  • 这些指标用于衡量重建点云与真实点云之间的几何一致性和覆盖范围。

3.4. NVS

        本文方法不依赖精确的相机姿态,使其在现实场景中更具适用性。通过联合优化几何和外观任务,本文方法在 PSNR、SSIM 和 LPIPS 指标上均优于基线方法。

评估指标

  • 在 RealEstate10K 和 DL3DV 数据集上,使用以下指标评估渲染质量:

    • PSNR(峰值信噪比):衡量渲染图像与真实图像之间的像素级差异。

    • SSIM(结构相似性):衡量渲染图像与真实图像在结构上的相似性。

    • LPIPS(学习感知图像块相似性):通过深度学习模型衡量渲染图像与真实图像在感知上的差异。


网站公告

今日签到

点亮在社区的每一天
去签到