【自监督深度补全】论文解读:Self-Supervised Depth Completion Guided by 3D Perception and Geometry Consistency
【自监督深度补全】Self-Supervised Depth Completion Guided by 3D Perception and Geometry Consistency
-
1. 摘要
-
2. 方法
-
- 2.1 总体架构
- 2.2 3D感知空间传播
- 2.3 多视几何一致性
- 2.4 损失函数
-
3. 实验结果
1. 摘要
本文提出了一种高精度的自监督深度补全方法,通过3D感知特征和多视几何一致性来实现。该方法使用3D感知空间传播算法与点云表示和注意力加权机制,捕获更合理的邻域特征,同时在深度传播过程中优化模型。实验结果表明,该方法在 NYU-Depth-v2 和 VOID 数据集上相比其他无监督方法表现更优,并与一些有监督方法达到竞争水平。
2. 方法

2.1 总体架构
本文提出了一种基于多视几何一致性的自监督框架,该框架结合了由注意力加权机制引导的3D感知空间传播网络,可以获得更高质量的深度补全结果。总体架构如图1所示:
- 首先,使用编码器-解码器网络联合学习初始深度图 D_0 和亲和矩阵 A_0。
- 接着,将从初始深度图 D_0 获取的3D位置信息与亲和矩阵进行拼接。
- 在迭代优化阶段,拼接后的信息进入空间传播网络,指导模型优化,最终生成密集深度预测。为了在第 t 步(t = 1, 2, 3...)获取当前深度预测 D_t,使用上一步的深度预测 D_{t-1} 重新构建点云,结合3D位置信息进行亲和矩阵的拼接。最后,通过带有注意力加权机制的空间传播动态更新深度预测。
在训练阶段,通过显式结合相邻视图之间的几何约束实现自监督学习,而在测试阶段,仅需单视图RGB图像和稀疏深度测量。
2.2 3D感知空间传播
大多数之前的空间传播网络仅考虑2D图像信息作为深度补全的指导,导致了混合深度的问题。虽然NLSPN方法通过研究2D平面中的非局部邻居缓解了这一问题,但忽略了3D结构信息会导致邻居估计不准确和空间传播错误。
为了将几何约束显式集成到空间传播中,我们需要在每次传播步骤之后,将深度预测投影到3D空间,结合相机内部参数 K 进行操作:
\left[\begin{array}{c} u \\ v \\ w \\ 1 \end{array}\right] = d \cdot \left[\begin{array}{cccc} 1 / f_x & 0 & -c_x / f_x & 0 \\ 0 & 1 / f_y & -c_y / f_y & 0 \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \end{array}\right] \cdot \left[\begin{array}{c} x \\ y \\ 1 \\ 1 / d \end{array}\right]
其中 (x, y) 和 (u, v, w) 分别为2D平面和3D空间中的中心坐标,d 表示每次传播中的深度预测,f_x, f_y, c_x, c_y 是相机的内部参数。
获取3D表示后,利用 k-近邻算法(KNN)在3D空间中找到中心补丁的 k 个最近邻居。邻居的选择通过计算3D欧氏距离来确定。每次传播迭代中,每个邻居都会重新评估,以减轻来自不相关邻居的错误累积。
在特征更新过程中引入注意力加权机制,注意力系数 \beta_{i,j} 通过以下公式计算:
\beta_{i, j}=\frac{\exp (\psi(x_i \| x_j))}{\sum_{k \in \hat{N}^{t+1}(i) \cup i} \exp (\psi(x_i \| x_k))}
其中 \psi 表示一个参数化的多层感知器(MLP)神经网络,\| 表示拼接操作。注意力加权机制有效地防止在迭代传播期间不合理深度预测的错误传播。
最终,空间传播过程如下:
x_{i}^{t+1} = \beta_{i, i} \phi_i(x_i^t) + \sum_{j \in \hat{N}^{t+1}(i)} \beta_{i, j} \phi_j(x_i^t \| (x_j^t - x_i^t))

2.3 多视几何一致性

为了实现自监督训练,本研究探讨了多视几何一致性的利用。相对于 RGB 基于的估计方法,该框架通过SIFT特征提取和 KNN 匹配在RGB图像和稀疏深度测量之间建立特征匹配关系。
相邻视图之间的几何一致性通过投影变换公式计算得到:
p_i = K T_{j \rightarrow i} D_{i}^{t}(I_j) K^{-1} p_j
在静态环境条件下,投影后的图像与当前RGB图像的相似度较高。在训练阶段,通过最小化投影图像与当前图像之间的误差,可以减少深度预测误差。
2.4 损失函数
本文提出的自监督框架在训练时通过明确结合相邻视图之间的几何约束实现,而无需任何真实数据。在训练过程中,通过附加的监督信号引入额外的监督,以加速训练过程。
MSE损失函数如下:
L_{\text{MSE}} = \frac{1}{N_v} \left\| \mathbb{1}_{D_s > 0} \cdot (D_i^t - D_s) \right\|_2^2
几何一致性损失函数如下:
L_{\text{GC}} = \sum_{s \in S} \frac{1}{s} \left| \mathbb{1}_{(D_s^{(s)} == 0)} \cdot (\text{warp}(I_j^{(s)}) - I_i^{(s)}) \right|
梯度损失函数定义如下:
L_{\text{GD}} = \left| \nabla^2 D_i^t \right|
最终损失函数如下:
L_{\text{Self}} = L_{\text{MSE}} + \gamma_1 L_{\text{GC}} + \gamma_2 L_{\text{GD}}
本文提出的自监督框架在深度补全任务中表现优异,并通过3D感知空间传播机制和多视几何一致性显著提升了模型的性能。
3. 实验结果



