深入浅出3D感知中的优化与基于学习的技术1(原创系列)

近期几乎看了所有有关NERF技术论文,本身我研究的领域不在深度学习技术方向,是传统的机器人控制和感知。所以总结了下这部分基于学习的感知技术,会写一个新的系列教程讲解这部分三维感知技术的发展到最新的技术细节,并支持自己最近的项目开发和论文。本系列禁止转载,有技术探讨可以发邮件给我 fanzexuan135@163.com

深入浅出3D感知中的优化与学习技术

1 引言

3D感知是计算机视觉和机器人领域的一个核心问题,旨在从2D图像恢复场景的3D结构和运动。它在自动驾驶、虚拟/增强现实、智能制造等许多领域有着广泛应用。传统的3D感知算法大多基于几何视觉的理论,通过精心建模和优化来求解相机位姿、场景结构等几何量。而近年来,深度学习的崛起为3D感知问题带来了新的思路和活力。本文将对3D感知中的经典优化方法和深度学习方法进行综述和对比,并重点介绍一些将二者结合的新进展,让读者对这一领域的基本概念和前沿成果有一个全面的了解。

2 将3D感知问题建模为优化问题

在3D感知的诸多任务中,如相机定位、稠密重建、非刚性形变估计等,我们面临的核心问题往往可以表述为一个优化问题:
min ⁡ x ∈ X E ( x ; y ) ( 1 ) \min\limits_{x \in X} E(x; y) \qquad (1) xXminE(x;y)(1)

其中 y y y表示输入的观测数据(如一组图像),而 x x x表示我们感兴趣的几何量(如相机位姿、场景深度),构成了优化变量。 X X X表示 x x x的可行域,囊括了我们对 x x x已知的先验知识(如相机姿态必须是刚体变换)。 E ( x ; y ) E(x; y) E(x;y)是一个衡量 x x x y y y匹配程度的目标函数(或代价函数),可以分解为数据项和正则项两部分:
E ( x ; y ) = D ( x ; y ) + R ( x ) ( 2 ) E(x; y) = D(x; y) + R(x) \qquad (2) E(x;y)=D(x;y)+R(x)(2)

数据项 D ( x ; y ) D(x; y) D(x;y)度量了在当前估计 x x x下,观测数据 y y y的拟合/重投影误差,反映了 x x x y y y的解释能力。以双目立体匹配为例,若 y y y为左右两帧图像,而 x x x为像素的视差值,则数据项可以定义为:
D ( x ; y l , y r ) = ∑ p ρ ( y l ( p ) , y r ( p − [ x ( p ) , 0 ] T ) ) ( 3 ) D(x; y_l, y_r) = \sum_p \rho\Big( y_l(p), y_r\big(p - [x(p), 0]^T\big) \Big) \qquad (3) D(x;yl,yr)=pρ(yl(p),yr(p[x(p),0]T))(3)

其中 p p p遍历所有像素, ρ ( ⋅ ) \rho(\cdot) ρ()为某种颜色/梯度constancy误差度量。这个数据项的意义是:在估计的视差 x x x下,将左图 y l y_l yl的像素 p p p投影到右图 y r y_r yr,若视差正确,则左右图像的局部外观应该一致。

正则项 R ( x ) R(x) R(x)通常基于一些先验假设,对 x x x施加额外约束,鼓励解具有某些良好性质。以稠密重建为例,我们通常假设相邻像素的深度值是接近的(分段光滑),于是可以定义一个鼓励深度图光滑的正则项:
R ( x ) = ∑ p ∥ ∇ x ( p ) ∥ 1 ( 4 ) R(x) = \sum_p \|\nabla x(p)\|_1 \qquad (4) R(x)=p∥∇x(p)1(4)

其中 p p p遍历像素, ∇ x ( p ) \nabla x(p) x(p)为深度图在 p p p处的梯度。

求解优化问题(1),得到的 x ∗ x^* x就是在观测数据 y y y下对真实几何量 x ^ \hat{x} x^的最大后验估计(MAP):
x ∗ = arg ⁡ max ⁡ x P ( x ∣ y ) = arg ⁡ max ⁡ x P ( y ∣ x ) P ( x ) ( 5 ) x^* = \arg\max_x P(x|y) = \arg\max_x P(y|x) P(x) \qquad (5) x=argxmaxP(xy)=argxmaxP(yx)P(x)(5)

换言之,优化求解的过程可以看作是在先验( R ( x ) R(x) R(x))和似然( D ( x ; y ) D(x; y) D(x;y))之间寻求平衡,得到后验概率最大的估计值。

当目标函数是凸的,且其梯度/Hessian矩阵容易计算时,优化问题可以用牛顿法、高斯牛顿法、梯度下降等经典算法有效求解。然而,3D感知问题的目标函数往往是高度非线性和非凸的,优化变量 x x x所在的空间(如李群流形SE(3))也可能是非欧的,这给问题的求解带来很大挑战。

3 经典的优化算法及其局限性

针对非线性最小二乘型的3D感知问题,高斯牛顿法是最常用的优化算法。它在当前估计点 x k x_k xk处,对目标函数 E ( x ) E(x) E(x)做二阶泰勒展开:
E ( x ) ≈ E ( x k ) + J ( x k ) Δ x + 1 2 Δ x T H ( x k ) Δ x ( 6 ) E(x) \approx E(x_k) + J(x_k) \Delta x + \frac{1}{2} \Delta x^T H(x_k) \Delta x \qquad (6) E(x)E(xk)+J(xk)Δx+21ΔxTH(xk)Δx(6)

其中 J ( x k ) = ∂ E ∂ x ∣ x = x k J(x_k) = \frac{\partial E}{\partial x}|_{x=x_k} J(xk)=xEx=xk E E E x k x_k xk处的Jacobian矩阵, H ( x k ) = ∂ 2 E ∂ x 2 ∣ x = x k ≈ J ( x k ) T J ( x k ) H(x_k) = \frac{\partial^2 E}{\partial x^2}|_{x=x_k} \approx J(x_k)^T J(x_k) H(xk)=x22Ex=xkJ(xk)TJ(xk)为近似的Hessian矩阵。高斯牛顿法通过求解如下线性方程来生成更新步长 Δ x k \Delta x_k Δxk:
H ( x k ) Δ x k = − J ( x k ) T r ( x k ) ( 7 ) H(x_k) \Delta x_k = -J(x_k)^T r(x_k) \qquad (7) H(xk)Δxk=J(xk)Tr(xk)(7)

其中 r ( x k ) : = D ( x ; y ) ∣ x = x k r(x_k) := D(x; y)|_{x=x_k} r(xk):=D(x;y)x=xk为数据项的残差。然后用 Δ x k \Delta x_k Δxk更新当前估计:
x k + 1 = x k ⊞ Δ x k ( 8 ) x_{k+1} = x_k \boxplus \Delta x_k \qquad (8) xk+1=xkΔxk(8)

直到 Δ x k \Delta x_k Δxk足够小。这里的 ⊞ \boxplus 表示在流形空间(如SE(3))上的加法。注意 ( 7 ) (7) (7)是个高维稀疏线性系统,可用Cholesky分解或预条件共轭梯度等方法高效求解。

当目标函数局部可以很好地用二次函数近似时,高斯牛顿法具有二阶收敛速度。然而它也有一些局限性:

  1. 在最优解附近,目标函数的Hessian阵必须是正定的,否则 ( 7 ) (7) (7)不保证有解。

  2. Jacobian矩阵 J ( x k ) J(x_k) J(xk)中的某些项可能在数值上或理论上难以定义/求导,如光度误差对姿态变量的导数。

  3. 算法容易停留在局部极小值,缺乏全局视野。

  4. 若目标函数含有非光滑的正则项(如 L 1 L_1 L1范数),则Jacobian在奇异点不存在。

一些改进的优化技术如Levenberg-Marquardt方法通过信赖域策略缓解了正定性问题,但其它问题仍然存在。

为了增强鲁棒性,人们常常在数据项中使用截断二次等M估计函数,降低异常值的影响。但这些非凸函数也使得优化更加困难,可能需要更复杂的启发式或全局优化策略。

4 基于深度学习的端到端方法

与经典建模范式不同,深度学习采用了一种数据驱动的端到端方法。其基本思想是:收集一个有代表性的数据集 D = { ( y i , x i ∗ ) } i = 1 N \mathcal{D}=\{(y_i, x_i^*)\}_{i=1}^N D={(yi,xi)}i=1N,其中 y i y_i yi为输入图像, x i ∗ x_i^* xi为图像对应的ground truth几何参数(如深度图、光流场等)。然后训练一个深层神经网络 f θ : y ↦ x f_\theta: y \mapsto x fθ:yx,其参数 θ \theta θ通过最小化如下经验风险而学习得到:
L ( θ ) = ∑ i = 1 N l ( f θ ( y i ) , x i ∗ ) ( 9 ) \mathcal{L}(\theta) = \sum_{i=1}^N l\big(f_\theta(y_i), x_i^*\big) \qquad (9) L(θ)=i=1Nl(fθ(yi),xi)(9)
其中 l ( ⋅ ) l(\cdot) l()为某种loss函数,如 L 1 / L 2 L_1/L_2 L1/L2 loss。这一范式的优点是:

  1. 端到端可微分,不需要人工提取特征或设计目标函数/优化策略。只要定义合适的网络结构和loss函数,就可以从数据中自动学习复杂的映射。

  2. 前向推断速度快,可满足实时性需求。

  3. 可迁移性好。从一个场景学到的泛化能力可迁移到新场景。

以单目深度估计为例,Eigen等[1]首次将CNN应用于该任务。他们在网络的encoder中使用了两个并行的VGG分支分别提取全局和局部特征,decoder采用多尺度架构,在4个spatial resolution下估计深度,并对深度图施加了尺度不变loss和平滑loss。Laina等[2]提出了更深的ResNet架构,并引入了反距离的Berhu loss,取得了更好的效果。

对于光流估计,FlowNet[3]首次证明了深度回归在该任务上的有效性。后续的FlowNet2[4]引入了级联和迭代细化,大幅提升了估计精度。RAFT[5]从另一角度解决该问题,巧妙地将经典的优化过程与深度特征提取相结合,可以看作本文后面要重点介绍的一类混合方法。

尽管深度学习取得了瞩目成绩,但纯端到端的黑盒回归也有其局限性:

  1. 缺乏对几何和物理规律的显式建模,纯数据驱动的学习有时不够稳定,容易受domain gap影响。

  2. 需要大量paired数据做监督训练,在许多3D感知任务上难以获得,labeled数据的稀缺限制了模型的表现。

  3. 不可解释和可控。学习到的映射高度复杂,缺乏可解释性。网络的预测结果不能保证满足一些几何约束。

因此,如何将基于物理的归纳偏置与深度学习的表达能力相结合,已成为新的研究热点。

5 将深度学习嵌入优化过程

一类有前景的混合方法是将深度学习嵌入到传统优化过程中,形成"可学习"、"可微分"的复合层。这类方法在经典优化算法的框架下,用学习的模块替代手工设计的某些部分(如能量/梯度的计算),并端到端训练整个系统。RAFT[5]是这一思想在光流估计任务上的代表作。

与FlowNet等直接回归光流场的方法不同,RAFT明确建模了光流估计中的迭代优化过程。记 I 1 , I 2 \mathcal{I}_1, \mathcal{I}_2 I1,I2为输入的两帧图像,网络的目标是学习一个映射:
f 1 , f 2 , … , f N = R A F T ( I 1 , I 2 ) ( 10 ) f_1, f_2, \dots, f_N = \mathrm{RAFT}(\mathcal{I}_1, \mathcal{I}_2) \qquad (10) f1,f2,,fN=RAFT(I1,I2)(10)
其中 f k ∈ R H × W × 2 f_k \in \mathbb{R}^{H \times W \times 2} fkRH×W×2为第 k k k次迭代估计的光流场。具体来说,RAFT包含三个关键组件:

(1) 特征提取网络,用CNN从输入图像中提取高层特征:
F 1 = F e a t u r e E n c o d e r ( I 1 ) , F 2 = F e a t u r e E n c o d e r ( I 2 ) ( 11 ) \mathbf{F}_1 = \mathrm{FeatureEncoder}(\mathcal{I}_1), \quad \mathbf{F}_2 = \mathrm{FeatureEncoder}(\mathcal{I}_2) \qquad (11) F1=FeatureEncoder(I1),F2=FeatureEncoder(I2)(11)

(2) 相关体计算模块,基于当前估计的光流场 f k f_k fk和特征 F 1 , F 2 \mathbf{F}_1, \mathbf{F}_2 F1,F2构造一个4D相关体:
C k = C o m p u t e C o r r e l a t i o n ( f k , F 1 , F 2 ) ( 12 ) \mathbf{C}_k = \mathrm{ComputeCorrelation}(f_k, \mathbf{F}_1, \mathbf{F}_2) \qquad (12) Ck=ComputeCorrelation(fk,F1,F2)(12)

直观上, C k [ i , j , p , q ] \mathbf{C}_k[i, j, p, q] Ck[i,j,p,q]度量了以 f k [ i , j ] f_k[i, j] fk[i,j]为中心的 I 1 \mathcal{I}_1 I1局部patch与 I 2 \mathcal{I}_2 I2中对应patch的相似性。这一步可以看作传统优化方法中计算匹配代价的过程。

(3) GRU更新单元,迭代细化光流估计:
h k + 1 , f k + 1 = G R U U p d a t e ( f k , h k , C k ) ( 13 ) h_{k+1}, f_{k+1} = \mathrm{GRUUpdate}(f_k, h_k, \mathbf{C}_k) \qquad (13) hk+1,fk+1=GRUUpdate(fk,hk,Ck)(13)

其中 h k h_k hk是隐藏状态, f k + 1 f_{k+1} fk+1是细化后的光流场。这一步可以看作传统优化中的梯度下降更新。但与手工设计的梯度不同,这里的更新方向由数据驱动学习得到。

整个RAFT网络是端到端可训练的,所有参数都通过最小化预测光流场 f N f_N fN与GT光流场 f ∗ f^* f的差异来学习:
L ( θ ) = ∑ i = 1 M ∥ f N ( i ) − f ∗ ( i ) ∥ 1 ( 14 ) \mathcal{L}(\theta) = \sum_{i=1}^M \|f_N^{(i)} - f^{*(i)}\|_1 \qquad (14) L(θ)=i=1MfN(i)f(i)1(14)

RAFT的优点在于,它将学习的连续warp和相关计算嵌入到每一步的迭代更新中,而非单纯堆叠卷积层,赋予了网络更强的归纳偏置。同时,显式建模迭代过程也使得网络更加可解释。实验表明,这一混合范式在准确性和泛化性方面都优于纯端到端的回归方法。

类似地,BA-Net[6]以及LM-Reloc[7]将深度学习引入SLAM后端优化中。它们用学习的网络模块替代了传统的 bundle adjustment (BA) 流程中的某些手工设计部分,如:

(1) 在Pose-Graph优化中,用GNN预测每条边的信息矩阵,作为Mahalanobis距离的权重[6];

(2) 在特征点BA中,用CNN预测每对匹配的置信度,作为Huber损失的权重[7]。

这些学习的模块可以看作是传统目标函数的"插件",使优化过程更加自适应和数据驱动。实验表明,嵌入学习模块的SLAM系统在准确性、鲁棒性方面都有明显提升。

6 将优化嵌入深度学习

与上一节"learning in optimization"的思路互补,另一类混合范式是将优化模块嵌入到深度网络中,形成端到端可训练的"可微分优化层"。这类方法用可微分的优化层(用内部迭代求解一个隐式函数)替代网络中的某些前馈层,使网络输出自动满足一些硬约束。

以经典的PnP问题为例,已知一组3D点 { X i } \{\mathbf{X}_i\} {Xi}在世界坐标系下的坐标和它们在相机中的2D投影 { x i } \{\mathbf{x}_i\} {xi},估计相机的位姿 T ∈ S E ( 3 ) \mathbf{T} \in \mathrm{SE}(3) TSE(3)。传统的DLT、P3P等解法先建立目标函数:
E ( T ) = ∑ i = 1 N ∥ π ( T X i ) − x i ∥ 2 ( 15 ) E(\mathbf{T}) = \sum_{i=1}^N \|\pi(\mathbf{T}\mathbf{X}_i) - \mathbf{x}_i\|^2 \qquad (15) E(T)=i=1Nπ(TXi)xi2(15)

其中 π : P 3 → P 2 \pi: \mathbb{P}^3 \to \mathbb{P}^2 π:P3P2为相机投影模型。然后用SVD或Ransac求解一个闭式解 T ∗ = arg ⁡ min ⁡ T E ( T ) \mathbf{T}^* = \arg\min_{\mathbf{T}} E(\mathbf{T}) T=argminTE(T)

DSAC[8]提出了一种可微分的RANSAC层,可以集成到任意网络中用于PnP估计。该层将传统RANSAC的采样、模型估计和评价过程公式化为可微分的操作,关键是将假设模型的评价函数softmax化:
s i = exp ⁡ ( − E ( T i ) / τ ) ∑ j exp ⁡ ( − E ( T j ) / τ ) ( 16 ) s_i = \frac{\exp(-E(\mathbf{T}_i)/\tau)}{\sum_{j} \exp(-E(\mathbf{T}_j)/\tau)} \qquad (16) si=jexp(E(Tj)/τ)exp(E(Ti)/τ)(16)

其中 τ \tau τ为温度参数。DSAC层的输出是加权的假设集合:
T ∗ = ∑ i s i T i , s.t. ∑ i s i = 1 ( 17 ) \mathbf{T}^* = \sum_{i} s_i \mathbf{T}_i, \quad \text{s.t.} \sum_{i} s_i = 1 \qquad (17) T=isiTi,s.t.isi=1(17)

DSAC层可以插入到任意2D-3D匹配网络中,使网络输出的匹配自动满足PnP约束。实验表明,这种端到端的可微分求解范式可以明显提高姿态估计的精度,且节省后处理时间。

类似地,一些工作将ICP[9]、特征匹配[10]、mesh简化[11]等传统几何任务重构为可微分层,嵌入到深度网络中,实现几何约束感知的端到端学习。

7 基于优化与学习的混合范式

7.1 引入物理约束和先验知识

将物理规律、几何约束等先验知识纳入深度学习pipeline,是混合范式的一个关键优势。这不仅可以提高模型输出的几何一致性和物理合理性,还能降低模型对label数据的依赖。那么如何设计高效、通用的约束编码和融合机制呢?

一种思路是将约束显式地嵌入loss函数中。如Pixel2Mesh[1]在mesh变形的同时,加入了拉普拉斯loss和法向loss,鼓励相邻顶点的位置和法向保持局部一致。SDFDIFF[2]在用SDF表示形状时,设计了Eikonal loss L E = ∫ Ω ( ∣ ∇ f ( x ) ∣ − 1 ) 2 d x \mathcal{L}_E=\int_\Omega (|\nabla f(\mathbf{x})|-1)^2\mathrm{d}\mathbf{x} LE=Ω(∣∇f(x)1)2dx,鼓励SDF满足 i s o \mathrm{iso} iso-surface的性质。

另一思路是将约束隐式地嵌入网络结构中。如Shen等[3]在点云配准中,用一个预训练的网络估计两组点之间的软对应,再用 S V D \mathrm{SVD} SVD求解最优刚体变换,从而将 S E ( 3 ) \mathrm{SE}(3) SE(3)流形约束融入前向传播。RAFT[4]用相关体搜索匹配,用GRU迭代更新optical flow,从而将光流平滑性、small displacement等先验隐式地编码入网络计算图。

此外,还可将约束直接纳入输入和输出表示中。如 NeuralSym[5] 用球谐函数(SPHARM)表示物体形状,从而显式建模物体的拓扑和对称性。Gao等[6]发现用黎曼度量等内蕴表示取代欧式表示,可使网络更好地适应非欧流形(如旋转群 S O ( 3 ) \mathrm{SO(3)} SO(3))。

7.2 降低对label数据的依赖

大量的label数据对于监督深度学习至关重要,但在许多3D感知任务中,精确的逐点标注非常困难。因此,如何最大限度地利用无监督和弱监督信号,来指导深度网络学习更加鲁棒和可泛化的表示,成为一个重要课题。

合理利用数据本身蕴含的某些不变性,是构建自监督loss的重要手段。一个典型例子是对极几何约束:从不同视角观测同一个刚体,任意匹配点的深度值应满足对极方程。基于这一原理,Zhou等[7]联合训练两个CNN分别估计单目深度和相机姿态,并设计loss监督二者的一致性,实现了仅需monocular视频的深度自监督学习。

多模态感知也为弱监督学习开辟了新路径。投影laser点提供的稀疏深度能为image depth估计构建有力的监督信号[8];而在缺乏audio-visual pair的情况下,音频和视频互为表征空间,音频事件和视觉目标的同步性能为它们构建弱监督[9]。

此外,知识的迁移和先验的编码也能降低学习难度。如 D O N \mathrm{DON} DON[10]将ShapeNet上预训练的object detector迁移到KITTI数据,仅用很少的label数据微调,就实现了高精度的outdoor 3D检测。Neural Point Descriptor[11]基于可区分性、平滑性、局部一致性等先验,无监督地学习了一个通用、紧致的3D点云描述子表示。

7.3 提高系统的泛化性和适应性

现实世界的视觉环境千差万别,数据分布也呈现多样性(multi-modality)。因此,如何确保算法能够适应不同的场景、传感器和外部条件,是3D感知落地应用必须考虑的问题。现有的一些研究思路包括:

(1) 基于元学习的快速自适应。Finn等[12]提出MAML算法,通过二次梯度下降学习一个对不同任务都有良好初始化的meta-learner,从而实现少样本条件下的快速finetune。类似思想也被用于6D位姿估计[13]、深度估计[14]等任务的domain adaptation中。

(2) 不变特征表示学习。Cohen等[15]利用群等变性,设计了对SO(3)旋转不变的spherical CNN,使学习到的3D形状描述子具有更好的泛化能力。Zhu等[16]用cycle-consistency loss实现了跨模态(如CT-X光)医学图像的迁移,学到了对成像原理不变的语义特征。

(3) 持续学习与渐进优化。Dai等[17]提出渐进网络,在连续的优化域上学习网络权重,避免在新样本到来时catastrophic forgetting。VASE[18]引入外显记忆模块,实现了open-set的语义场景理解。

(4) 主动学习与探索。Chaplot等[19]让agent主动探索周围环境并搜集hard samples,再将其用于导航策略学习,实现了indoor navigation任务的自我强化。Luo等[20]提出主动多视图深度估计,学习next-best-view并动态重建,在固定预算下提高深度图的精度和完整性。

7.4 提高模型的可解释性和可控性

深度学习模型常被比作"黑盒",内部工作机制难以洞察,这在一定程度上阻碍了其在自动驾驶等高安全性要求场合的应用。有鉴于此,AI可解释性、可控性研究受到学界和业界的高度重视。在3D感知领域,一些有益的尝试包括:

(1) 显式编码高层语义概念。3D-RCNN[21]在两阶段检测框架中引入orientation anchor,将物体的朝向显式地建模到网络中,在提高精度的同时,输出也更符合人的直觉。Han等[22]提出将场景组织为物体-关系图,并用GCN建模推理其中的语义,使基于图的3D重建更加可解释。

(2) 模仿人类的感知推理过程。投射3D模型到2D,再回归6D位姿[23];或者先粗略估计物体的3D包围盒,再迭代优化[24],都是在网络的计算过程中模仿人类"从粗到精分解子任务"的认知习惯。类似地,Neural-Sym[5]通过显式建模视图间和物体内的对称关系,模仿人类对物体形状的感知。

(3) 对抗性学习增强网络鲁棒性。Xiao等[25]发现,添加物理上合理的random perturbation(如小幅度旋转平移),可使PointNet等3D分类网络产生错误预测。为此,他们提出对抗性训练和r-max pooling等策略,增强网络应对形变的能力。Zeng等[26]研究了移动机器人中传感器和运动规划模块的"协同对抗",揭示了其内部机理。

(4) 后修正与自我纠错。Hu等[27]提出gradslam,学习一个RNN,在SLAM过程中接收未来观测,主动返回过去重新优化历史帧的位姿。这种"后知后觉"(hindsight)的反复修正机制,使SLAM系统更接近人脑的思维过程。Liao等[28]在VO pipeline后附加一个correction network,显式地估计前一阶段pose的不确定性并订正,可视为自我纠错的一种形式。

7.5 拓展应用场景

除了3D感知,混合优化-学习范式在其他需要求解复杂逆问题的领域也有广阔的应用前景。它可以用于学习加速物理模拟[29]、drug discovery中的分子优化[30]、机器人强化学习中的运动规划[31]等。这也为3D感知和其他AI领域的cross-fertilization提供了新的可能。

尽管基于优化的传统3D感知方法和基于学习的新兴方法各有所长,但它们在求解相同问题时往往是互补的。将二者有机融合、协同优化,对于开发更加鲁棒、高效、可解释的3D感知系统至关重要。

参考文献:
[1] Eigen D, Puhrsch C, Fergus R. Depth map prediction from a single image using a multi-scale deep network[J]. NeurIPS, 2014.
[2] Laina I, Rupprecht C, Belagiannis V, et al. Deeper depth prediction with fully convolutional residual networks[C]//3DV. IEEE, 2016.
[3] Dosovitskiy A, Fischer P, Ilg E, et al. Flownet: Learning optical flow with convolutional networks[C]//ICCV, 2015.
[4] Ilg E, Mayer N, Saikia T, et al. Flownet 2.0: Evolution of optical flow estimation with deep networks[C]//CVPR, 2017.
[5] Teed Z, Deng J. RAFT: Recurrent all-pairs field transforms for optical flow[C]//ECCV, 2020.
[6] Tang C, Tan P. BA-Net: Dense bundle adjustment network[J]. arXiv, 2018.
[7] Wei Y, Liu S, Zhao W, et al. Deepsfm: Structure from motion via deep bundle adjustment[C]//ECCV, 2020.
[8] Brachmann E, Krull A, Nowozin S, et al. DSAC-differentiable RANSAC for camera localization[C]//CVPR, 2017.
[9] Wang Y, Solomon J M. Deep closest point: Learning representations for point cloud registration[C]//ICCV, 2019.
[10] Zhang J, Sun D, Luo Z, et al. Learning two-view correspondences and geometry using order-aware network[C]//ICCV, 2019.
[11] Hanocka R, Hertz A, Fish N, et al. MeshCNN: a network with an edge[J]. ACM TOG, 2019.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/37361.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

娱乐圈发生震动,AI大模型技术已经取代了SNH48的小偶像?

自2023年以来,全球都被包裹在AI的惊天大潮之中,所有行业都在主动或被动地迎接改变。目前,各行业已经有大量公司正在把AI作为自身发展的最佳路径。其中,娱乐行业作为最被人们熟知的行业也在面对AI的发展时,发生着巨大变…

解析Java中1000个常用类:Currency类,你学会了吗?

在线工具站 推荐一个程序员在线工具站:程序员常用工具(http://cxytools.com),有时间戳、JSON格式化、文本对比、HASH生成、UUID生成等常用工具,效率加倍嘎嘎好用。程序员资料站 推荐一个程序员编程资料站:程序员的成长之路(http://cxyroad.com),收录了一些列的技术教程…

解析connectionReset异常的原因与解决方案

解析connectionReset异常的原因与解决方案 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿!今天我们将深入探讨Java中connectionReset异常的原因及其解决方案。这…

遥远星辰中的觉醒:超大质量黑洞的苏醒与人类的未来

遥远星辰中的觉醒:超大质量黑洞的苏醒与人类的未来 在浩渺无垠的宇宙中,星辰的闪烁仿佛是时间的涟漪,穿越亿万年的距离,抵达我们的眼眸。而在这片星辰大海的深处,一个惊人的现象正在悄然上演——距离地球3.6亿光年之遥…

Unity获取剪切板内容粘贴板图片文件文字

最近做了一个发送消息的unity项目,需要访问剪切板里面的图片文字文件等,翻遍了网上的东西,看了不是需要导入System.Windows.Forms(关键导入了unity还不好用,只能用在纯c#项目中),所以我看了下py…

GMSB文章九:微生物的相关关系组间波动

欢迎大家关注全网生信学习者系列: WX公zhong号:生信学习者Xiao hong书:生信学习者知hu:生信学习者CDSN:生信学习者2 介绍 计算配对微生物在组间的相关关系波动情况进而评估不同分组的微生物状态。secom_linear 函数…

线性表与顺序存储结构(下)

前言 接上文(线性表与顺序存储结构(上))。 这些顺序存储结构的方法在顺序表上下卷中已经提到过,但是有些许不同,可以为理解顺序表提供更丰富的视角。(不过最主要的区别在于顺序表上下卷中的顺…

机器人关节 viscous friction与结构阻尼

Viscous Friction(粘性摩擦) 定义:Viscous friction,也被称为粘性摩擦或粘滞摩擦,是机器人关节在运动过程中由于接触面之间的相互作用而产生的摩擦力。这种摩擦力与关节的运动速度有关,通常表现为速度越大&…

HarmonyOS开发实战:分布式文件系统-hmdfs

分布式文件系统提供跨设备的文件访问能力,适用于如下场景: 两台设备组网,A 设备可以无感读取和修改 B 设备的文件。 边缘服务器可以自动同步组网中多个嵌入式设备中的文件数据。 hmdfs 在分布式软总线动态组网的基础上,为网络上…

Ubuntu添加系统字体

(2024.6.30) 系统字体保存路径在/usr/share/fonts下,如果此目录下缺少字体,则使用其他可视化api(如Python的pygame库)的默认配置时可能会出现乱码问题。 往Ubuntu中添加字体的方法 方法一:手…

Ant Design Vue:如何提升你的前端开发效率?

目录 1. Ant Design Vue 简介 1.1 特性概览 1.2 安装与配置 2. 常用组件及使用示例 2.1 Button 按钮 2.2 Form 表单 2.3 Table 表格 2.4 Modal 对话框 3. 常见问题及解决方案 3.1 组件无法渲染 问题描述 解决方案 3.2 表单验证失效 问题描述 解决方案 3.3 表格…

Python | 计算位涡平流项

写在前面 最近忙着复习、考试…都没怎么空敲代码,还得再准备一周考试。。。等考完试再慢慢更新了,今天先来浅更一个简单但是使用的python code 在做动力机制分析时,我们常常需要借助收支方程来诊断不同过程的贡献,其中最常见的一…

51单片机-点亮LED灯

目录 新建项目选择型号添加新文件到该项目设置字体和utf-8编码二极管如何区分正负极原理:CPU通过寄存器来控制硬件电路 用P2寄存器的值控制第一个灯亮进制转换编译查看P2寄存器的地址生成HEX文件把代码下载到单片机中 新建项目 选择型号 stc是中国生产的、这个里面…

token登录比密码登录有什么优势吗

token登录比密码登录有什么优势吗 使用令牌(Token)登录相比于密码登录具有一些优势,包括: 安全性:令牌通常采用加密技术,使得它们更难以被盗取或猜测。相比之下,密码存在被猜测、破解或被暴力攻…

解决浏览器兼容性问题的方法

解决浏览器兼容性问题的方法 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿!今天我们来探讨如何解决网页开发中常见的浏览器兼容性问题。随着互联网技术的发展&…

java中输入输出流的继承关系

在 Java 中,输入输出流的继承关系主要围绕两个抽象基类展开:字节流基类 InputStream 和 OutputStream,以及字符流基类 Reader 和 Writer。这些类形成了 Java I/O 系统的基础,提供了丰富的子类以适应不同的输入输出需求。 字节流 字节流用于处理原始的二进制数据。 Input…

利用Linked SQL Server提权

点击星标,即时接收最新推文 本文选自《内网安全攻防:红队之路》 扫描二维码五折购书 利用Linked SQL Server提权 Linked SQL server是一个SQL Server数据库中的对象,它可以连接到另一个SQL Server或非SQL Server数据源(如Oracle&a…

初学者轻松搞定19个经典的Python程序以及代码演示

Python的经典程序展示了Python语言基本特性和功能的简单示例,这些程序在学习和理解Python编程语言的过程中起着至关重要的作用. 一些常见的经典Python程序及其在学习Python时的功能: 1.Hello, World! print("Hello, World!")解释:这是Python的基本输出…

primeflex overflow样式类相关的用法和案例

文档地址&#xff1a;https://primeflex.org/overflow 案例1 <script setup> import axios from "axios"; import {ref} from "vue";const message ref("frontend variable") axios.get(http://127.0.0.1:8001/).then(function (respon…

【Flink】Flink SQL

一、Flink 架构 Flink 架构 | Apache Flink 二、设置TaskManager、Slot和Parallelism 在Apache Flink中&#xff0c;设置TaskManager、Slot和Parallelism是配置Flink集群性能和资源利用的关键步骤。以下是关于如何设置这些参数的详细指南&#xff1a; 1. TaskManager 设置 …