论文笔记(四十二)Diff-DOPE: Differentiable Deep Object Pose Estimation

Diff-DOPE: Differentiable Deep Object Pose Estimation

  • 文章概括
  • 摘要
  • I. 介绍
  • II. 相关工作
  • III. DIFF-DOPE
  • IV. 实验结果
    • A. 实施细节和性能
    • B. 准确性
    • C. 机器人-摄像机校准
  • V. 结论
  • VI. 致谢

文章概括

作者:Jonathan Tremblay, Bowen Wen, Valts Blukis, Balakumar Sundaralingam, Stephen Tyree, Stan Birchfield
来源:arXiv:2310.00463v1 [cs.CV] 30 Sep 2023
原文:https://arxiv.org/pdf/2310.00463.pdf/https://arxiv.org/abs/2310.00463
代码、数据和视频:https://diffdope.github.io/
系列文章目录:
上一篇:
https://blog.csdn.net/xzs1210652636/article/details/134431873
下一篇:



摘要

我们介绍的 Diff-DOPE 是一种 6-DoF 姿态校正器,它将图像、物体的三维纹理模型和物体的初始姿态作为输入。该方法使用可微分渲染来更新物体姿态,以最小化图像与模型投影之间的视觉误差。我们的研究表明,这种简单而有效的方法能够在姿态估计数据集上获得最先进的结果。我们的方法不同于最近的方法,在最近的方法中,姿态细化器是一个在大型合成数据集上训练的深度神经网络,用于将输入映射到细化步骤。相反,我们使用可微分渲染技术,可以完全避免训练。我们的方法采用不同的随机学习率并行执行多个梯度下降优化,以避免对称物体、相似外观或错误步长造成的局部最小值。可以使用多种模式,如 RGB、深度、强度边缘和物体分割掩码。我们通过实验检验了各种选择的效果,结果表明,在使用 RGB 图像的同时使用对象遮罩和深度图像来指导优化过程时,效果最佳。项目网站是 diffdope.github.io。


I. 介绍

估计物体的 6-DoF 姿态(即六个自由度,包括三维平移和三维旋转)是机器人操纵、增强/混合现实和自主导航等广泛应用的一项关键任务。近年来,在解决这一问题的实例和类别层面上都取得了显著进展[3, 4],其中包括各种应用场景,如按实例训练网络[3, 5]、在推理时进行比较的纹理三维物体模型[1]和参考物体图像[6, 7]。

许多方法将问题分为两个阶段:首先是大致估算姿势,然后是细化姿势。本文的重点是后一个姿态细化步骤,这往往是获得良好效果的关键。经典技术使用图像空间和姿态空间之间的雅各布系来计算最小化基于图像的误差所需的 delta 姿态 [8-12]。最近的研究通过 “渲染-比较”(render-and-compare)来解决细化问题,即通过神经网络比较三维网格的渲染图像和目标图像,预测更新后的姿态,使渲染图像与目标图像更加匹配[1, 5, 13, 14]。由于这些技术依赖于传统的无差别渲染管道,因此神经网络必须在大型数据集上进行离线训练,才能学会计算姿势更新。训练完成后,网络是不透明的,几乎无法洞察其性能好坏的原因,因此,如果不进行昂贵而耗时的重新训练,就很难提高性能。

在这项工作中,我们利用可微分渲染技术的最新进展[15, 16],将 6-DoF 物体姿态细化问题作为直接的端到端优化进行探索。这种方法减轻了为训练提炼器而策划数据集的挑战,并带来了一种更灵活、可解释性更强的解决方案。直观地说,这种方法的灵感来源于这样一个事实:即使姿势估计稍有错误,产生的重投影错位也很容易察觉,这表明即使没有学习到的先验信息,局部像素信息也足以进行高质量的姿势估计。图 1 展示了我们的方法,即 Diff-DOPE(可微分深度物体姿态估计)。


在这里插入图片描述
图 1:Diff-DOPE 使用可微分渲染器迭代改进物体的 6-DoF 姿态。与之前的方法不同,该方法无需任何训练即可运行。图中显示的是 HOPE 数据集 [2] 中输入场景的定性结果。最下面一行显示的是每个地面实况对象的误差热图,红色越深表示与地面实况姿势的误差越大(图例:0 厘米 在这里插入图片描述5 厘米)。


可微分渲染的设计方案具有前所未有的灵活性:用户可以根据具体情况对设置进行微调,使其偏向于某些损失项,而无需重新训练网络。我们的方法可用于多种情况,例如仅 RGB、仅深度或 RGBD,还可以选择使用对象分割掩码和/或在优化中加入强度边缘或其他信息。不过,我们的所有实验都采用了相同的参数值和模式,以证明其广泛的适用性。

具体来说,我们的方法通过梯度下降,以 "渲染-比较 "的形式将渲染对象与观测图像的不对齐误差降到最低。这种方法面临的一个挑战是如何在优化过程中避免局部最小值。为了解决这个问题,我们并行初始化多个优化实例。不过,我们并不像通常那样随机扰动初始姿态,而是随机扰动应用于实例的学习率。我们将这一创新称为学习率随机化,正如我们在实验中展示的那样,它是我们的方法取得成功的关键。在 HOPE [2] 这样的高质量数据集上,我们的方法在复杂的遮挡场景上实现了优于 1 厘米的精度,有时甚至小于 0.5 厘米–这比以前的先进技术高出很多。在包含无纹理和对称物体的 T-LESS [17] 和 YCB-Video [18] 数据集上,我们的方法也优于之前的技术。


II. 相关工作

物体姿态估计 6-DoF 物体姿态估计是机器人和计算机视觉领域一个众所周知的问题。这个问题最早是通过明确的方法来解决的,即对三维物体和图像上的相应点进行联合优化以计算姿态[8, 19-23],或者通过模板匹配将物体姿态与图像观测结果相关联[24, 25]。最近的研究重点是使用神经网络进行学习优化 [3, 18, 26-35]。一些性能最好的方法依赖于可训练的细化网络 [5, 13, 36, 37],这些方法利用渲染和比较 [1, 8, 38, 39]。这些方法通过神经网络迭代比较物体的渲染图像和观测图像,从而输出 delta 姿态。由于神经网络有望优化观察对象和渲染对象的视觉外观相似性,因此当对象与训练集中的对象有显著差异时,就会出现难以解释的模糊错误。与此相反,我们建议直接利用渲染和比较直接使用的信息,从而获得更可预测的性能。

可微分渲染 最近,光栅化[15, 40-42]和光线追踪[43, 44]的可微分渲染方法都已问世。应用最广泛的可微分渲染器可能是 NeRF [45],它可用于从新视角估算摄像机姿态 [9,46,47]、摄像机校准 [48,49]、摄像机验证 [50] 和物体姿态估算 [51]。这些方法需要高质量的多视角数据和精确的摄像机姿态,而这些要求在姿态估计中并不总是切实可行的。与我们的研究最接近的 EasyHeC [52] 采用了类似的方法,通过可微分渲染和比较进行摄像机姿态估计。他们的工作重点是机器人到摄像机的姿态估计,并且只考虑了分割遮罩的模式,而我们的工作则是处理任何具有三维纹理模型的物体,并允许使用多种图像模式。

III. DIFF-DOPE

6-DoF 物体姿态估计问题的形式定义如下: 给定一个刚性物体的三维纹理模型 M M M 和该物体出现的摄像机图像 I I I,找出从摄像机到物体的变换 T C O T_{CO} TCO,其中旋转用四元数表示。解决这一问题的常见模式包括物体检测步骤和姿态改进步骤 [1, 5, 36, 37]。也就是说,在图像中定位感兴趣的物体并估算出其初始姿态后,采用渲染和比较的方法对其姿态进行迭代更新。我们建议用 Diff-DOPE 来替代此类系统中的姿态校正器。我们假设可以使用可微分渲染器 R R R,它能以任意相机姿态 T C O T_{CO} TCO 和相机本构 K K K 渲染三维模型 M M M 的重投影图像 I ^ ← R ( T C O , M , K ) \hat{I} ←\mathcal{R}(T_{CO},M,K) I^R(TCO,M,K)。我们希望通过最小化重投影误差来解决 6-DoF 姿态估计问题:
在这里插入图片描述
其中 l o s s loss loss 是我们设计的误差指标。通过采用可微分渲染器 R \mathcal{R} R,我们可以获取渲染过程中计算出的梯度。这意味着我们可以计算在图像空间工作的损失函数 T C O T_{CO} TCO 在摄像机姿态方面的梯度,从而通过梯度下降法计算出公式 (1) 的解。

虽然从理论上讲,只需与 RGB 参考图像进行比较就能检索出物体的姿态,但在实践中,要渲染三维模型以考虑到真实场景中的所有光照和材料伪影并非易事。值得庆幸的是,可微分渲染框架的灵活性允许在损失函数中使用多种模式。因此,我们计算的损失项可以利用深度、边缘检测图和分割掩码等附加信息。见图 2。


在这里插入图片描述
图 2:Diff-DOPE 系统概述,该系统通过最小化渲染三维模型与输入通道(如 RGB、深度和边缘)之间的重投影误差,迭代改进物体的 6-DoF 姿态。为了提高鲁棒性,该算法使用随机取样的初始学习率并行执行多次优化;一旦误差趋于稳定,就会选择重投影误差最小的姿势。


具体而言,我们将损失函数定义为特定模式项的加权组合:

在这里插入图片描述
我们计算相应输入图像 I c , I d , I e I_c, I_d, I_e Ic,Id,Ie 和渲染图像 I ^ ∗ = R ∗ ( ⋅ , ⋅ , ⋅ ) \hat{I}_∗ = \mathcal{R}_∗(\cdot, \cdot, \cdot) I^=R(,,)之间的 L1 损失,其中 ∗ ∈ { c , d , e } ∗∈\{c, d, e\} {c,d,e} 分别表示 RGB/彩色 ( c c c)、深度 ( d d d) 和边缘 ( e e e) 模式。像素乘以(即哈达玛乘积,用 ⊙ ⊙ 表示)对象掩码 S S S 将损失限制在图像的相关区域,权重 λ ∗ λ_∗ λ 允许平衡或省略损失项。边缘图是通过对 RGB 图像应用现成的边缘检测器计算出来的。

为了找到不影响重投影误差的最佳姿态,我们使用了无动量梯度下降算法,以最小化公式 (2) 中的损失函数,详见算法 1。


在这里插入图片描述


该方法需要输入图像 I c . I d , I e I_c. I_d, I_e Ic.Id,Ie 和初始姿势 T C O T_{CO} TCO,以及以下参数:迭代次数 i t e r s iters iters、批量大小 B B B、低学习率边界 ( ℓ ) (ℓ) (),以及高学习率边界 ( h ) (h) (h)。我们利用批量渲染和优化的并行性,同时运行 B B B 个优化。每个独立优化都从均匀分布 U ( ℓ , h ) U(ℓ, h) U(,h)中采样不同的学习率,并以输入的物体姿态进行初始化。这种学习率随机化类似于 Blier 等人的方法[53]。当初始误差较大时,高学习率会导致优化找到解,而当初始误差较小时,低学习率则更合适。我们采用学习率衰减来确保收敛,并防止在最终姿势附近振荡。与文献[47]类似的另一种方法是使用固定的学习率,并对初始姿态施加噪音,但我们发现这种方法的结果并不令人满意。优化完成后,我们会从一批结果中选出重塑误差最小的姿势。

IV. 实验结果

在本节中,我们将探讨 Diff-DOPE 在几个标准姿势估计数据集上的性能,并研究各种超参数对性能的影响。

A. 实施细节和性能

Diff-DOPE 使用 Python 和 PyTorch 绑定实现。所有实验均在NVIDIA 4090 GPU 上运行。我们使用 Kornia [54] 的可微分 Canny 边缘检测开源实现;我们将现代边缘检测算法或其他图像滤波器作为未来工作的重点。在本节的所有实验中,我们使用了相同的超参数。对于公式 (2) 中的损失,所有权重都设为 1,批量大小为 B = 32 B = 32 B=32,优化运行 100 次迭代,学习率边界为 ℓ = 0.001 ℓ = 0.001 =0.001 h = 50 h = 50 h=50,学习率衰减为 0.1。

利用 Nvdiffrast [15] 提供的功能,我们实现了自己的深度图输出程序。我们还实现了一个专门用于矩阵乘法的 CUDA 内核,它允许梯度流进行三维点转换(从本地空间到相机空间)。与简单的 PyTorch 版本相比,这种实现方式的性能提高了 40 倍,例如,在一组 262k 点上进行正向和反向乘法运算的时间从 27 毫秒降至 0.63 毫秒。根据上述超参数和矩阵乘法 CUDA 代码,Diff-DOPE 优化一个物体的姿态最多需要 3.5 秒,每次迭代需要 34 毫秒。

B. 准确性

数据集和衡量标准。 为了评估 Diff-DOPE 的改进效果,我们通过对地面实况姿势施加不同程度的噪声来创建初始姿势,并评估我们的方法恢复正确姿势的能力。为了对初始姿态进行采样,我们为每个场景中的每个物体随机选取两个轴(一个用于旋转,另一个用于平移),并应用下列旋转和平移扰动之一: ( 1 ◦ , 0.1 厘米) (1^◦,0.1 厘米) 10.1厘米) ( 1 0 ◦ , 1 厘米) (10^◦,1 厘米) 101厘米) ( 4 0 ◦ , 2 厘米) (40^◦,2 厘米) 402厘米)。图 3 显示了这些噪声水平的一些示例,我们将其分别称为 “易”、"中 "和 “难”。我们试图了解我们的方法在输入误差较小和较大时的表现,例如,我们的方法能否从较大的姿势误差中恢复?而且,如果初始猜测已经很好,我们的方法是否还能改进它或使它变得更糟?


在这里插入图片描述
图 3:HOPE 数据集[2]中样本对象的 “易”、"中 "和 "难 "三种不同输入噪音水平,以及 Diff-DOPE 与 MegaPose [1] 的定性比较结果。地面实况显示为绿色,预测结果显示为紫色;茶色(绿-蓝)表示两者之间的重叠。


我们在以下对象姿态估计数据集上进行了实验: HOPE [2]、T-LESS [17] 和 YCB-Video [18]。对于每个数据集,我们从 10 个随机场景中选取第一张图像,并应用三种噪声水平来代表不同的初始姿态误差。我们的方法与 MegaPose [1]进行了比较,MegaPose 是一种领先的物体姿态精炼器,在 CosyPose [5] 和 DeepIM [13] 的基础上进行了改进。MegaPose 使用了为 RGBD 输入提供的权重,同时省略了粗姿态估计器,以便将注意力集中在姿态改进器上。

为了评估性能,我们使用了 ADD 指标[3, 18],该指标用于测量地面实况姿态和输出姿态下物体上一组点之间的平均欧氏距离。该指标的动机是其几何可解释性,这在机器人技术中尤为重要。仅对于 T-LESS,我们使用对称版本 ADD-S,因为许多物体都具有对称性。我们展示的阈值图显示了在特定 ADD(或 ADD-S)值下出现误差的预测姿势的百分比。这些曲线图使用曲线下面积(AUC)的单个数字进行汇总,最大阈值为 5 厘米(除非另有说明)。

HOPE 数据集的准确性 图 1 和图 3 显示了 Diff-DOPE 与 MegaPose 对 HOPE 数据集中各种图像的定性结果。对于定量结果,图 4 比较了 Diff-DOPE 和 MegaPose 精校仪在地面实况中应用不同数量的噪声(如上所述)的情况。我们发现,Diff-DOPE 比 MegaPose 对输入噪声的鲁棒性更高。这些图还显示,分割包含了最重要的信息(超出 RGB 输入),其次是深度,然后是边缘。由于 "简单 "输入非常接近地面实况,两种方法都会略微增加误差,不过 Diff-DOPE 实际上改善了其中一半的姿势。另一个有趣的现象是,无论输入噪声水平如何,MegaPose 的性能大致相同,而 Diff-DOPE 在 "硬 "姿势上的性能则明显下降。更多详情,请参见表 I 中的 AUC 数据。


在这里插入图片描述
图 4:MegaPose [1] 和 Diff-DOPE 的不同变体(如无深度)的 ADD 阈值曲线;同时显示的还有噪声输入姿势的 ADD 误差曲线。子图显示了所有输入姿势(左上角)和易(右上角)、中(左下角)、难(右下角)输入姿势子集的结果。



表 I: Diff-DOPE (DD) 和 MegaPose (MP) [1] 在三个数据集上的比较,使用的是 A D D \mathsf{ADD} ADD(或 A D D − S † \mathsf{ADD-S^†} ADDS)误差指标的曲线下面积 (AUC),最大阈值为 5 厘米。
在这里插入图片描述


T-LESS 和 YCB-Video 的准确性 上述 HOPE 数据集具有高质量的纹理物体和图像,因此非常适合我们的 Diff-DOPE 方法。在此,我们将探讨该方法应用于较低质量数据集时的性能,即 T-LESS(该数据集的物体重构效果较差)和 YCB-Video(该数据集包含噪声较高的 RGB 图像)。对于这两个数据集,我们使用地面实况标注生成了类似的噪声初始姿势。图 5 显示了两个数据集的定量结果,图 6 显示了定性结果。


在这里插入图片描述
图 5:左图:使用 ADD-S 在 T-LESS 数据集 [17] 上得出的结果,我们还在该数据集上评估了我们的方法,但没有 RGB 输入。右图 使用 ADD 在 YCB-Video 数据集 [18] 上得出的结果,我们还将我们的方法应用到 MegaPose 的输出中,这通常有助于在较低输入噪声水平下得出结果。



在这里插入图片描述
图 6:Diff-DOPE 在 T-LESS [17](第一行)和 YCB-Video [18](第二行)硬场景上的定性结果。图中显示的是叠加姿势(左)和误差热图(右;图例:0 厘米在这里插入图片描述5 厘米)。


T-LESS 数据集提供了各种 3D 资产。我们使用的是 “半自动重建模型,其中还包括表面颜色”[17],因为所提供的 CAD 模型没有表面颜色。在输入噪声水平较小的情况下,我们的结果总体上优于 MegaPose,整体上略胜一筹,但在输入误差较大的情况下,我们的结果则较差。在分析结果的过程中,我们注意到所提供的纹理模型并不总是能与 RGB 图像很好地匹配,例如夸张的圆形边缘或不匹配的颜色。因此,我们还探索了只使用分割作为信号,而不匹配 RGB 颜色的方法,结果得到了明显改善。

尽管 YCB-Video 的 3D 资产具有良好的纹理,但 RGB 图像的质量并不理想,存在色彩饱和度和严重的噪点。因此,所有方法在该数据集上的表现都较差。与之前一样,Diff-DOPE 在输入误差较低时表现优于 MegaPose,但在输入误差较高时表现较差。在这种情况下,仅使用分割功能实际上会降低准确率(AUC 从 83.03 降至 80.40),这在意料之中,因为 YCB-Video 是一个纹理丰富的数据集。相比之下,Megapose 的 AUC 为 81.13。我们还在这个数据集上验证了 Diff-DOPE 可以通过进一步完善 MegaPose 的输出来改进 MegaPose 的预测。不过,虽然结果比 MegaPose 有所改进(82.00 对 81.13),但 AUC 仍低于直接运行 Diff-DOPE 的结果(83.03)。

通过这些结果,我们还可以比较 3D 模型对图像质量的影响。鉴于 HOPE 的 AUC 为 92.30,我们发现 YCB-Video 的性能下降幅度最大(83.03),这表明 RGB 信号的劣化影响极大。从 T-LESS 的结果中可以看出,较低质量的网格对结果的影响较小,我们观察到其性能下降的幅度较小(86.38)。

消融 为了更好地理解算法,我们探索了算法 1 中所示方法的各种变体。(由于使用了不同的 AUC 临界值,因此数字与表格中的数字不一致)。默认情况下,Diff-DOPE 在两个界限之间对学习率进行均匀采样;我们将这种方法称为均匀采样。如果一个界限较小,如 0.01,而上限较大,如 10,那么大多数样本都会偏向于较大的数值。另一种方法是在对数刻度上均匀取样,我们称之为指数取样;这种方法会使取样偏向于较小的数值。当输入误差较小时(0.1 厘米),指数(95.8 AUC)的表现略好于均匀(95.5 AUC)。当输入误差较大(2 厘米)时,情况则相反:均匀(90.7)优于指数(89.3)。这一结果在意料之中,因为当误差较大时,姿势更新需要更大的学习率。

除了像我们这样对不同的学习率进行采样外,另一种方法是简单地在输入姿势中添加更多姿势噪声,让并行优化探索更多的空间。当我们将这一想法与对不同学习率进行采样进行比较时,我们会发现性能会显著下降。例如,在 "简单 "数据上,AUC 从 83.3 灾难性地下降到 57.8。

图 7 显示了另外两个实验。我们使用缩小的 HOPE 图像大小(原始图像的 25%),将迭代次数从 5 次调整到 500 次(如图 7 左侧所示)。迭代次数最少为 50 次时性能良好,迭代次数在 100 次左右达到饱和。迭代 5 次的 AUC 为 81.0,而迭代 100 次的 AUC 为 90.5。


在这里插入图片描述
图 7:左图:迭代次数对 HOPE [2] 上 Diff-DOPE 性能的影响。右图:图像大小对 HOPE 的 Diff-DOPE 性能的影响(无边缘匹配损失);我们还显示了物体所占像素的平均值(px)。


我们还评估了图像大小对性能的影响。在默认设置中,我们使用输入图像大小的 50%;对 HOPE 而言,这意味着将图像分辨率从 1920×1080 降至 960×540。从图 7 右侧可以看出,即使缩小到原始大小的 25%,性能也没有明显下降。(请注意,我们在这些实验中省略了边缘检测)。在 100% 分辨率(87.9 AUC)和 25% 分辨率(87.7 AUC)之间,性能的下降可以忽略不计;当图像缩小到 10% 时,AUC 下降到 85.3。在较高分辨率下,物体平均占用 32k 像素,最低为 2k 像素,这并不会对结果造成明显影响。当缩小到原始大小的 10%时,物体的平均大小仅为 322 像素,效果更加明显。

C. 机器人-摄像机校准

在编写本手稿时,我们注意到 EasyHeC [52] 的最新研究成果,它也利用可微分渲染进行姿态估算,不过是用于机器人-摄像机校准,而非物体姿态估算。在本节中,我们将介绍一个初步实验,展示使用 Diff-DOPE 以类似方式校准机器人外部摄像头的潜力。虽然我们可以使用现有的方法,如 DREAM [55],来获得机器人的初始姿势,但这需要一个经过训练的神经网络。相反,我们手动估算了一个粗略的初始姿态:使用 RGBD 摄像机(如 ZED),我们手动裁剪点云,使其只包含机器人(假设没有相邻的杂波)。根据裁剪后的点云,我们得出了原始深度图像的分割掩码。最后,我们使用机器人的已知关节配置生成一个网格,并手动拖动网格与深度点云大致对齐。我们使用一些关节配置重复这一过程,以增加优化的稳定性。由于大多数 URDF 机器人模型的纹理有限,我们对 Diff-DOPE 进行了修改,使其只针对分割和深度进行优化。图 8 显示了运行该程序的定性结果。我们已经在实验室成功使用这种方法生成了机器人-摄像机校准,结合 Diff-DOPE 物体姿态,可以实现相当精确的操作(初始物体姿态由 DOPE 预测[3],Diff-DOPE 中省略了分割,因为 DOPE 无法预测物体遮罩。)。


在这里插入图片描述

图 8:将 Diff-DOPE 应用于摄像机-机器人校准。图中显示的是输入姿势(左)和 Diff-DOPE 的输出(右)。请注意,机器人的链接非常吻合,而抓手周围的误差是由于所提供的 URDF 存在差异造成的。上图:分割图,绿色表示观察到的物体,洋红色表示重新投影的三维模型,白色表示两者的重叠部分。下图:三维模型轮廓以绿色叠加在观察到的图像上。该优化使用了第一代 ZED 摄像机拍摄的两种机器人配置。


V. 结论

我们提出了一种名为 Diff-DOPE 的方法,它利用纹理三维模型来完善 6-DoF 物体姿态,而无需任何网络训练。该方法基于可微分渲染的理念,其中获取的图像与模型的渲染进行迭代比较,直至收敛。我们的方法可利用 RGB、深度、边缘检测和分割功能,但如果需要,它也可以灵活地在没有这些模式的情况下运行。我们对算法的各个部分进行了研究,并展示了学习率随机化的重要性,即对不同的学习率进行采样,从而有效地并行优化物体姿态。

我们在实验中比较了 Diff-DOPE 和 MegaPose(一种最新的最先进姿势优化器)。总体而言,我们的方法无需任何训练就能生成更准确的姿势,而 MegaPose 受初始姿势分布的干扰较小,因此更适用于初始姿势误差较大的情况。这些结果支持了一种假设,即可微分渲染有可能实现 1 厘米以下的姿势估计,这对机器人抓取和操纵非常重要。

未来的工作应包括探索非朗伯优化作为姿态估计过程的一部分。这种情况具有挑战性,因为纹理表面的定义并不明确,但它将使我们能够对具有更复杂表面材料的物体进行姿态估计,这些表面材料会表现出反射和镜面高光。即使在我们的实验中使用的大多是哑光纹理的物体,在三维扫描过程中,光线也会与模型的塑料表面相互作用,从而导致伪影,有时会造成姿态估计过程中的不匹配。另一个有前途的研究方向是将基于模型的经典优化方法与基于学习的方法相结合,我们相信我们的方法将为这一研究提供一个起点。

VI. 致谢

作者要特别感谢雅各布-蒙克伯格(Jacob Munkberg)在代码优化和提供 CUDA/PyTorch 优化矩阵变换方面做出的不可或缺的贡献。作者还要感谢 Ankur Handa、Yann Labb´e、Vladimir Reinharz 和 Yen Chen Lin 在本文写作过程中提供的反馈意见。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

抖捧AI实景自动直播怎么玩

​在如今的全民直播时代,直播已经成为了众多实体店、品牌方所刚需的技能,但是大多数都不具备太多的直播能力 ,这个时候实景自动直播就应运而生,但是很多人都没有想清楚,AI实景自动直播,到底适不适合自己用呢…

Linux shell编程学习笔记42:hdparm命令

ChatGPT 和文心一言哪个更好用? 从智能回复、语言准确性、知识库丰富度等方面比较,两大AI助手哪个更胜一筹?快来和我们分享一下你的看法吧~ 0 前言 获取硬盘序列号是信息资产管理和信息安全检测中经常要收集的信息,对于Linux来说…

Java实现医院门诊预约挂号系统 JAVA+Vue+SpringBoot+MySQL

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 功能性需求2.1.1 数据中心模块2.1.2 科室医生档案模块2.1.3 预约挂号模块2.1.4 医院时政模块 2.2 可行性分析2.2.1 可靠性2.2.2 易用性2.2.3 维护性 三、数据库设计3.1 用户表3.2 科室档案表3.3 医生档案表3.4 医生放号…

RocketMQ源码阅读-八-定时消息和消息重试

RocketMQ源码阅读-八-定时消息和消息重试 定时消息概念逻辑流程图延迟级别Producer发送定时消息Broker存储定时消息Broker发送定时消息Broker 持久化定时发送进度 消息重试总结 定时消息 概念 官网给出的概念:https://rocketmq.apache.org/zh/docs/featureBehavior…

记录威纶通:HMI

目录 HMI 界面切换​编辑 间接窗口 HMI 界面切换 第一种:选择功能键-切换基本窗口-操作界面-每一个界面都创建切换按钮 第二种:创建一个模板界面-使用功能键按照上面的操作创建两个切换按钮 选择操作界面-点击空白出右击属性-窗口设置底层选择模板界面…

flutter 五点一点四:MaterialApp Theme 给你一堆颜色看看

ColorScheme colorScheme, // 拥有30种颜色(这个数可能过几个版本会变化吧),可用于配置大多数组件的颜色。 A set of 30 colors based on the[Material spec] that can be used to configure the color properties of most components.Color canvasColor, // Mater…

LeetCode 热题 100 | 子串

目录 1 560. 和为 K 的子数组 2 239. 滑动窗口最大值 3 76. 最小覆盖子串 菜鸟做题第二周,语言是 C 1 560. 和为 K 的子数组 题眼:“子数组是数组中元素的连续非空序列。” 解决本问题的关键就在于如何翻译问题。子数组 s 的和可以看作数组 i 的…

精品基于Uniapp+ssm基于java的赈灾系统App救灾救助捐赠

《[含文档PPT源码等]精品基于Uniappssm基于java的赈灾系统App》该项目含有源码、文档、PPT、配套开发软件、软件安装教程、项目发布教程、包运行成功! 软件开发环境及开发工具: 开发语言:Java 后台框架:ssm 安卓框架&#xff…

防御第三次作业-防火墙组网实验(3)

目录 实验拓扑图 要求 1 2 针对10.0.2.10设备的安全策略: 针对10.0.2.20设备的安全策略: 3 4 实验拓扑图 各设备ip和接口已配好,均可可ping通防火墙。 要求 1.生产区在工作时间内可以访问dmz区域,仅可以访问http服…

通俗易懂理解FCN全卷积网络模型

温故而知新,可以为师矣! 一、参考资料 深度学习笔记(二十三)Semantic Segmentation(FCN/U-Net/PSPNet/SegNet/U-Net/ICNet/DFANet/Fast-SCNN) 二、FCN相关介绍 1. FCN简介 FCN(Fully Convolutional Networks&…

ELK之Grafana添加钉钉告警信息

Grafana版本如下: [roottest data]# grafana-server -v Version 8.4.6 (commit: c53173ff6, branch: HEAD)一、新建钉钉群,并自定义一个机器人 点击右上角设置 ------》 智能群助手 ------》 添加机器人 ------》右侧设置按钮 ------》点击自定义&…

如何快速搭建springboot+前后端分离(vue),多商户客户端实现微信小程序+ios+app使用uniapp(一处编写,处处编译)

kxmalls外卖生鲜多商户,针对中小商户、企业和个人学习者开发。使用Java编码,采用SpringBoot、Mybatis-Plus等易用框架,适合个人学习研究。同时支持单机部署、集群部署,用户与店铺范围动态定位,中小商户企业可根据业务动…

【数据结构与算法】之字符串系列-20240126

这里写目录标题 一、12. 整数转罗马数字二、43. 字符串相乘三、49. 字母异位词分组四、151. 反转字符串中的单词五、179. 最大数 一、12. 整数转罗马数字 中等 罗马数字包含以下七种字符: I, V, X, L,C,D …

06.Elasticsearch应用(六)

Elasticsearch应用(六) 1.什么是分词器 ES文档的数据拆分成一个个有完整含义的关键词,并将关键词与文档对应,这样就可以通过关键词查询文档。要想正确的分词,需要选择合适的分词器 2.ES中的默认分词器 fingerprint…

OpenCV笔记之图像处理中遮罩和掩模的关系

OpenCV笔记之图像处理中遮罩和掩模的关系 code review 文章目录 OpenCV笔记之图像处理中遮罩和掩模的关系1.遮罩详解遮罩的创建遮罩的应用遮罩的主要应用遮罩的类型如何创建遮罩遮罩在图像处理中的应用方式 2.遮罩和掩模的关系 1.遮罩详解 在图像处理中,遮罩&#…

Linux笔记之bash脚本中的-e、和

Linux笔记之bash脚本中的-e、&和&& code review! 文章目录 Linux笔记之bash脚本中的-e、&和&&1.&和&&2.-e 1.&和&& 在Linux bash脚本中,&符号有几个不同的用途,这里列举了一些常见的情况&#xf…

文件IO讲解

💕"跑起来就有意义"💕 作者:Mylvzi 文章主要内容:文件IO讲解 一.与文件相关的基本概念 1.什么是文件 文件从广义上来说就是操作系统对其所持有的硬件设备和软件资源的抽象化表示,但是在日常生活中我们所提到的文件就…

三、Kotlin 类型初步

1. 类 & 接口 1.1 类的定义 1.1.1 空类的定义 Java 的定义: public class Foo {}Kotlin 的定义: class Foo注意: 类的访问权限修饰符默认为 public。 若类的 {} 为空,可以省略不写。 1.1.2 带成员的类的定义 Java 中定…

普通人如何打造自己人生的护城河?

哈喽,大家好啊,我是雷工。 今天在看《张一鸣管理日志》时看到这么一句话: 今日头条不断吸引更优秀的工程师,不断更新算法,才有了当前今日头条的算法护城河。 头条的算法有多牛,看你周边就知道了。 越来越多…

《剑指 Offer》专项突破版 - 面试题 28 : 展平多级双向链表(C++ 实现)

题目连接:LCR 028. 扁平化多级双向链表 - 力扣(LeetCode) 题目: 在一个多级双向链表中,节点除了有两个指针分别指向前后两个节点,还有一个指针指向它的子链表,并且子链表也是一个双向链表&…