FoundationPose: Unified 6D Pose Estimation and Tracking of Novel Objects
文章概括
作者:Bowen Wen, Wei Yang, Jan Kautz, Stan Birchfield
来源:CVPR 2024
原文:https://arxiv.org/pdf/2312.08344.pdf
代码、数据和视频:https://nvlabs.github.io/FoundationPose/
系列文章目录:
上一篇:
https://blog.csdn.net/xzs1210652636/article/details/134431873
下一篇:
摘要
我们提出的 FoundationPose 是用于 6D 物体姿态估计和跟踪的统一基础模型,同时支持基于模型和无模型设置。只要给出新物体的 CAD 模型,或捕捉到少量参考图像,我们的方法就能在测试时立即应用于该物体,而无需进行微调。由于采用了统一的框架,两种设置中的下游姿势估计模块是相同的,在没有 CAD 模型时,神经隐式表示法可用于高效的新视图合成。在大型语言模型(LLM)、基于转换器的新型架构和对比学习配方的帮助下,通过大规模合成训练实现了强大的通用性。在涉及具有挑战性的场景和对象的多个公共数据集上进行的广泛评估表明,我们的统一方法在很大程度上优于针对每项任务专门设计的现有方法。此外,尽管降低了假设条件,但它甚至取得了与实例级方法相当的结果。项目页面: https://nvlabs.github.io/FoundationPose/
1. 介绍
计算从物体到摄像机的刚性 6D 变换(也称为物体姿态估计)对于机器人操纵 [30, 69, 70] 和混合现实 [43] 等各种应用至关重要。经典方法 [20, 21, 31, 50, 68] 被称为实例级方法,因为它们只适用于训练时确定的特定对象实例。这类方法通常需要纹理 CAD 模型来生成训练数据,而且在测试时无法应用于未见过的新物体。虽然类别级方法[5, 34, 60, 64, 75]消除了这些假设(实例训练和 CAD 模型),但它们仅限于训练预定义类别内的对象。此外,获得类别级训练数据是众所周知的困难,部分原因是必须应用额外的姿势规范化和检查步骤[64]。
为了解决这些局限性,最近的研究集中在任意新物体的即时姿态估计问题上 [19, 32, 40, 55, 58]。根据测试时可用的信息,考虑了两种不同的设置:基于模型的设置,即提供物体的纹理 3D CAD 模型;无模型的设置,即提供物体的一组参考图像。虽然这两种设置都取得了很大进展,但由于不同的实际应用提供了不同类型的信息,因此仍然需要一种方法来统一处理这两种设置。
与单帧物体姿态估计相对应,姿态跟踪方法 [8, 29, 36, 39, 56, 63, 67, 72] 可利用时间线索对视频序列进行更高效、流畅和准确的姿态估计。这些方法与姿势估计中的同类方法存在上述类似问题,这取决于它们对物体知识的假设。
在本文中,我们提出了一个名为 FoundationPose 的统一框架,它可以使用 RGBD 图像,在基于模型和无模型的设置下,对新物体进行姿态估计和跟踪。如图 1 所示,我们的方法优于现有的专门用于这四种任务的方法。我们通过大规模合成训练、大型语言模型(LLM)、基于转换器的新型架构和对比学习,实现了强大的通用性。我们在基于模型和无模型设置之间架起了一座桥梁,利用神经隐式表示法,只需少量(∼16)参考图像就能有效合成新视图,渲染速度明显快于以前的渲染和比较方法[32, 36, 67]。我们的贡献可总结如下:
-
我们为新物体的姿势估计和跟踪提出了一个统一的框架,同时支持基于模型和无模型的设置。以物体为中心的神经隐式表示法可有效地合成新颖的视图,弥补了这两种设置之间的差距。
-
我们提出了一种由 LLM 辅助的合成数据生成管道,该管道可通过多样化的纹理增强来扩展各种三维训练资产。
-
我们对基于变压器的网络架构进行了新颖的设计,并采用了对比式学习方法,因此,当仅在合成数据上进行训练时,就能实现很强的泛化能力。
在这项工作中开发的代码和数据将予以发布。
图 1:我们的统一框架可实现新物体的 6D 姿势估计和跟踪,支持基于模型和无模型设置。在这四项任务中的每一项任务中,它都优于先前专门为该任务设计的工作( ⋅ \cdot ⋅ 表示仅 RGB;× 表示 RGBD,如我们的工作)。实验结果中详细解释了每项任务的衡量标准。
2. 相关工作
基于 CAD 模型的物体姿态估计。 实例级姿态估计方法 [20, 21, 31, 50] 假设给出了物体的纹理 CAD 模型。训练和测试在完全相同的实例上进行。物体姿态通常通过直接回归法 [37, 73],或构建 2D-3D 对应关系后的 PnP [50, 61],或 3D-3D 对应关系后的最小二乘法拟合 [20, 21]来解决。为了放宽对物体知识的假设,类别级方法[5, 34, 60, 64, 75, 77]可应用于同一类别的新物体实例,但它们无法推广到预定义类别之外的任意新物体。为了解决这一局限性,最近的研究 [32, 55] 致力于在测试时提供 CAD 模型的情况下,对任意新物体进行即时姿态估计。
少镜头无模型物体姿态估计。 无模型方法不需要明确的纹理模型。取而代之的是提供一些捕捉目标物体的参考图像 [19, 22, 51, 58]。RLLG [3] 和 NeRF-Pose [35] 提出了无需对象 CAD 模型的实例化训练方法。其中,[35] 构建了一个神经辐射场,对物体坐标图和遮罩进行半监督。与此不同的是,我们引入了建立在 SDF 表示之上的神经对象场,用于高效的 RGB 和深度渲染,从而弥补了基于模型和无模型场景之间的差距。此外,在这项工作中,我们专注于可通用的新物体姿态估计,而 [3, 35] 并非如此。为了处理新物体,Gen6D [40] 设计了一个检测、检索和细化管道。然而,为了避免在使用分布外测试集时遇到困难,需要对其进行微调。OnePose [58] 及其扩展版 OnePose++ [19] 利用运动结构(SfM)进行物体建模,并预先训练 2D-3D 匹配网络来解决对应姿态问题。FS6D [22] 采用了类似的方案,并侧重于 RGBD 模式。然而,当应用于无纹理物体或严重遮挡时,对对应关系的依赖就会变得脆弱。
物体姿态跟踪。 6D 物体姿态跟踪旨在利用时间线索对视频序列进行更高效、流畅和准确的姿态预测。通过神经渲染,我们的方法可以高效地扩展到姿势跟踪任务中。与单帧姿态估计类似,现有的跟踪方法可根据对物体知识的假设分为不同的对应方法。这些方法包括实例级方法 [8, 11, 36, 67]、类别级方法 [39, 63]、基于模型的新颖物体跟踪 [29, 56, 72] 和无模型的新颖物体跟踪 [66, 71]。在基于模型和无模型的设置下,我们在公共数据集上创造了新的基准记录,甚至超过了需要实例级训练的先进方法[8, 36, 67]。
3. 方法
我们的系统整体如图 2 所示,显示了各组成部分之间的关系,以下各小节将对其进行介绍。
图 2. 我们的框架概览。为了减少人工大规模训练的工作量,我们利用最近出现的技术和资源,包括三维模型数据库、大型语言模型和扩散模型,开发了一个新颖的合成数据生成管道(第 3.1 节)。为了缩小无模型和基于模型的设置之间的差距,我们利用以物体为中心的神经场(第 3.2 节)进行新颖的视图 RGBD 渲染,以便进行后续的渲染和比较。在姿态估计方面,我们首先在物体周围均匀地初始化全局姿态,然后由细化网络进行细化(第 3.3 节)。最后,我们将细化后的姿态转发给姿态选择模块,该模块会预测它们的得分。得分最高的姿势被选为输出(第 3.4 节)。
3.1 大规模语言辅助数据生成
要实现强大的泛化,需要大量不同的物体和场景来进行训练。在现实世界中获取此类数据并标注准确的地面实况 6D 姿态既费时又费钱。另一方面,合成数据往往缺乏三维资产的规模和多样性。我们开发了一种用于训练的新型合成数据生成管道,该管道由最近出现的资源和技术驱动:大规模三维模型数据库[6, 10]、大型语言模型(LLM)和扩散模型[4, 24, 53]。与之前的工作[22, 26, 32]相比,这种方法极大地扩展了数据的数量和多样性。
3D Assets。 我们从最近的大型 3D 数据库(包括 Objaverse [6] 和 GSO [10])中获取训练资产。对于 Objaverse [6],我们从 Objaverse LVIS 子集中选择了对象,该子集中包含 4 万多个对象,属于 1156 个 LVIS [13] 类别。该子集包含 4 万多个对象,分属 1156 个 LVIS 类别[13]。该列表包含与日常生活最相关的对象,具有合理的质量以及形状和外观的多样性。它还为每个对象提供了一个描述其类别的标签,这有利于在接下来的 LLM 辅助纹理增强步骤中自动生成语言提示。
LLM 辅助纹理增强。 虽然大多数 Objaverse 物体都具有高质量的形状,但它们的纹理保真度却相差甚远。FS6D [22] 建议通过随机粘贴 ImageNet [7] 或 MS-COCO [38] 中的图像来增强物体纹理。然而,由于 UV 映射是随机的,这种方法会在生成的纹理网格上产生接缝等假象(图 3 顶部);将整体场景图像应用到物体上会导致不真实的结果。与此相反,我们探索了如何利用大型语言模型和扩散模型的最新进展来实现更逼真(和全自动)的纹理增强。具体来说,我们向 TexFusion [4] 提供了一个文本提示、一个物体形状和一个随机初始化的噪声纹理,以生成一个增强纹理模型。当然,如果我们想在不同的提示引导下对大量不同风格的对象进行增强,手动提供这样的提示是无法扩展的。因此,我们引入了两级分层提示策略。如图 2 左上角所示,我们首先提示 ChatGPT,要求它描述对象的可能外观;这一提示是模板化的,因此每次我们只需替换与对象配对的标签,该标签由 Objaverse-LVIS 列表给出。然后,来自 ChatGPT 的答案将成为提供给纹理合成扩散模型的文本提示。由于这种方法实现了纹理增强的完全自动化,因此有利于大规模生成多样化的数据。图 3 展示了更多示例,包括同一物体的不同风格化。
图 3. 上图: FS6D [22] 中提出的随机纹理混合。下图: 我们的 LLM 辅助纹理增强技术产生了更逼真的外观。最左边是原始 3D 资产。文字提示由 ChatGPT 自动生成。
数据生成。我们的合成数据生成是在 NVIDIA Isaac Sim 中实现的,利用路径追踪进行高保真照片逼真渲染。我们进行重力和物理模拟,以生成物理上可信的场景。在每个场景中,我们随机采样对象,包括原始版本和纹理增强版本。物体的大小、材质、相机姿态和光照也是随机的;更多详情请参见附录。
3.2. 神经对象建模
对于无模型设置,当三维 CAD 模型不可用时,一个关键的挑战是如何表示物体,以便有效地为下游模块渲染质量足够高的图像。如图 2 所示,神经隐式表示既能有效地进行新颖的视图合成,又能在 GPU 上进行并行处理,因此在为下游姿态估计模块渲染多个姿态假设时具有很高的计算效率。为此,我们借鉴之前的研究成果[45, 65, 71, 74],为物体建模引入了一种以物体为中心的神经场表示法。
场表示法。 如图 2 所示,我们用两个函数 [74] 表示对象。首先,几何函数 Ω : x ↦ s Ω : x \mapsto s Ω:x↦s 输入三维点 x ∈ R 3 x∈\mathbb{R}^3 x∈R3,输出带符号的距离值 s ∈ R s∈\mathbb{R} s∈R 。其次,外观函数 Φ : ( f Ω ( x ) , n , d ) ↦ c Φ :(f_{Ω{(x)}} , n, d) \mapsto c Φ:(fΩ(x),n,d)↦c 从几何网络 、点法线 n ∈ R 3 n∈\mathbb{R}^3 n∈R3 和视图方向 d ∈ R 3 d∈\mathbb{R}^3 d∈R3中获取中间特征向量 f Ω ( x ) f_{Ω{(x)}} fΩ(x),并输出颜色 c ∈ R + 3 c∈\mathbb{R}^3_+ c∈R+3。在实际操作中,我们会对 x x x进行多分辨率哈希编码 [45] 后再转发给网络。 n n n 和 d d d 都由一组固定的二阶球谐波系数嵌入。隐式物体表面是通过取有符号距离场(SDF)的零水平集得到的: S = { x ∈ R 3 ∣ Ω ( x ) = 0 } S =\{x ∈ \mathbb{R}^3 | Ω (x)= 0\} S={ x∈R3∣Ω(x)=0}。与 NeRF[44]相比,SDF 表示法 Ω Ω Ω 可提供更高质量的深度渲染,同时无需手动选择密度阈值。
实地学习。 在纹理学习方面,我们采用了截断近表面区域的体积渲染方法 [71]:
其中, w ( x i ) w(x_i) w(xi) 是钟形概率密度函数[65],取决于点到隐含对象表面的符号距离 Ω ( x i ) Ω(x_i) Ω(xi), α α α用于调整 分布的软度。概率在曲面交点处达到峰值。在公式 (1) 中, z ( r ) z(r) z(r) 是来自深度图像的射线的深度值, λ λ λ 是截断距离。为了提高训练效率,我们忽略了来自距离表面超过 λ λ λ 的空域的贡献,并且只对 0.5 λ 0.5λ 0.5λ 的穿透距离进行积分,以模拟自闭塞[65]。在训练过程中,我们会将这一数量与参考 RGB 图像进行比较,以进行色彩监督:
其中, c ˉ ( r ) \bar{c}(r) cˉ(r) 表示光线 r r r经过的像素点的地面真实颜色。
在几何学习方面,我们采用混合 SDF 模型 [71],将空间分为两个区域来学习 SDF,从而产生空间损失和近表面损失。我们还对近表面 SDF 采用了 eikonal 正则化 [12]:
其中, x x x 表示在分割空间中沿着射线的三维采样点; d x d_x dx 和 d D d_D dD 分别是射线原点到采样点和观测深度点的距离。我们不使用不确定的自由空间损失 [71],因为模板图像是在无模型设置中离线预先捕获的。总训练损失为:
每个对象的学习都是最优化的,无需先验,可在几秒钟内高效完成。神经场只需针对新物体训练一次。
渲染。 训练完成后,神经场就可以直接替代传统的图形管道,为后续的渲染和比较迭代执行高效的物体渲染。除了原始 NeRF [44] 中的色彩渲染外,我们还需要深度渲染来进行基于 RGBD 的姿态估计和跟踪。为此,我们采用行进立方法 [41] 从 SDF 的零级集中提取纹理网格,并结合色彩投影。每个物体只需执行一次。在推理时,给定一个物体姿态,然后我们按照光栅化流程渲染 RGBD 图像。或者,我们也可以使用Ω在线球面追踪技术直接渲染深度图像[14];但是,我们发现这样做的效率较低,尤其是在有大量姿态假设需要并行渲染时。
3.3 姿势假设生成
姿态初始化。 给定 RGBD 图像后,使用 Mask RCNN [18] 或 CNOS [47] 等现成方法检测物体。我们使用位于检测到的二维边界框内深度中值的三维点来初始化平移。为了初始化旋转,我们从以物体为中心、摄像头朝向中心的图圈中均匀采样 N s N_s Ns个视点。这些摄像机姿态会进一步增加 N i N_i Ni个离散平面旋转,从而得到 N s ⋅ N i N_s \cdot N_i Ns⋅Ni个全局姿态初始化,并将其作为输入发送给姿态精炼器。
姿态细化。 由于上一步中的粗姿态初始化通常噪声较大,因此需要一个细化模块来提高姿态质量。具体来说,我们建立了一个姿态细化网络,将以粗姿态为条件的物体渲染和摄像机输入观测数据的裁剪作为输入;该网络输出姿态更新,以提高姿态质量。不同于 MegaPose [32],后者通过渲染粗姿态周围的多个视图来找到锚点,我们观察到,渲染与粗姿态相对应的单个视图就足够了。对于输入的观察结果,我们不是根据恒定的二维检测结果进行裁剪,而是执行一种姿态条件裁剪策略,以便为平移更新提供反馈。具体来说,我们将物体原点投射到图像空间,以确定裁剪中心。然后,我们投射略微放大的物体直径(物体表面任意一对点之间的最大距离),以确定围绕姿势假设的物体和附近环境的裁剪尺寸。因此,这种裁剪是以粗略姿势为条件的,并促使网络更新平移,使裁剪与观测结果更加一致。通过将最新更新的姿势作为下一次推理的输入,可以多次重复改进过程,从而反复提高姿势质量。
细化网络结构如图 2 所示;详情见附录。我们首先用一个共享 CNN 编码器从两个 RGBD 输入分支中提取特征图。特征图被串联起来,输入具有残余连接[17]的 CNN 块,并通过位置嵌入将其划分为片段[9]进行标记化。最后,网络会预测平移更新 ∆ t ∈ R 3 ∆t∈\mathbb{R}^3 ∆t∈R3 和旋转更新 ∆ R ∈ S O ( 3 ) ∆R∈\mathbb{SO} (3) ∆R∈SO(3) ,每个更新都由变压器编码器 [62] 单独处理,并线性投射到输出维度。更具体地说, ∆ t ∆t ∆t表示物体在摄像机帧中的平移, ∆ R ∆R ∆R表示物体在摄像机帧中的方向更新。在实际应用中,旋转参数以轴-角表示。我们还尝试了 6D 表示法[78],也取得了类似的效果。输入的粗姿态 [ R ∣ t ] ∈ S E ( 3 ) [R |t]∈ \mathbb{SE}(3) [R∣t]∈SE(3) 然后通过以下方式更新:
其中 ⊗ ⊗ ⊗表示 S O ( 3 ) \mathbb{SO}(3) SO(3) 上的更新。在应用平移更新时,这种分解表示法消除了对更新方向的依赖,而不是使用单一的同质姿态更新。这就统一了相机坐标系中的更新和输入观测,从而简化了学习过程。网络训练是在 L 2 L_2 L2损失的监督下进行的:
其中, t ˉ \bar{t} tˉ和 R ˉ \bar{R} Rˉ 是 地面实况; w 1 w_1 w1和 w 2 w_2 w2是平衡损失的权重,根据经验设为 1。
3.4. 姿势选择
给定一系列改进后的姿势假设,我们使用分层姿势排序网络来计算它们的得分。得分最高的姿势被选为最终估计值。
分层比较。 网络采用两级比较策略。 首先,对于每个姿态假设,渲染后的图像都要与裁剪后的输入观测值进行比较,比较时要使用 3.3 节中介绍的姿态条件裁剪操作。这种比较(图 2 左下角)是通过姿态排序编码器进行的,它采用了与细化网络相同的主干架构进行特征提取。提取的特征会被串联、标记化并转发给多头自我关注模块,以便更好地利用全局图像上下文进行比较。姿态排序编码器执行平均池化,输出描述渲染与观测之间对齐质量的特征嵌入 F ∈ R 512 \mathcal{F}∈ \mathbb{R}^{512} F∈R512(图 2 中下部)。此时,我们可以按照通常的做法 [2, 32, 46],直接将 F \mathcal{F} F 推算为一个相似性标量。然而,这样做会忽略其他姿势假设,迫使网络输出一个绝对分数赋值,而这是很难学习的。为了利用所有姿势假设的全局背景来做出更明智的决定,我们在所有 K 个姿势假设中引入了第二级比较。多头自我关注是在串联特征嵌入 F = [ F 0 , . . . , F K − 1 ] ⊤ ∈ R K × 512 \mathbf{F} = [\mathcal{F}_0, ... , \mathcal{F}_{K-1}]^⊤∈ \mathbb{R}^{K×512} F=[F0,...,FK−1]⊤∈RK×512 上进行的,它编码了来自所有姿势的姿势对齐信息。通过将 F \mathbf{F} F 视为一个序列,这种方法自然可以推广到不同长度的 K K K [62]。我们不对 F \mathbf{F} F 进行位置编码,这样就不会受到排列组合的影响。然后,出席特征被线性投射到分数 S ∈ R K S∈ \mathbb{R} ^ K S∈RK 中,以分配给姿势假设。图 4 中的一个典型例子展示了这种分层比较策略的有效性。
图 4:姿势排序可视化 姿势排序可视化。我们提出的分层比较法充分利用了所有姿势假设的全局背景,从而更好地预测形状和纹理的整体趋势。真正的最佳姿势用红圈标注。
对比验证。为了训练姿势排序网络,我们提出了一种姿势条件三重损失法:
其中, α α α 表示对比度余量; i − i^- i− 和 i + i^+ i+ 分别表示负姿态样本和正姿态样本,它们是通过使用地面实况计算 ADD 指标[73]确定的。需要注意的是,与标准的三重损失(triplet loss)[27]不同,在我们的例子中,正样本和负样本之间并不共享锚样本,因为输入会根据每个姿势假设进行裁剪,以考虑到平移。虽然我们可以对列表中的每个姿态对计算这一损失,但当两个姿态都远离地面实况时,比较就会变得模棱两可。因此,我们只保留那些正样本来自足够接近地面实况的视角的姿势对,以便进行有意义的比较:
其中,求和涉及 i + ∈ V + i^+∈\mathbb{V}^+ i+∈V+, i − ∈ V − i^-∈\mathbb{V}^- i−∈V−, i + ≠ i − i^+ \not = i^- i+=i−; R i R_i Ri 和 R ˉ \bar{R} Rˉ 分别是假设和Ground Truth的旋转; D ( ⋅ ) D(\cdot) D(⋅) 表示旋转之间的大地距离; d d d 是预定义的阈值。我们还尝试了 [46] 中使用的 InfoNCE loss [49],但发现性能更差(第 4.5 节)。我们将此归因于 [46] 中的完美平移假设,而我们的设置并非如此。
4. 实验
4.1 数据集和设置
我们考虑了 5 个数据集: LINEMOD [23]、Occluded-LINEMOD [1]、YCB-Video [73]、T-LESS [25] 和 YCB-InEOAT [67]。这些数据集涉及各种具有挑战性的场景(密集杂波、多实例、静态或动态场景、桌面或机器人操作),以及具有不同属性(无纹理、闪亮、对称、大小不一)的物体。
由于我们的框架是统一的,因此我们考虑了两种设置(无模型和基于模型)和两种姿态预测任务(6D 姿态估计和跟踪)之间的组合,总共产生了 4 个任务。在无模型设置中,按照文献[22]的方法,从数据集的训练分割中选择一些捕捉到新物体的参考图像,并配备物体姿态的地面实况注释。对于基于模型的设置,则为新物体提供 CAD 模型。在除消融外的所有评估中,我们的方法始终使用相同的训练模型和配置进行推理,不做任何微调。
4.2. 公制
为了密切跟踪每种设置下的基线协议,我们考虑了以下指标:
- ADD 和 ADD-S 的曲线下面积 (AUC) [73]。
- 小于物体直径 0.1 的 ADD Recall(ADD-0.1d),如 [19, 22] 所用。
- 在 BOP 挑战赛中引入的 VSD、MSSD 和 MSPD 指标的平均召回率 (AR)[26]。
4.3. 姿势估计比较
无模型。 表 1 列出了在 YCB-Video 数据集上与最先进的 RGBD 方法 [22, 28, 57] 的比较结果。基线结果采用了 [22] 的结果。按照文献[22],为了公平比较,所有方法都给出了扰动的地面真实边界框作为 2D 检测。表 2 列出了在 LINEMOD 数据集上的比较结果。基线结果采用了文献[19, 22]。基于 RGB 的方法[19, 40, 58]拥有更多的参考图像来弥补深度的不足。在 RGBD 方法中,FS6D [22] 需要在目标数据集上进行微调。我们的方法在两个数据集上都明显优于现有方法,无需对目标数据集进行微调或 ICP 完善。
表 1. 根据 ADD 和 ADD-S 在 YCB-Video 数据集上的 AUC 测量的无模型姿势估计结果。"微调 "指的是根据 [22] 所介绍的方法,在测试数据集上对物体实例进行分组微调。
表 2. ADD-0.1d 在 LINEMOD 数据集上测得的无模型姿态估计结果。Gen6D* [40] 表示未进行微调的变化。
图 5 展示了定性比较结果。由于 FS6D [22] 的代码未公开发布,我们无法获得其姿态预测的定性结果。胶水上严重的自闭性和纹理的缺乏在很大程度上挑战了 OnePose++ [19] 和 LatentFusion [51],而我们的方法则成功地估计了姿势。
图 5. 无模型设置下 LINEMOD 数据集姿势估计的定性比较。图片经过裁剪和放大,以获得更好的视觉效果。
基于模型。 表 3 列出了 RGBD 方法在 BOP 3 个核心数据集上的比较结果: Occluded-LINEMOD [1]、YCB-Video [73] 和 TLESS [25]。所有方法都使用 Mask R-CNN [18] 进行 2D 检测。我们的方法远远优于现有的基于模型的新物体检测方法和实例级方法 [15]。
表 3. 在具有代表性的 BOP 数据集上以 AR 分数衡量的基于模型的姿态估计结果。所有方法均使用 RGBD 模式。
4.4 姿势跟踪比较
除非另有说明,否则在跟踪丢失的情况下,为了评估长期跟踪的鲁棒性,没有对所评估的方法进行重新初始化。有关定性结果,请参阅我们的补充材料。
为了全面比较平面外突然旋转、动态外部遮挡和摄像机运动不协调等难题,我们在 YCBInEOAT [67] 数据集上评估了姿势跟踪方法,该数据集包含动态机器人操作视频。基于模型设置的结果见表 4。我们的方法取得了最佳性能,甚至优于使用地面实况姿势初始化的实例训练方法 [67]。此外,我们的统一框架还允许在没有外部姿势初始化的情况下进行端到端姿势估计和跟踪,这是唯一具有这种能力的方法,表中以 O u r s † Ours^† Ours† 表示。
表 4. 在 YCBInEOAT 数据集上用 ADD 和 ADD-S 的 AUC 衡量的 RGBD 方法的姿态跟踪结果。 O u r s † Ours^† Ours† 表示我们使用姿势估计模块进行姿势初始化的统一管道。
表 5 列出了 YCB-Video [73] 数据集上的姿势跟踪比较结果。在基线中,DeepIM [36]、se(3)-TrackNet [67] 和 PoseRBPF [8] 需要在相同的对象实例上进行训练,而 Wüthrich 等人[72]、RGF [29]、ICG [56] 和我们的方法可以在提供 CAD 模型的情况下立即应用于新对象。
表 5. 在 YCB-Video 数据集上用 ADD 和 ADD-S 的 AUC 衡量的 RGBD 方法的姿态跟踪结果。 O u r s † Ours^† Ours† 表示我们在无模型设置下使用参考图像的方法。
4.5. 分析
烧蚀研究。 表 6 列出了对关键设计选择的消融研究。结果通过 YCB-Video 数据集上 ADD 和 ADD-S 指标的 AUC 进行评估。在无模型(16 幅参考图像)设置下,我们的(建议)是默认版本。W/o LLM 纹理增强去掉了合成训练中的 LLM 辅助纹理增强。在 W/o 变换器中,我们用卷积层和线性层取代了基于变换器的架构,同时保持相似的参数数量。W/o 分层比较只比较渲染和通过姿态条件三元组损失(公式 11)训练的裁剪输入,而不进行两层分层比较。测试时,它会将每个姿势假设与输入的观测数据进行独立比较,并输出得分最高的姿势。定性结果示例见图 4。Ours-InfoNCE 用 [46] 中使用的 InfoNCE loss 代替了对比度验证的成对损失(公式 14)。
表 6. 关键设计选择的消融研究
参考图像数量的影响。 如图 6 所示,我们研究了参考图像的数量如何影响 YCB 视频数据集上 ADD 和 ADD-S 的 AUC 测量结果。总体而言,我们的方法对参考图像数量的影响很小,尤其是在 ADD-S 指标上,并且在 12 幅图像时这两个指标都达到了饱和。值得注意的是,即使只提供 4 幅参考图像,我们的方法仍然比配备 16 幅参考图像的 FS6D [22]具有更强的性能(表 1)。
图 6. 参考图像数量的影响。
训练数据缩放规律。 从理论上讲,可以生成无限量的合成数据用于训练。图 7 展示了训练数据量如何影响 YCB-Video 数据集上 ADD 和 ADD-S 指标的 AUC 值。增益在 100 万左右达到饱和。
图 7. 训练数据大小的影响
运行时间。 我们测量了英特尔 i9-10980XE CPU 和英伟达 RTX 3090 GPU 硬件的运行时间。一个物体的姿态估计耗时约 1.3 秒,其中姿态初始化耗时 4 毫秒,姿态细化耗时 0.88 秒,姿态选择耗时 0.42 秒。由于只需要姿态细化,且不存在多个姿态假设,因此在频率为 ∼32 Hz 时跟踪运行速度更快。在实践中,我们可以运行一次姿势估计进行初始化,然后切换到跟踪模式以获得实时性能。
5. 结论
我们提出了一个统一的基础模型,用于新物体的 6D 姿势估计和跟踪,同时支持基于模型和无模型的设置。对 4 种不同任务组合的广泛实验表明,它不仅用途广泛,而且在相当大的程度上优于专为每种任务设计的现有先进方法。它甚至能达到与那些需要实例级训练的方法相当的效果。在未来的工作中,探索单个刚性物体之外的状态估算将是我们的兴趣所在。