当前位置: 首页 > news >正文

SRT3D: A Sparse Region-Based 3D Object Tracking Approach for the Real World

基于区域的方法在基于模型的单目3D跟踪无纹理物体的复杂场景中变得越来越流行。然而,尽管它们能够实现最先进的结果,大多数方法的计算开销很大,需要大量资源来实时运行。在下文中,我们基于之前的工作,开发了SRT3D,这是一种稀疏的基于区域的3D物体跟踪方法,旨在弥合效率上的差距。我们的方法在所谓的对应线(这些线模型化了物体轮廓位置的概率)上稀疏地考虑图像信息。由此,我们改进了当前的技术,并引入了考虑定义的全局和局部不确定性的平滑阶跃函数。对于所得到的概率公式,提供了详尽的分析。最后,我们使用预渲染的稀疏视点模型来创建物体姿态的联合后验概率。通过Tikhonov正则化的二阶牛顿优化方法对该函数进行最大化。在姿态估计过程中,我们区分了全局和局部优化,并在牛顿法中采用了一种新的近似方法来计算一阶导数。通过多个实验,我们证明了所得算法在运行时间和质量方面都改进了当前的技术,特别是在现实世界中遇到的噪声和混乱图像方面表现出色。

1 引言
在三维空间中跟踪刚性物体并预测其六自由度(6DoF)姿态是计算机视觉中的一项重要任务。其应用范围广泛,从增强现实(需要物体的位置以叠加数字信息)到机器人领域(在非结构化环境中需要物体的姿态以实现稳健的操作)。给定连续的图像帧,3D物体跟踪的目标是估计相机相对于已知物体的旋转和平移。与物体检测不同,跟踪能够连续提供信息,例如,使机器人能够通过视觉伺服来应对环境中的意外变化。虽然这个问题已经被深入研究,但仍然存在许多挑战,如部分遮挡、外观变化、运动模糊、背景杂乱以及实时要求。在本节中,我们首先概述了常见的技术。随后,回顾了基于区域的方法的相关工作。最后,我们介绍了我们的方法并总结了对当前技术的贡献。

1.1 3D物体跟踪

过去,许多3D物体跟踪的方法已经被提出。根据一些调查(Lepetit和Fua 2005;Yilmaz等人 2006)以及最近的发展,这些技术可以根据它们对关键点、显式边缘、直接优化、深度学习、深度信息和图像区域的使用进行区分。关键点特征如SIFT(Lowe 2004)、ORB(Rublee等人 2011)或BRISK(Leutenegger等人 2011)已被广泛用于3D物体跟踪(Wagner等人 2010;Vacchetti等人 2004),而最近的发展如LIFT(Yi等人 2016)和SuperGlue(Sarlin等人 2020)在各个阶段引入了深度学习。显式边缘提供了额外的信息来源,被许多方法所使用(Huang等人 2020;Bugaev等人 2018;Seo等人 2014;Comport等人 2006;Drummond和Cipolla 2002;Harris和Stennett 1990)。此外,还提出了直接方法(Engel等人 2018;Seo和Wuest 2016;Crivellaro和Lepetit 2014),这些方法优化了光度误差,并且可以追溯到Lucas和Kanade(1981)。虽然所有三类技术都有其有效的应用,但不幸的是,它们也都有显著的缺点。首先,基于关键点和直接优化的方法需要丰富的纹理,限制了适用物体的范围。同时,表现较好但适用于低纹理物体的基于边缘的方法在复杂场景中往往失效。最后,运动模糊会改变纹理和边缘的外观,导致额外的问题。

为了克服这些问题并对算法进行数据训练,最近提出了一些基于深度学习的方法,这些方法使用卷积神经网络(CNN)来考虑全图像信息。虽然它们取得了不错的效果,但只有少数方法(Wen等人 2020)能实时运行,大多数方法(Deng等人 2021;Wang等人 2019;Li等人 2018;Xiang等人 2018;Garon和Lalonde 2017)报告的帧率低于每秒30帧。然而,即使是最有效的算法也需要高端GPU的显著资源。此外,典型的缺点还包括耗时的训练以及对带纹理的3D模型的要求。另一个相对较新的发展是经济实惠的深度摄像机的出现,这些摄像机可以测量每个像素的表面距离。虽然纯粹基于深度的物体跟踪是可能的,但大多数方法(Ren等人 2017;Kehl等人 2017;Tan等人 2017;Krull等人 2015;Krainin等人 2011)将深度和RGB摄像头的信息结合起来。通常,这会带来更优的结果。然而,在许多应用中,使用额外的深度传感器并不可行。此外,算法需要高质量的图像。根据硬件、表面距离、表面特性和照明条件,获取此类图像可能非常困难。

由于上述缺点,基于区域的技术(Stoiber等人 2020;Zhong等人 2020b;Tjaden等人 2018;Prisacariu和Reid 2012)变得越来越受欢迎。这类方法的一个巨大优势是,使用单目RGB摄像头和物体的无纹理3D模型,它们能够在复杂场景中可靠地跟踪各种物体。其主要假设是物体可以从背景中区分开来。因此,不需要物体的纹理。虽然过去的方法计算开销很大,但我们的稀疏表达式克服了这一缺点。最后,基于我们的经验,基于区域的方法对运动模糊具有鲁棒性,使得跟踪快速移动的物体成为可能。由于这些优良的特性,接下来的工作重点是基于区域的技术。

1.2 相关工作

基于区域的方法使用图像统计数据来区分前景区域(与物体对应)和背景区域。通常使用颜色统计数据来建模每个像素的成员资格。基于这两个区域,目标是找到物体的姿态和最佳解释图像分割的相应轮廓。早期方法已经证明了这种技术的巨大潜力,这些方法使得在许多具有挑战性的场景中能够进行稳健的跟踪(Schmaltz等人 2012;Brox等人 2010;Rosenhahn等人 2007)。分割和姿态跟踪因此被视为独立的问题,首先是提取轮廓的初步步骤,然后进行姿态的优化。Dambreville等人(2008)后来将这两个过程结合到单一的能量函数中,从而提高了跟踪的鲁棒性。基于这种方法,并结合Bibby和Reid(2008)的逐像素后验成员资格,Prisacariu和Reid(2012)开发了PWP3D,这是一种实时能力的算法,使用了水平集姿态嵌入。它是几乎所有最先进的基于区域的方法的基础。

基于PWP3D,提出了多种算法,这些算法结合了额外的信息、扩展了分割模型或提高了效率。为了结合深度信息和基于区域的信息,Kehl等人(2017)扩展了PWP3D的能量函数,并添加了基于迭代最近点(ICP)算法的项。另一种方法中,Ren等人(2017)将区域和深度信息紧密耦合在一个使用3D签名距离函数的概率表达式中。最近,通过像素强度值的直接优化(Liu等人 2020;Zhong和Zhang 2019)或描述符字段(Liu等人 2021),考虑了物体纹理。此外,Sun等人(2021)提出了一种使用轮廓部分模型的基于边缘的技术,并将其与基于区域的方法结合。后来,Li等人(2021)开发了自适应加权局部捆绑,将区域和边缘信息结合起来。为了改进遮挡处理,Zhong等人(2020a)建议使用基于学习的物体分割。最后,Prisacariu等人(2015)建议结合来自手机惯性传感器的测量数据。

为了改进分割,Zhao等人(2014)扩展了PWP3D的外观模型,加入了一个边界项,考虑了像素的空间分布规律性。随后,Hexner和Hagege(2016)提出使用局部外观模型来进一步提高分割性能。这一思想后来被 Tjaden 等人(2018)改进,开发了时间一致的局部颜色直方图。最后,Zhong 等人(2020b)提出了一种方法,介绍了基于极坐标的区域分割和基于边缘的遮挡检测。

为了提高效率,Zhao 等人(2014)提出了一种类似粒子滤波的随机优化方法,用于初始化后续的阻尼牛顿法。后来,Prisacariu 等人(2015)开发了一种使用Levenberg-Marquardt算法的分层渲染方法。此外,Tjaden 等人(2018)提出使用高斯-牛顿法来提高收敛性。除了优化,另一种提高效率的思路是使用简化的签名距离函数(Liu 等人,2020)。Kehl 等人(2017)提出了使用预先计算的轮廓点来表示物体的3D几何形状,并沿射线稀疏计算能量函数。

最后,在我们之前的工作中(Stoiber等人,2020),我们改进了这一思路,开发了一种基于对应线的稀疏方法,使我们的算法在实现更好跟踪结果的同时,比之前的先进方法显著提高了效率。

1.3 贡献

从上一节介绍的思想出发,我们专注于开发SRT3D,一种高度高效的基于区域的稀疏跟踪方法。为了保持最低复杂度,我们只使用区域信息,并像PWP3D一样采用全局分割模型。我们在之前的方法基础上,沿对应线稀疏地考虑图像信息。此外,我们使用带有Tikhonov正则化的牛顿优化来估计物体姿态。图1展示了跟踪过程中在不同尺度下收敛的对应线。尽管这种公式与我们之前的方法类似,但我们主要动机是通过改进的不确定性建模和更好的优化技术来推进该方法和当前技术水平。此外,我们还对高效的对应线模型进行了更正式的推导和分析。

具体来说,本工作的主要贡献如下:

  • 对对应线进行了正式定义,并对描述轮廓位置的概率模型进行了详细的数学推导。
  • 提出了新的平滑阶跃函数,可以同时建模局部和全局不确定性。
  • 进行了详细的理论分析,展示了不同参数设置如何影响后验概率分布的特性。
  • 提出了全局和局部优化策略,以及一种新的局部一阶导数的近似方法。

在后续部分中,我们首先详细推导了对应线模型。随后,开发了一种结合对应线模型与3D物体几何形状稀疏表示的3D跟踪方法。接着讨论了所提算法的实现细节。最后,我们在RBOT和OPT数据集上进行了全面评估,显示我们的方法在效率和质量上都显著超越了当前的先进技术。

基于区域的3D跟踪

在本节中,我们首先定义基本的数学概念,接着描述一种稀疏视点模型,该模型在跟踪过程中避免了对3D模型的渲染。通过将这种几何表示与上一节中开发的对应线模型相结合,我们能够根据姿态公式化联合后验概率。该概率通过使用带有Tikhonov正则化的牛顿优化进行最大化。最后,我们定义了牛顿方法所需的梯度向量和Hessian矩阵,并区分了全局优化和局部优化,以确保快速收敛和高精度。

公式 (32) 的翻译

使用对数的好处是缩放项消失,乘积转化为求和。注意,Hessian 矩阵表示在特定位置处分布的曲率,对于高斯概率分布来说是常数,并且直接对应于负逆方差。基于这种概率解释,可以认为正则化参数对应于先验概率。该先验控制我们对之前姿态的信任程度,相对于由梯度和 Hessian 描述的当前估计。因此,对于 Hessian 表示不确定性高的方向,正则化有助于保持优化的稳定性,并避免不被足够数据支持的姿态变化。

重要性:同时,步长 α_s 有助于平衡权重,并指定优化的进展程度,直接缩放变换向量 θ̂。相同的一阶和二阶导数也可以使用逆方差加权和二阶导数的常数曲率 α_1_s 推导出。附录 D 中给出了这种解释的详细推导。

最后,除了导数的选择,平滑步进函数的参数化以及相应的后验概率分布形状对优化有显著影响。为了研究这一效应,我们考虑了图 5 中显示的对数后验的一阶导数。对于高斯分布,线性的一阶导数引导估计所有对应线的加权均值;而对于拉普拉斯分布,二元导数则引导优化朝向加权中值。注意,这与斜率参数 s_h 和幅度参数 α_h 建模的局部和全局不确定性的解释非常吻合。如果仅存在局部不确定性,考虑轮廓距离中的误差幅度并优化均值是有利的。同时,在全局噪声的情况下,仅考虑误差的方向,并以中值为基础进行优化是合理的。

4 实现

以下部分提供了已开发算法的实现细节。我们从稀疏视点模型的生成和颜色直方图的计算开始。接下来描述了跟踪过程。最后,我们解释了如何考虑已知的遮挡情况。所有提到的参数值都经过仔细选择,以最大化跟踪质量,同时不需要不合理的计算量。请注意,SRT3D 的源代码在 GitHub 上公开提供,以确保可重复性并允许完全重用。

4.1 稀疏视点模型
对于稀疏视点模型,考虑了 n_v = 2562 个不同的视图。这些视图通过将二十面体的三角形细分 4 次生成,结果是相邻视图之间的角度约为 4°。用于渲染的虚拟相机被放置在离物体中心 0.8 米的距离处。对于所有视图,计算了方向向量 M_v 和常数数量 n_c = 200 的模型点 M_X_i 和法向量 M_N_i。此外,对于每个点和视图,我们还计算了所谓的连续距离,这些距离描述了从 2D 模型点 x_i 沿着由法向量 n_i 定义的直线到前景和背景之间未被打断的距离。计算完毕后,这些值在渲染图像中被转换并以米为单位存储。之后,跟踪器使用这些值来禁用连续距离低于某个阈值的单个对应线,前提是假设在对应线中仅存在单次前景和背景的过渡。

4.2 颜色直方图

为了估计颜色概率分布 p(y∣mf)p(y \mid m_f)p(y∣mf​) 和 p(y∣mb)p(y \mid m_b)p(y∣mb​),使用了颜色直方图。RGB 颜色空间的每个维度都被离散化为 32 个等间距的箱子,总共得到 32768 个值。颜色直方图的计算可以从当前姿态估计开始,也可以从初始姿态开始,例如由 3D 目标检测管线提供。基于这个姿态,将 3D 模型点和法向量投影到图像中,使用公式 (26) 和 (27)。在法向量的正负方向上偏移一个像素后,考虑前 18 个像素。沿这条线的像素颜色被分配到前景或背景直方图,具体取决于它们位于投影模型点的哪一侧。请注意,如果前景和背景之间的过渡发生在较短的距离内,则考虑的像素少于 18 个。此外,在轮廓位置不确定的情况下,使用大于一个像素的偏移是合理的。

由于运动或动态光照,前景和背景的颜色统计在跟踪过程中不断变化。为了考虑这些变化,同时考虑之前的观察,我们使用在线适应。基于 Bibby 和 Reid(2008),我们如下更新直方图:

pt(y∣mi)=αip(y∣mi)+(1−αi)pt−1(y∣mi)p_t(y \mid m_i) = \alpha_i p(y \mid m_i) + (1 - \alpha_i) p_{t-1}(y \mid m_i)pt​(y∣mi​)=αi​p(y∣mi​)+(1−αi​)pt−1​(y∣mi​)

其中 i∈{f,b}i \in \{f, b\}i∈{f,b},αf=0.2\alpha_f = 0.2αf​=0.2 和 αb=0.2\alpha_b = 0.2αb​=0.2 是前景和背景的学习率。注意 p(y∣mi)p(y \mid m_i)p(y∣mi​) 是观测到的直方图,而 pt(y∣mi)p_t(y \mid m_i)pt​(y∣mi​) 和 pt−1(y∣mi)p_{t-1}(y \mid m_i)pt−1​(y∣mi​) 分别是当前和前一个时间步的适应直方图。初始化时,我们直接使用观测到的直方图,而不是将其与之前的值混合。

4.3 跟踪过程

开始跟踪需要一个初始姿态,这通常由 3D 目标检测管线或数据集注释提供。基于这个姿态和相应的相机图像,初始化前景和背景的颜色直方图。初始化后,对于每个从相机传输的新图像,执行一个跟踪步骤。单个跟踪步骤中执行的所有计算的概述见算法 1。从新图像和先前的姿态估计 CTMC T MCTM 开始,我们首先检索稀疏视点模型的最接近视图。然后,将模型点 M_X_i 和法向量 M_N_i 投影到图像平面上以定义对应线。之后,使用来自稀疏视点模型的连续距离来拒绝距离低于 6 个段的对应线。对于剩余的对应线,后验概率分布 p(dsi∣ωsi,lsi)p(d_{si} \mid \omega_{si}, l_{si})p(dsi​∣ωsi​,lsi​) 在 12 个离散值 dsi∈{−5.5,−4.5,…,5.5}d_{si} \in \{-5.5, -4.5, \ldots, 5.5\}dsi​∈{−5.5,−4.5,…,5.5} 上进行评估。在计算中,我们使用 8 个预计算的平滑步进函数值 hfh_fhf​ 和 hbh_bhb​,对应于 x∈{−3.5,−2.5,…,3.5}x \in \{-3.5, -2.5, \ldots, 3.5\}x∈{−3.5,−2.5,…,3.5}。此外,选择一个最小偏移 Δri\Delta r_iΔri​,使得线坐标 rir_iri​ 指向像素中心,而缩放后的线坐标 rsir_{si}rsi​ 确保 x=rsi−dsix = r_{si} - d_{si}x=rsi​−dsi​ 的匹配值。在我们的案例中,这意味着 rsi∈Zr_{si} \in \mathbb{Z}rsi​∈Z。计算出分布后,执行两次正则化牛顿优化迭代。第一次迭代使用全局优化,以快速收敛到粗略的姿态估计。第二次迭代使用局部优化来细化此姿态,步长为 αs=1.3\alpha_s = 1.3αs​=1.3。作为正则化参数,我们使用 λr=5000\lambda_r = 5000λr​=5000 和 λt=500000\lambda_t = 500000λt​=500000。

为了找到最终的姿态,重复此过程七次。我们在第一次迭代中选择较大的尺度 s=5s = 5s=5,在第二次和第三次迭代中选择 s=2s = 2s=2。在所有其他迭代中,采用尺度 s=1s = 1s=1。这一选择的效果是,开始时考虑了低分辨率的大面积,而在后续迭代中使用了高分辨率的短线。不同尺度下的对应线示例见图 1。请注意,尺度值通常取决于需要被跟踪器覆盖的区域以及帧到帧姿态差异的大小。最后,估计当前图像的姿态后,使用预测值更新颜色直方图。之后,跟踪器等待新图像的到来。

4.4 遮挡建模

虽然算法对未知遮挡相当稳健,但通过显式考虑已知遮挡,可以进一步提高跟踪结果。为此,给每个已知对象分配一个 ID。然后,将所有对象渲染到深度图像和包含对象 ID 值的图像中。使用自定义着色器,我们将两幅图像的信息结合起来,计算出一个遮挡掩码,该掩码在每个像素中以二进制方式编码哪些对象是可见的。为了考虑对象姿态的不确定性,着色器评估一个半径为 4 像素的区域,并将深度值最小的对象 ID 分配给中心。如果仅存在背景,则所有对象 ID 被认为是可见的。为了提高效率,使用了一个相机分辨率的四分之一大小的图像。最后,为了拒绝被遮挡的对应线,算法简单地检查对应线中心的遮挡掩码值。

5 评估

在本节中,我们对我们的方法 SRT3D 进行了广泛评估。我们使用了 Region-Based Object Tracking (RBOT) 数据集(Tjaden 等, 2018)和 Object Pose Tracking (OPT) 数据集(Wu 等, 2017),将我们的方法与当前基于区域的追踪技术的最新研究进行了对比。我们评估了预测位姿的质量以及算法的速度。此外,我们还进行了详细的参数分析,以评估不同设置的重要性。最后,我们讨论了重要的设计考量和现有的局限性。除了本节的内容外,我们还在项目网站上提供了真实世界的视频,展示了该跟踪器的性能。

5.1 RBOT 数据集

接下来,我们首先介绍了 RBOT 数据集,讨论了所进行的实验,并最终将我们的结果与现有的最新方法进行了对比。RBOT 数据集包括 18 个对象,如图 10 所示。对于每个对象,数据集中包含四个序列:一个常规版本,一个有动态光照的序列,一个带有动态光照和高斯噪声的序列,以及一个包含动态光照和导致遮挡的松鼠对象的序列。每个序列的示例图像如图 11 所示。每个序列包含 1001 张半合成的单目图像,这些图像是在真实世界的图像上渲染的,并由手持摄像机围绕一个凌乱的桌面拍摄。

在评估中,按照 Tjaden 等人(2018 年)的定义进行实验。平移和旋转误差分别通过以下公式计算:

  • 其中 CRMgt(tk)C_R M_{gt}(t_k)CR​Mgt​(tk​) 和 CtMgt(tk)C_t M_{gt}(t_k)Ct​Mgt​(tk​) 是第 k 帧的地面真实旋转矩阵和平移向量, k∈{0,…,1000}k \in \{0, \ldots, 1000\}k∈{0,…,1000}。如果同时满足 et(tk)<5e_t(t_k) < 5et​(tk​)<5 厘米 和 er(tk)<5∘e_r(t_k) < 5^\circer​(tk​)<5∘,则认为该姿态是成功的。在初始化时,跟踪器以地面真实姿态 t0t_0t0​ 启动,跟踪器运行直到序列结束或跟踪失败。如果跟踪失败,算法会在第 k 帧重新初始化为地面真实姿态。对于遮挡序列,方法在有无遮挡建模的情况下分别进行评估。在遮挡建模的情况下,同时跟踪两个对象,但对于遮挡物松鼠对象的跟踪失败不计入最终的跟踪成功率。对于其他跟踪器的设置,我们使用了 αh=0.36\alpha_h = 0.36αh​=0.36 和 sh→0s_h \to 0sh​→0,详细分析见第 5.3 节。

评估结果如表 1 所示。我们的方法与当前基于区域的跟踪最新技术进行了对比,同时也与 Huang 等人(2020 年)的边缘方法、Li 等人(2021 年)和 Sun 等人(2021 年)结合了边缘和区域信息的算法,以及 Liu 等人(2021 年)使用描述符场的区域方法进行了比较。结果表明,SRT3D 在大多数对象上表现显著优于以往的方法,并且在平均表现上最为出色。这一差异在纯区域方法中更为明显,我们的算法在几乎所有对象和序列上都表现最佳。考虑到平均成功率,我们的方法比 Sun 等人(2021 年)的组合方法高出约 5 个百分点,比 Stoiber 等人(2020 年)高 6 个百分点,比 Li 等人(2021 年)高 9 个百分点,且比 Zhong 和 Zhang(2019 年)的密集区域方法高 14 个百分点以上。相比我们之前的算法,尽管主要改进只是一个扩展的平滑阶跃函数和一些优化调整,但我们的方法却在跟踪成功率上有了明显提升。

除了跟踪成功率外,我们还比较了不同算法的平均运行时间,结果如表 2 所示。SRT3D 和我们之前的方法在同一台配备 Intel Xeon E5-1630 v4 CPU 和 Nvidia Quadro P600 GPU 的计算机上进行评估。由于两者算法的相似性,我们在没有遮挡建模的情况下获得了相似的平均运行时间(1.1 毫秒),而在遮挡建模的情况下,运行时间改善到了 5.1 毫秒。值得注意的是,在遮挡建模的情况下,还需要渲染遮挡掩码,且报告的时间是同时跟踪两个对象的情况。相比之下,除了 Liu 等人(2021 年)的算法运行时间是 SRT3D 的六倍外,其他方法的平均运行时间都比我们的方法高出一个数量级。更为显著的是,SRT3D 和我们之前的方法只使用了单个 CPU 核心,并且不依赖 GPU,而大多数其他方法通常使用多线程且依赖 GPU。因此,尽管使用的资源和计算机不同,结果仍然显示出我们稀疏区域方法在效率上的优越性。

5.2 OPT 数据集

虽然半合成的 RBOT 数据集包含大量的对象、复杂且凌乱的背景以及完美的地面真实值,但这些对象的模拟真实性有限,并且只应用了极少的运动模糊。OPT 数据集(Wu 等,2017 年)弥补了这些不足,它包含了真实世界中不同速度和运动模糊级别下的 3D 打印对象的录制。数据集总共包括六个对象,包含 552 个在不同光照条件和预定轨迹下,由机械臂录制的真实序列。每个对象的示例图像如图 12 所示。这些序列被分类为以下几类:平移、前后运动、平面内旋转、平面外旋转、闪光灯、移动光源和自由运动。

在实验中,我们使用了 Wu 等人(2017 年)提出的评估标准。我们计算了每帧的平均顶点误差,跟踪被认为是成功的,如果 ev(tk)<k⋅de_v(t_k) < k \cdot dev​(tk​)<k⋅d,其中 ddd 是由对象最大顶点距离计算的对象直径,kkk 是误差阈值。跟踪质量通过曲线下面积(AUC)得分来衡量,该得分是在误差阈值 k∈[0,0.2]k \in [0, 0.2]k∈[0,0.2] 的区间上,成功跟踪的位姿百分比值的积分。这会得到介于 0 到 20 之间的 AUC 得分。对于跟踪器,使用了幅度参数 αh=0.42\alpha_h = 0.42αh​=0.42 和斜率参数 sh=0.5s_h = 0.5sh​=0.5。此外,对于具有旋转对称的汽水罐对象,采用了较大的旋转正则化参数 λr=500000\lambda_r = 500000λr​=500000,主要原因是汽水罐的对象几何形状无法约束其绕垂直轴的旋转。在这种情况下,梯度和 Hessian 中的波动可能会导致对象的方向漂移。通过使用更多的正则化,我们能够减轻这一问题。

在 OPT 数据集上的实验结果如表 3 所示。我们将 SRT3D 与最新的基于区域的跟踪方法进行了对比,如 Li 等(2021 年),Zhong 等(2020b),和 Tjaden 等(2018 年)的研究,还与 Bugaev 等(2018 年)的方法以及一些著名的方法进行了比较,如 PWP3D(Prisacariu 和 Reid,2012 年),ElasticFusion(Whelan 等,2015 年),UDP(Brachmann 等,2016 年),以及 ORB-SLAM2(Mur-Artal 和 Tardós,2017 年)。需要注意的是,并非所有算法都是专门用于 3D 跟踪的解决方案。UDP 是一种单目位姿检测方法,而 ElasticFusion 和 ORB-SLAM2 是用于相机位姿定位的视觉 SLAM 方法,应用于对象的轮廓。有关这些算法评估的更多信息,请参考 Wu 等(2017 年)的研究。

对比结果表明,我们的方法在区域跟踪方面明显优于现有的最新方法,包括 Li 等(2021 年),Zhong 等(2020b),和 Tjaden 等(2018 年),在六个对象上都取得了更高的 AUC 得分。此外,和非区域跟踪方法相比,我们在六个对象中的四个上取得了最高的得分,且在平均表现上最佳。更为显著的是,尽管 ORB-SLAM2 在 house 对象上报告了更好的结果,但它使用了基于梯度的角点特征,而 SRT3D 则仅限于对象的轮廓信息,而非整个轮廓。Bugaev 等(2018 年)提出的基于边缘的算法在 jet 对象上表现最佳,该方法使用了盆地跳跃进行全局优化,且其平均运行时间为 683 毫秒,无法实时运行。总之,实验结果表明,SRT3D 在模拟数据上的出色表现可以很好地应用于真实世界的场景。

性能评估

在评估了我们方法的性能之后,我们希望加深对不同参数值的理解。为此,我们将 RBOT 数据集的平均成功率和 OPT 数据集的平均 AUC 得分绘制在不同参数值下的曲线上。图 13 展示了这些曲线。需要注意的是,成功率和 AUC 得分是针对所有对象和序列计算的。除了被分析的参数之外,其他设置与第 5.1 和 5.2 节相同。

对幅度参数 αh\alpha_hαh​ 的评估表明,虽然它对跟踪成功率有显著影响,但对 AUC 得分的影响较小。考虑到幅度参数模拟的是一个恒定的噪声水平,这在逻辑上是合理的,因为 RBOT 数据集的图像包含大量杂乱的背景,而 OPT 数据集仅包含纯白背景。对于斜率参数 shs_hsh​,当 sh→0s_h \to 0sh​→0 时观察到最高的跟踪成功率,而在 sh=0.5s_h = 0.5sh​=0.5 时获得了最佳 AUC 得分。这可以通过理论解释来理解:斜率参数模拟的是局部的不确定性。对于半合成的 RBOT 数据集,由于我们对对象几何形状有完美的了解,因此不应有任何局部不确定性。与此同时,对于 OPT 数据集,由于对象是 3D 打印的且图像是现实世界录制的,因此选择一个较大的参数以应对一定的不确定性是很重要的。

在分析步长 αs\alpha_sαs​ 的曲线时,我们观察到在 αs=1\alpha_s = 1αs​=1 附近有一个较大的平稳区,且最大值在 αs=1.3\alpha_s = 1.3αs​=1.3 时出现,适用于跟踪成功率和 AUC 得分。这表明该参数与不同图像数据之间的依赖性较低。特别有趣的是,当 αs=0\alpha_s = 0αs​=0 时的结果。在该设置下,没有进行局部优化,仅依赖全局优化,展示了全局近似方法的出色性能。

最后,关于正则化的评估,我们同时修改了旋转和平移参数。为了考虑弧度和米的不同单位,我们定义 λt=100λr\lambda_t = 100\lambda_rλt​=100λr​。与之前对汽水罐对象的评估类似,我们增大了旋转参数并设置 λr=λt\lambda_r = \lambda_tλr​=λt​。跟踪成功率和 AUC 得分的曲线表明了正则化的重要性。如果参数值过小,则在信息不足的方向上,优化会变得不稳定;同时,若参数值过大,优化过程会变慢,最终可能无法达到正确的位姿。因此,找到一个适中的参数值是非常重要的。根据我们的经验,一个良好的近似是使用与 Hessian 矩阵中旋转和平移最大对角元素同一数量级的正则化参数。

总结来看,参数分析表明,第 2 到第 3 节中的理论解释与实验结果吻合良好。除了加深理解外,这种可解释性还可以为新应用的参数搜索提供指导。此外,图 13 中的结果显示,所有参数都表现得非常稳定,在最大值附近都有较大的平稳区且没有突变,这意味着参数调整较为容易,且在广泛的数值范围内都能取得令人满意的结果。

5.4 讨论

实验结果表明,SRT3D 具有出色的性能。接下来,我们将讨论一些在实现这些结果时关键的设计考量,并对算法的局限性做出分析。关于计算效率,最大的性能提升来自于对应线模型和方法的稀疏性。此外,稀疏的视点模型提供了一个高效的表示,只需简单的搜索即可获取当前位姿下的对象轮廓。而且,与密集方法相比,无需计算二维符号距离函数,而只需使用轮廓距离。最后,离散尺度空间的公式进一步减少了计算量,通过将多个像素合并为段并支持使用预计算的平滑阶梯函数。

在位姿估计的质量方面,需要考虑多个因素。第一个重要因素是使用平滑阶梯函数,能够真实地模拟局部和全局不确定性,从而导致可靠的后验概率分布。此外,由于对应线的一维性和离散尺度空间的实现,我们能够在合理的时间内对后验概率分布进行采样,计算出均值和方差。这两种估计构成了快速收敛的全局优化的基础,避免了局部极小值。此外,对于局部优化,个别对应线的不确定性也被用于加权数值的一阶导数,权重根据方差的倒数确定。最后,Tikhonov 正则化也是一个重要因素,它帮助将估计值限制在前一帧的位姿附近,稳定了那些信息不足方向上的优化。

尽管该算法在许多应用中表现出色,仍然存在一些挑战,且这些局限性与其他基于区域的方法非常相似。最大的限制是对象必须是刚体,并且需要已知准确的 3D 模型。此外,背景必须与对象区分开来。如果背景中的大面积区域包含与对象相似的颜色,最终结果可能会受到干扰。另一个挑战来自于在某些位姿附近对象轮廓的相似性,这样的情况下,信息不足,算法可能无法收敛到正确的位姿。最后,像大多数跟踪方法一样,该算法只能用于局部优化,帧与帧之间的最大位姿差异有限。如果对象的大部分被遮挡,轮廓的可见部分可能无法完全约束对象的位姿,从而导致错误的估计。为了展示所有这些失败情况,我们在项目网站上提供了一段视频 3。

6 结论

在这项工作中,我们提出了 SRT3D,一种高效的基于稀疏区域的三维对象跟踪方法,该方法使用对应线来找到最佳解释图像分割的位姿。除了详细推导了对应线的数学原理外,本研究的一大贡献是开发了平滑阶梯函数,这使得可以同时建模局部和全局不确定性。我们详细分析了这种建模对理论后验概率分布和最终跟踪结果质量的影响。为了最大化依赖于位姿的联合后验概率,我们提出了一个先全局优化朝向均值、随后局部优化离散分布值的方案。我们还开发了一种新颖的局部一阶导数近似方法,通过方差倒数对有限差分值进行加权。最后,在 RBOT 和 OPT 数据集的多次实验中,我们证明了我们的算法在质量和效率上大幅超越了当前基于区域的跟踪技术的水平。

凭借这一优越的性能,我们相信该方法能够广泛应用于机器人技术和增强现实领域。由于其通用的公式化框架,提出的扩展方法也很容易构想。一个可能的方向是将区域跟踪中的其他技术融入其中,如先进的分割模型或遮挡检测。此外,考虑其他信息(如深度或纹理)也可能有益。最后,我们要强调的是,所开发的对应线模型不仅限于三维跟踪的背景,还可能在其他应用中发挥作用。例如,图像分割就是一个可能的应用领域。其他方法在质量和效率方面也可能取得类似进展,进而提高它们在现实世界中的适用性。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【Unity学习心得】如何制作俯视角射击游戏
  • 多线程下的共享变量访问数据竞争的问题
  • 告别繁琐粘贴,CleanClip Mac 版,让复制粘贴变得简单快捷!粘贴队列功能太强大了!
  • 骑砍2霸主MOD开发(26)-使用TrfExporterBlender制作TRF文件
  • Vue3.0组合式API:使用reactive()、ref()创建响应式代理对象
  • Java 原生API实现TCP客户端:发送和接收GBK编码消息
  • 【AI赋能医学】基于深度学习和HRV特征的多类别心电图分类
  • 窗口框架frame(HTML前端)
  • 【Vue】- ref获取DOM元素和购物车案例分析
  • 情感识别系统源码分享
  • 源码编译llama.cpp 、ggml 后端启用自定义BLAS加速
  • python实现冒泡排序的算法
  • 分布式技术概览
  • 数据库常规操作
  • 小众语言ruby在苹果中的初步应用
  • CentOS从零开始部署Nodejs项目
  • JAVA之继承和多态
  • js对象的深浅拷贝
  • Mysql优化
  • PAT A1017 优先队列
  • REST架构的思考
  • spring-boot List转Page
  • Vue学习第二天
  • WePY 在小程序性能调优上做出的探究
  • Xmanager 远程桌面 CentOS 7
  • 订阅Forge Viewer所有的事件
  • 排序(1):冒泡排序
  • 前端学习笔记之原型——一张图说明`prototype`和`__proto__`的区别
  • 腾讯优测优分享 | 你是否体验过Android手机插入耳机后仍外放的尴尬?
  • 为物联网而生:高性能时间序列数据库HiTSDB商业化首发!
  • 学习笔记TF060:图像语音结合,看图说话
  • MyCAT水平分库
  • 浅谈sql中的in与not in,exists与not exists的区别
  • 昨天1024程序员节,我故意写了个死循环~
  • ​批处理文件中的errorlevel用法
  • ​油烟净化器电源安全,保障健康餐饮生活
  • # Pytorch 中可以直接调用的Loss Functions总结:
  • # windows 运行框输入mrt提示错误:Windows 找不到文件‘mrt‘。请确定文件名是否正确后,再试一次
  • #565. 查找之大编号
  • #AngularJS#$sce.trustAsResourceUrl
  • #ifdef 的技巧用法
  • #QT 笔记一
  • #微信小程序:微信小程序常见的配置传值
  • (01)ORB-SLAM2源码无死角解析-(56) 闭环线程→计算Sim3:理论推导(1)求解s,t
  • (2020)Java后端开发----(面试题和笔试题)
  • (二)Kafka离线安装 - Zookeeper下载及安装
  • (二刷)代码随想录第15天|层序遍历 226.翻转二叉树 101.对称二叉树2
  • (黑客游戏)HackTheGame1.21 过关攻略
  • (黑马出品_高级篇_01)SpringCloud+RabbitMQ+Docker+Redis+搜索+分布式
  • (六) ES6 新特性 —— 迭代器(iterator)
  • (实战篇)如何缓存数据
  • (译)2019年前端性能优化清单 — 下篇
  • ****** 二十三 ******、软设笔记【数据库】-数据操作-常用关系操作、关系运算
  • .[backups@airmail.cc].faust勒索病毒的最新威胁:如何恢复您的数据?
  • .net core webapi Startup 注入ConfigurePrimaryHttpMessageHandler