近日,卡内基梅隆大学(Carnegie Mellon University)的研究团队在动态场景重建领域取得重要进展。其发表于ICCV 2025的论文《MonoFusion: Sparse-View 4D Reconstruction via Monocular Fusion》提出创新方法MonoFusion 。该方法突破常规,仅需少量(如4个)稀疏视角相机,便能对弹钢琴、修理自行车这类复杂人体行为实现高质量4D重建。它巧妙避开稀疏视角下直接重建的难点,通过融合各相机独立的单目重建结果,在全新视角渲染方面展现出超越以往技术的显著优势,为相关领域发展带来新契机。
另外我整理了ICCV 2025计算机视觉相关论文,感兴趣的dd!
论文这里
2. 【论文基本信息】
- 论文标题:MonoFusion: Sparse-View 4D Reconstruction via Monocular Fusion
- 论文链接:https://arxiv.org/pdf/2507.23782v1
- 项目代码链接:https://github.com/ImNotPrepared/MonoFusion
- 核心模块:
- 3D Gaussian Scene Representation(3D高斯场景表示模块)
- Space-Time Consistent Depth Initialization(时空一致的深度初始化模块)
- Grouping-based Motion Initialization(基于分组的运动初始化模块)
- Optimization(优化模块)
3. 【算法创新点】
3.1 时空一致的深度初始化方法
通过将单目深度预测与多视图一致的点图对齐,解决单目深度估计在尺度和偏移上的不一致问题,利用静态背景的时间一致性进行优化,并针对高斯尺度初始化和密度问题提出改进策略。
3.2 基于特征聚类的运动初始化机制
采用特征聚类构建运动基,通过DINOv2提取像素级特征并进行聚类,使语义相似的场景部分运动一致,避免了基于噪声3D轨迹初始化的缺陷,提高了运动估计的鲁棒性。
3.3 结合多种损失的联合优化策略
融合光度损失、刚性损失等多种损失函数,同时考虑 photometric 监督、数据驱动先验以及对几何和运动的正则化,有效避免在稀疏视图设置中陷入不良局部最小值。
4. 【算法框架与核心模块】
4.1 算法框架
MonoFusion旨在从稀疏视图(3-4个)视频中恢复动态3D场景的几何和运动信息。整体流程为:首先以规范3D高斯模型表示场景,这些高斯通过运动基的线性组合实现平移和旋转;接着通过对齐多视图的几何预测初始化一致的场景几何,并通过聚类从2D基础模型提取的3D语义特征初始化运动轨迹;最后通过联合优化同时恢复几何和运动信息,最终得到可用于渲染新视图的4D场景表示。
4.2 核心模块
4.2.1 3D Gaussian Scene Representation(3D高斯场景表示)
采用3D Gaussian Splatting表示动态3D场景的几何和外观,每个高斯在规范帧 t 0 t_0 t0中由 ( x 0 , R 0 , s , α , c ) (x_0, R_0, s, \alpha, c) (x0,R0,s,α,c)参数化,其中 x 0 ∈ R 3 x_0 \in \mathbb{R}^3 x0∈R3是位置, R 0 ∈ S O ( 3 ) R_0 \in \mathbb{SO}(3) R0∈SO(3)是方向, s ∈ R 3 s \in \mathbb{R}^3 s∈R3是尺度, α ∈ R \alpha \in \mathbb{R} α∈R是不透明度, c ∈ R 3 c \in \mathbb{R}^3 c∈R3是颜色。位置和方向随时间变化,而尺度、不透明度和颜色保持不变。此外,每个高斯还被分配一个语义特征 f ∈ R N f \in \mathbb{R}^N f∈RN( N = 32 N=32 N=32)。对于第i个3D高斯,可优化的属性为 Θ ( i ) = { x 0 ( i ) , R 0 ( i ) , s ( i ) , f ( i ) } \Theta^{(i)} = \{x_0^{(i)}, R_0^{(i)}, s^{(i)}, f^{(i)}\} Θ(i)={x0(i),R0(i),s(i),f(i)},并通过基于瓦片的光栅化过程从给定相机渲染出RGB图像和特征图。
4.2.2 Space-Time Consistent Depth Initialization(时空一致的深度初始化)
- 多视图点图预测:使用DUSt3R在时间t的多视图图像上预测多视图一致的点图,通过已知相机参数将点图投影回图像计算深度图,公式为 d k t ( u , v ) [ u v 1 ] T = K k P k χ k t ( u , v ) d_k^t(u, v) \begin{bmatrix} u & v & 1 \end{bmatrix}^T = K_k P_k \chi_k^t(u, v) dkt(u,v)[uv1]T=KkPkχkt(u,v),得到的深度在度量尺度上多视图一致,但时间上不一致。
- 单目深度与多视图一致点图的时空对齐:以DUSt3R的多视图深度图为度量目标,对齐单目深度预测 m k t ( u , v ) m_k^t(u, v) mkt(u,v),通过最小化误差 a r g m i n { a k t , b k t } ∑ t = 1 T ∑ k = 1 K ∑ u , v ∈ B G k t ∥ ( a k t m k t ( u , v ) + b k t ) − d k t ( u , v ) ∥ 2 \underset{\{a_k^t, b_k^t\}}{arg\ min} \sum_{t=1}^T \sum_{k=1}^K \sum_{u, v \in BG_k^t} \left\| (a_k^t m_k^t(u, v) + b_k^t) - d_k^t(u, v) \right\|^2 {akt,bkt}arg min∑t=1T∑k=1K∑u,v∈BGkt∥(aktmkt(u,v)+bkt)−dkt(u,v)∥2确定尺度和偏移因子 a k t a_k^t akt、 b k t b_k^t bkt,并利用背景点的时间静态性,用时间平均或规范参考时间戳的静态目标 d k ( u , v ) d_k(u, v) dk(u,v)替代 d k t ( u , v ) d_k^t(u, v) dkt(u,v),得到时间和视图一致的深度图并反投影为3D点图。
- 优化:针对高斯尺度初始化问题,基于投影像素面积初始化,公式为 s c a l e = d 0.5 ( f x + f y ) scale = \frac{d}{0.5(f_x + f_y)} scale=0.5(fx+fy)d;针对高斯密度不足问题,每个输入像素初始化5个高斯。
4.2.3 Grouping-based Motion Initialization(基于分组的运动初始化)
- 运动模型:将动态3D场景建模为规范3D高斯集合及随时间变化的刚性变换 S E ( 3 ) SE(3) SE(3),从规范空间到时间t的变换为 x t = R 0 → t x 0 + t 0 → t x_t = R_{0 \to t} x_0 + t_{0 \to t} xt=R0→tx0+t0→t, R t = R 0 → t R 0 R_t = R_{0 \to t} R_0 Rt=R0→tR0。
- 运动基:动态场景的3D运动是低维的,由刚性运动单元组成,时间变化的刚性变换表示为基轨迹的加权组合,公式为 T 0 → t ( i ) = ∑ b = 1 B w ( i , b ) T 0 → t ( i , b ) T_{0 \to t}^{(i)} = \sum_{b=1}^B w^{(i, b)} T_{0 \to t}^{(i, b)} T0→t(i)=∑b=1Bw(i,b)T0→t(i,b)。
- 基于特征聚类的运动基:通过DINOv2提取输入图像的像素级特征,经PCA降维到32维,对每个点的特征进行k均值聚类得到初始3D点簇,设置运动基权重 w ( i , b ) w^{(i, b)} w(i,b)为簇中心与3D高斯中心的L2距离,初始化基轨迹 T 0 → t ( b ) T_{0 \to t}^{(b)} T0→t(b)为单位矩阵并通过可微渲染优化。
4.2.4 Optimization(优化)
- 重建损失:在每个训练步骤,采样随机时间步t和相机k,渲染图像、掩码、特征和深度,计算重建损失 L r e c o n = ∥ I ^ − I ∥ 1 + λ m ∥ M ^ − M ∥ 1 + λ f ∥ F ^ − F ∥ 1 + λ d ∥ D ^ − D ∥ 1 \mathcal{L}_{recon} = \|\hat{I} - I\|_1 + \lambda_m \|\hat{M} - M\|_1 + \lambda_f \|\hat{F} - F\|_1 + \lambda_d \|\hat{D} - D\|_1 Lrecon=∥I^−I∥1+λm∥M^−M∥1+λf∥F^−F∥1+λd∥D^−D∥1。
- 刚性损失:对随机采样的动态高斯及其k个最近邻施加刚性损失,公式为 L r i g i d = ∑ n e i g h b o r s i ∥ X ^ t − X ^ t ( i ) ∥ 2 2 − ∥ X ^ t ′ − X ^ t ′ ( i ) ∥ 2 2 \mathcal{L}_{rigid} = \sum_{neighbors\ i} \left\| \hat{X}_t - \hat{X}_t^{(i)} \right\|_2^2 - \left\| \hat{X}_{t'} - \hat{X}_{t'}^{(i)} \right\|_2^2 Lrigid=∑neighbors i X^t−X^t(i) 22− X^t′−X^t′(i) 22。
4.3 模块配置
- 优化器使用Adam,前景使用18k个高斯,背景使用1.2M个高斯,SE(3)运动基数量固定为28,通过特征聚类获得。
- 深度对齐使用置信度阈值95%以上的点,在7个10秒长、30fps、分辨率512×288的序列上进行实验,单个NVIDIA A6000 GPU训练约30分钟,渲染速度约30fps。
5.【适用任务】
5.1 动态场景的稀疏视图4D重建
- 适用场景:从少量(3-4个)稀疏分布的静态相机拍摄的视频中重建动态场景,如修理自行车、跳舞、弹钢琴、进行心肺复苏等人类动态行为场景,可应用于AR/VR、自动驾驶、机器人等领域。
- 核心作用:解决密集多视图重建方法成本高、难以适应野外多样化场景的问题,通过对齐独立单目重建结果,生成时间和视图一致的动态场景重建结果,实现对动态场景几何和运动信息的恢复。
5.2 新视图渲染
- 适用场景:为重建的动态场景渲染全新视角的视图,尤其是在视图间重叠有限的稀疏视图设置下,如渲染与训练视图成45°角的新视图等场景。
- 核心作用:相比现有技术,能在渲染新视图时实现更高质量的重建,更好地呈现动态前景的运动和场景细节,提升新视图渲染的准确性和真实性。
5.3 动态人类行为重建
- 适用场景:针对野外捕捉的具有完整场景覆盖范围的稀疏视图视频,重建人类的熟练行为,如体育活动、烹饪、音乐演奏等场景。
- 核心作用:突破传统方法对密集相机设置的依赖,利用稀疏视图相机实现对复杂人类动态行为的高质量重建,为相关行为分析和研究提供支持。
6.【实验结果与可视化分析】
6.1 实验设置与数据集
- 数据集:在Panoptic Studio和Ego-Exo4D的子集ExoRecon上进行实验。Panoptic Studio是一个大规模多视图捕捉系统,包含480个视频流,实验从中选取4个呈90°分布的相机视图作为训练视图,4个呈45°分布的中间相机视图用于评估45°新视图合成;ExoRecon则是从Ego-Exo4D中选取的包含6种场景(舞蹈、运动、自行车修理、烹饪、音乐、医疗)的子集,每个场景提取300帧同步RGB视频流,由4个已知参数的相机拍摄。
- 实现细节:使用Adam优化器,前景采用18k个高斯,背景采用1.2M个高斯,SE(3)运动基数量固定为28且通过特征聚类获得,深度对齐使用置信度阈值95%以上的点。在7个10秒长、30fps、分辨率512×288的序列上实验,单个NVIDIA A6000 GPU训练约30分钟,渲染速度约30fps。
- 评估指标:采用PSNR、SSIM、LPIPS评估感知质量,AbsRel评估深度几何质量,mask IoU评估动态前景轮廓质量,这些指标在整个图像和仅前景区域分别计算。
6.2 与现有技术的对比结果
held-out视图合成评估:在Panoptic Studio和ExoRecon数据集上,MonoFusion在PSNR、SSIM、LPIPS、AbsRel等指标上均优于SOM、Dyn3D-GS、MV-SOM等基线方法。例如在Panoptic Studio的动态区域,MonoFusion的PSNR为27.52,高于Dyn3D-GS的26.11和MV-SOM的26.80;在ExoRecon的全帧评估中,其PSNR达30.43,显著高于其他方法。
45°新视图合成评估:在Panoptic Studio上,针对与训练视图至少成45°的新视图,MonoFusion的各项指标仍领先于基线,PSNR为25.73,SSIM为0.847,LPIPS为0.158,AbsRel为0.188,且渲染的RGB图像与真实值高度接近,而其他基线在极端新视图上表现不佳。
定性结果:在ExoRecon的多个场景(如医疗、烹饪、舞蹈等)中,MonoFusion渲染的RGB图像和深度图在动态前景运动插值和新视图生成上质量更高,有效避免了Dyn3D-GS的几何约束不足和MV-SOM的前景重复等问题。
6.3 消融实验结果
各组件的影响:时空一致的深度初始化使PSNR提升3.4,对学习准确的场景几何和外观至关重要;特征度量损失虽降低PSNR,但提高了mask IoU,有助于学习前景运动和轮廓;基于特征聚类的运动基进一步优化了场景重建,使PSNR达30.40,IoU达0.81。
运动基设计对比:在4相机稀疏视图设置中,基于特征的运动基比基于速度的运动基表现更好,因后者受噪声前景深度估计影响大,而前者从更可靠的图像级观测初始化特征,对噪声3D初始化更稳健,能迫使语义相似部分运动一致。
运动基数量影响:当运动基数量少于20时,重建易出现缺陷(如缺失手臂、腿部合并);实验中28个运动基的设计能有效处理不同场景动态,且增加数量未观察到性能下降。
7.【总结展望】
7.1 总结
该研究针对稀疏视图视频的动态场景重建问题,提出了MonoFusion方法,通过四个等距向内的静态相机实现对动态人类行为的重建。其核心是将各相机的独立单目重建结果进行仔细对齐,生成时间和视图一致的动态场景重建,巧妙解决了密集多视图方法成本高、难以适应野外场景的问题。通过在Panoptic Studio和Ego-Exo4D数据集上的实验,证明了该方法在渲染新视图时质量优于现有技术,尤其在45°极端新视图合成上表现突出,且通过消融实验验证了时空一致深度初始化、特征度量损失和基于特征聚类的运动基等组件的有效性。
7.2 展望
未来将致力于解决当前方法的局限性,一方面,针对依赖2D基础模型估计先验(如深度和动态掩码)可能导致的渲染问题,计划从基础模型中提取动态掩码或从图像级先验中推断动态掩码;另一方面,鉴于现有前馈深度估计网络在动态场景中对人类深度估计不准确的问题,打算进一步在现有的动态人类数据集上微调DUSt3R或MonST3R,以提升深度预测质量,从而完善稀疏视图4D重建效果。
8.【项目速通指南】
MonoFusion 使用说明
安装步骤
克隆代码仓库并更新子模块:
git clone --recurse-submodules https://github.com/ImNotPrepared/MonoFusion
进入项目目录:
cd MonoFusion/
创建并激活conda环境:
conda create -n monofusion python=3.10
conda activate monofusion
根据实际的CUDA版本更新requirements.txt中PyTorch和cuUML的配置,例如将cu122和cu12替换为对应的版本。
安装依赖包:
pip install -r requirements.txt
pip install git+https://github.com/nerfstudio-project/gsplat.git
使用方法
项目团队深知数据处理过程可能复杂且耗时。该解决方案简化了这一工作流程——只需一次运行,就能获得经过校正、同步的稀疏视图数据,以及所有必要的先验信息。
获取Ego-Exo4D访问权限
要使用Ego-Exo4D数据,请遵循以下步骤:
获取许可:在https://docs.ego-exo4d-data.org/getting-started/获取Ego-Exo4D的许可。
下载VRS文件:下载包含特定场景RGB流的VRS文件:
egoexo -o <output_directory> --parts take_vrs --uids <uid1>
注意:VRS文件是确保数据流同步所必需的。
- 提取图像:从VRS序列中提取校正后的图像:
viewer_map --vrs aria01.vrs --task vis --resize 512
默认的缩放分辨率为512像素。
预处理
项目提供了一键式先验生成脚本,可保存深度图、人体掩码、dino特征和2D轨迹:
./fetch_priors.sh