跳转至

Boost 3D Reconstruction using Diffusion-based Monocular Camera Calibration

会议: ICCV 2025
arXiv: 2411.17240
代码: https://github.com/JunyuanDeng/DM-Calib
领域: 3D视觉 / 相机标定 / 扩散模型
关键词: 单目相机标定, Camera Image, 扩散模型先验, 度量深度估计, 稀疏视角重建

一句话总结

提出DM-Calib——基于扩散模型的单目相机内参估计方法:设计Camera Image表示(将内参无损编码为3通道图像=方位角+仰角+灰度图),微调Stable Diffusion生成Camera Image,用RANSAC提取内参,在5个零样本数据集上超越所有基线,并将相机标定扩展到度量深度估计、位姿估计和稀疏视角3D重建。

背景与动机

单目相机标定是病态问题,传统方法依赖曼哈顿世界假设或标定板等强先验,泛化差。学习方法受限于训练数据量。扩散模型隐式理解焦距与图像内容的关系(长焦→浅景深/压缩感,广角→夸张透视),这一先验知识可用于相机标定。

核心问题

如何将扩散模型中隐含的成像先验有效提取出来,用于高精度单目相机内参估计?关键挑战:数值相机参数(f_x,f_y,c_x,c_y)不适合与图像扩散模型直接结合。

方法详解

整体框架

输入RGB图像 → VAE编码RGB潜在码 → 同时用Camera Image表示编码GT内参 → 加噪到Camera Image潜在码 → 条件UNet去噪预测Camera Image → VAE解码 → RANSAC从Camera Image提取内参(f_x,f_y,c_x,c_y)

关键设计

  1. Camera Image表示: 将内参编码为3通道"图像":通道1=arctan(r1/r3)(方位角),通道2=arccos(r2)(仰角),通道3=灰度图。保留输入图像的高频细节→减小与真实图像的域差距→VAE编解码误差极小。对比:incidence map与真实图像域差距大。
  2. RANSAC内参提取: Camera Image每个像素编码一个光线方向。任意两个像素→一个线性方程组(tan(θ)·f_x+c_x=u)。RANSAC对所有像素拟合直线→斜率=焦距,截距=光心。
  3. 度量深度扩展: 将Camera Image作为UNet的条件输入,单步确定性前向推理(非多步去噪),同时训练VAE解码器。实现了首个基于扩散模型先验的度量深度估计。

损失函数 / 训练策略

  • 内参估计:v-prediction loss + multi-resolution noise
  • 度量深度:L = ||M ⊙ (D(U(z_x, z_c)) - d)||
  • 内参: AdamW, lr=3e-5, 30K iterations, BS=196, 8×A800
  • 深度: 同优化器, BS=96, ~5天训练

实验关键数据

零样本相机标定(焦距误差e_f↓)

方法 Waymo RGBD ScanNet MVS Scenes11 Average
WildCame 0.210 0.097 0.128 0.170 0.170 0.155
DiffCalib 0.188 0.092 0.089 0.135 0.108 0.122
DM-Calib best best 0.089 best best best

稀疏视角3D重建(相对距离误差)

Scene1 Scene2 Scene3 Scene4
w/o内参 1.67 0.87 1.03 1.43
w/内参(DM-Calib) 1.37 0.68 0.68 1.06

重建误差降低~20%

消融实验要点

  • Camera Image(θ,φ,g) > (θ,φ,θ): e_f从24.36°降至~4°
  • 多分辨率噪声: 进一步降低误差
  • 度量深度: 去掉Camera Image条件→δ1从85.8降至83.8
  • 单步推理 vs 多步: 单步更好(多步+稀疏GT训练困难)
  • Fine-tune VAE解码器: 对度量深度至关重要

亮点

  • Camera Image设计: 关键洞察是在第三通道放灰度图减小域差距,使VAE编解码误差可忽略——看似简单但实验证明差异巨大
  • RANSAC提取内参: 将稠密Camera Image→4个标量的映射变为简单的直线拟合问题,既鲁棒又高效
  • 扩散模型懂焦距: SD模型确实理解不同焦距的成像特征(Fig.1的长焦vs短焦生成),这个发现本身就有价值
  • 内参→度量深度: 有了准确内参,仿射不变深度可以升级为度量深度——一个被忽视的关键环节

局限性 / 可改进方向

  • 超广角(小焦距)图像效果下降——训练数据中广角少
  • 推理仍需多步扩散采样(可用few-step方法加速)
  • 度量深度训练仍需LiDAR/RGBD数据的稀疏GT
  • 未处理径向畸变等非针孔相机模型

与相关工作的对比

  • vs DiffCalib: 也用扩散模型但生成incidence map→域差距大,且需与depth联合训练;DM-Calib的Camera Image更兼容扩散模型且独立训练
  • vs WildCame/GeoCalib: 非扩散方法,依赖几何特征(消失点等),泛化性差
  • vs UniDepth: 联合训练内参和深度,但相互干扰导致内参精度下降

启发与关联

  • 扩散模型先验用于3D几何任务的范式值得学习
  • Camera Image的设计思路(将非图像信号编码为图像格式以利用预训练扩散模型)具有广泛适用性
  • 内参估计对任何需要从野外图片做3D重建的管线都是关键
  • 相关idea: 扩散模型幻想视角增强3DGS——同样利用扩散模型先验辅助3D重建,DM-Calib的内参估计可为其提供更准确的相机几何约束
  • 相关idea: 轻量级视觉错觉深度融合——DM-Calib的度量深度模块可作为其单目深度输入的替代方案

评分

  • 新颖性: ⭐⭐⭐⭐⭐ Camera Image表示+扩散先验用于标定的idea新颖优雅
  • 实验充分度: ⭐⭐⭐⭐⭐ 标定+深度+位姿+重建+度量全覆盖,5个零样本数据集
  • 写作质量: ⭐⭐⭐⭐ 方法描述清晰,VAE重构误差分析有说服力
  • 对我的价值: ⭐⭐⭐⭐⭐ 将非视觉信号编码为图像格式以利用扩散先验的范式非常有启发