摘要

扫描匹配Scan matching是registering注册两个激光扫描以确定其相对位置的问题,是移动机器人最依赖的工具之一。

为了权衡计算性能,当前算法采用employ heuristics 启发式法以快速计算答案。当然,这些启发式方法是不完善的:现有方法可能产生较差的结果,尤其是在先验条件较弱的情况下。现代机器人可用的计算能力保证了这些质量与复杂性之间的权衡取舍。

在本文中,我们提倡一种probabilistically-motivated scan-matching algorithm基于概率的扫描匹配算法,该算法可产生更高的质量和更鲁棒的结果,但会花费额外的计算时间。我们描述了此方法的几种新颖实现,这些实现在现代硬件上实现了实时性能,包括用于常规CPU的多分辨率方法和用于图形处理单元(GPU)的并行方法。我们还对我们的方法和几种现代方法进行了实证评估,说明了我们方法的优点。这些方法的鲁棒性使其特别适用于全局闭环。

I. INTRODUCTION

考虑一个机器人从两个姿势x0和x1感知环境;在每个位置,它都获得二维激光雷达扫描(z0和z1)。这些激光雷达扫描捕获通常以一度间隔采样的环境的水平横截面。

假设从x0和x1都可以看到环境的某些部分,通常可以找到一个刚体变换T,该变换将投影点z1以便它们与z0对齐。

匹配扫描z0和z1的过程称为扫描匹配scan matching. 。

扫描匹配问题的解决方案是刚体变换T,它由三个值参数化:两个平移分量(∆x和∆y)和旋转分量(θ)。

除了是一个有趣的感知问题之外,扫描匹配是大多数导航,地图和定位系统的核心。这是因为刚体变换T完全对应于机器人从x0到x1的运动。由于来自激光雷达的数据通常比里程计的质量高得多(容易发生不可预测的车轮打滑),因此扫描匹配在估计机器人的运动中起着核心作用

设计扫描匹配器的主要挑战是最小化运行时复杂性,同时最大化解决方案的质量(和鲁棒性)。
大多数现有方法都是围绕计算有效的本地搜索而设计的,这些搜索可以快速产生答案,
但对初始化错误没有鲁棒性

问题是,当被视为优化问题时,扫描匹配很少凸出rarely convex , cost surface 可能非常复杂,具有许多局部最小值(见图1)。

车辆的dead-reckoning error 推重误差可能导致: 初始估计值与全局最大值相差甚远。

结果,许多方法无法识别全局最大值

图1. Correlation (3D) Cost Function.相关(3D)成本函数。 给定两次激光扫描(下图),我们计算出一个刚体变换,通过计算三个维度的cost function成本函数(translation x和ˆ y的平移)和θ来对齐它们。

每个图块代表固定θ的成本量的一部分。
然后确定最大数值(白色十字线)。
Each tile represents a slice of the cost volume for a fixed θ.
The numerical maximum is then identified (white cross hairs).

本文介绍了基于两个激光雷达扫描互相关的一系列扫描匹配算法。

我们的方法在概率框架中提出了问题:它发现了刚体变换,该变换最大化了观测数据的可能性。

我们不相信局部搜索算法来找到全局最大值(正如我们将说明的那样,这种方法在存在初始化噪声的情况下效果不佳),而是对可能存在的刚体转换的整个空间进行搜索。

这个合理的区域是从先验派生的,而先验先验又可以从命令的运动或车轮/视觉测距法得到。
This plausible region is derived from a prior which, in turn, can be derived from the commanded motion or wheel/visual odometry.

本文的主要贡献是:

  • 我们描述了correlative scan matching approach. 相关扫描匹配方法的理论和实践优势。
  • 我们提出了一种能够在常规微处理器上实时运行的多分辨率实现;
  • 我们展示了如何将基于相关性的方法映射到图形处理单元(GPU)上,从而将CPU释放给其他任务。
  • 我们展示了如何从匹配操作中获得协方差估计covariance estimates
  • 我们针对三种常用的算法对我们的方法进行了全面的实证评估。

The central contributions of this paper are:

  • We describe the theoretical and practical advantages of a correlative scan matching approach.
  • We present a multi-resolution implementation capable of real-time operation on a conventional microprocessor;
  • We show how the correlation-based method can be mapped onto a Graphics Processing Unit (GPU), freeing the CPU for other tasks.
  • We show how covariance estimates can be obtained from the matching operation.
  • We present a thorough empirical evaluation of our methods versus three different algorithms in common use.

我们方法的质量和鲁棒性,以及它们实时运行的能力,使其非常适合鲁棒性和准确性至关重要的任何机器人平台。 当然,这包括同时定位和制图(SLAM)应用程序,但是实际上任何导航或定位系统都是有好处的。

我们首先简要回顾一下先前的工作(第二部分)。 我们的基于CPU和GPU的方法在第III节中进行了描述。 第四节介绍了我们的经验评估方法,并将我们的方法与广泛使用的几种方法的性能进行了比较。

2. PRIOR WORK

Iterative Closest Point (ICP) [1], [2] and Iterative Closest Line (ICL) [3], [4], [5] are used pervasively in scan matching.

迭代最近点(ICP)[1],[2]和迭代最近线(ICL)[3],[4],[5]广泛用于扫描匹配。

在ICP中,根据距离度量(最常见的是欧几里得距离),查询扫描中的每个点都与参考扫描相关联。 然后可以计算出最能使参考点和查询点对齐的刚体变换。

精确封闭格式算法Horn’s exact closed-form algorithm[6]特别适合该任务。

Lu和Milios [7]描述了两种基于ICP的扫描匹配方法。

  • 第一种方法分别考虑旋转分量和平移分量:交替固定一个,然后优化另一个。 给定旋转,最小二乘法用于优化平移。 使用全局截面方法进行旋转搜索[8]。

  • 他们的第二种方法称为IDC,将两种类似ICP的算法结合在一起,使用了不同的点匹配启发式算法。

ICL与ICP相似,区别在于查询点与从参考点提取的线匹配,而不是将查询点与参考点匹配。

这种方法的动机是传感器稀疏地采样环境,并且不同的激光雷达扫描可能采样环境的不同部分。换句话说,即使参考和查询扫描中的环境相同,对于所有点也可能没有合理的对应关系。

最简单的ICL变体会在每对相邻的激光雷达点之间插入线,
但这在许多情况下是不可取的(例如,栏杆栏杆和深度不连续)。

或者,可以使用启发式方法来确定哪些点对可能是连接的曲面或线/样条线的一部分
可以从较大的点集[9],[3],[4]中提取。

作为他在Blanche机器人上的工作的一部分,Cox描述了最早的ICL扫描匹配算法之一[10]。有趣的是,该算法在当时可用的硬件上运行,实现了0.125 Hz的更新速率。

通常希望使用扫描匹配方法来产生协方差估计值,并且Cox建议使用从最小二乘公式中得出的不确定性估计值。

在简单的环境中(尤其是当使用低复杂度的先验图时),这可以很好地工作。

但是,实际上,从最小二乘方得出的不确定性估计值过于可信。这是因为最小二乘法的步骤取决于数据关联。

不幸的是,数据关联最初是未知的,并且迭代方法可能无法计算出正确的对应关系。

由于从最小二乘方得出的不确定性估计不会反映数据关联中的不确定性,因此不确定性估计往往 over confident。

文献中还包含其他扫描匹配的启发式方法。

这些包括使用极坐标[11],正态分布变换,基于特征的方法[3],[4],霍夫变换[12]和直方图[13],[14]。

我们的工作在本质上与Konolige基于相关性的本地化方法[15]相似。Konolige’s correlation based localization approach

虽然问题的提法几乎相同,但我们描述了计算答案的新方法。

图形处理单元(GPU)尚未广泛用于机器人应用。

文献检索显示,只有一篇关于运动计划的论文[16]; 令人惊讶的是,它始于1990年。我们相信我们的实现是使用GPU加速映射和定位的第一个示例。

III. APPROACH

A. Probabilistic formulation 概率表述

我们根据图2所示的图形模型对扫描匹配问题进行建模。

根据某些运动u,机器人从xi-1移到xi。

观测值z取决于环境模型m和机器人的位置。

我们的目标是找到机器人位置p(xi | xi-1,u,m,z)的后验分布。

我们应用贝叶斯规则
并删除不相关的条件,
给予:

第一项,p(z | xi,m)是观察模型:如果已知环境和机器人的位置,则特定观察的可能性是多少?

第二项p(xi | xi-1,u)是机器人的运动模型,例如从控制输入或测距法获得的模型。

虽然通常通过多元高斯分布来了解运动模型,但是观察模型的计算难度更大,结构也更复杂。

它通常具有多个极端,例如,如图1所示。

本文的主要贡献是一种有效计算分布p(z | xi,m)的方法,以便我们可以计算机器人位置的后验分布(如等式1所示)。

虽然先前的作者建议hill-climbing爬山以找到p(z | xi,m)的局部最大值(以期获得最大似然解),

但是,我们的方法将更全面地描述分布。

我们的方法既可以得到更可靠的最大似然估计,也可以得到有原则的不确定性估计。

像以前的工作一样,我们假定每个激光雷达返回zj是独立的,从而使我们可以编写:


单个激光雷达样本zj的概率分布应为
原则上,
考虑从位置xi沿着特定方位可以看到地图m的哪个表面。

这将需要昂贵的射线投射类型的操作。

像其他人一样[15],我们忽略了可见性和遮挡效应,并根据zj与任何表面的距离来近似zj的概率。

在(SLAM)上下文中[17],

model m是从先前的激光雷达观测中得出的。

在其他情况下,model m可能是预先已知的[10]。

B. Lookup-Table Rasterization 查找表栅格化

1842/5000
概率p(z | xi,m)的计算可以通过建立2D查找表来加快。我们通过预先计算查找表来遵循先前方法[18],[19]的方法
包含在世界上每个(x,y)位置进行激光雷达观测的对数概率。

我们的栅格化过程始于地图m。
对于地图中的每个可观测点mi,考虑到mi是该观测的原因,我们可以计算传感器观测到附近点p的条件概率。
我们对地图中的每个点重复此过程,并在查找表中记录每个点的最大概率。
由于我们的查询表必须与视点无关,
我们将传感器模型(具有独立的范围和仪器噪声)产生的潜在banana-shaped distribution分布近似为径向对称分布。
对于当前可用的传感器,这似乎是一个合理的近似值。生成的查找表可以显示为图像,如图3所示。

一个关键的问题是:“模型的来源是什么?”在极少数情况下,模型是事先已知的[10],但更多情况下,必须根据先前对环境的观察来估计模型。估计此模型本身是一个复杂的问题,并且就其极限而言,需要对SLAM问题的完整解决方案。

在本文中,我们将简单地使用早期的激光扫描(参考扫描)作为模型。这种方法的优点是易于实现,健壮(因为早期的数据关联错误,该模型无法分开),并且也许最实用的方式用作帮助我们复制结果的基准实现。更复杂的实现可以通过组合多次扫描(例如CARMEN的Vasco)或通过从激光雷达点推断连续的表面来构建更详细的模型[4]。


栅格化成本表。
给定参考扫描,对观察新点的对数概率进行编码, 在查找表中。
顶部:参考扫描,
底部:生成的查找表。
明亮的值表示较大的概率。

Approach Overview

方法概述

回顾一下,我们的目标是估计分布p(z | xi,m),
通过Eqn。 1,

可以用来获得分布p(xi | xi-1,u,m,z)。

与早期方法不同,我们不仅对p(xi | …)的最大似然值感兴趣,而且对分布本身感兴趣,这样我们可以获得不确定性的度量。

这种分布没有简单的表达:必须用数字进行评估。

在以下两个部分中,我们将描述两种用于快速评估xi的多个值上的分布p(z | xi,m)的算法。

D. Multi-Level Resolution Implementation 多层次解决方案的实施

本节介绍基于快速相关的方法
适用于常规微处理器。

传统的CPU不太适合计算p(z | xi,m)的大量样本。

我们的方法反映了这一点,试图最大程度地减少所需的评估次数

1)表征大面积的分布
2)精确定位最大似然值。

我们分三部分描述我们的方法:
从naive 实施向我们的多分辨率方法发展。

1)暴力匹配
原则上,我们需要在三维点上评估p(z | xi,m);
这三个维度对应于T的未知参数:∆x,∆y和θ。

我们的幼稚实现由三个嵌套循环组成。

对于每个体素,计算并记录概率。
在单个体素上的评估涉及第四个嵌套循环,遍历查询扫描中的每个点,进行投影,然后在查找表中查找成本。
如我们的结果部分所示,此方法相当慢。

2)Computing 2D Slices

bruteforce方法运行缓慢的原因之一是针对每个体素重新投影了查询扫描中的点。

这是不幸的,因为对于给定的θ值,投影的查询点通过related x和ˆ y搜索方向的纯平移而相关。

换句话说,通过在最外面的循环中遍历θ可以节省大量的计算时间,此时查询点将被正确旋转。

内部的两个循环(用于x和y)仅转换查询点。 通过使翻译搜索的步长大小与查找表的分辨率匹配,可以使此操作更快。

如结果部分所示,此方法比蛮力方法快得多。

3)多级分辨率 Multi-Level Resolution:

我们最终基于CPU的实现利用了以不同分辨率呈现的两个栅格查找表。 第一个是高分辨率(在我们的实现中为3 cm分辨率),第二个是低分辨率表(30 cm分辨率)。

在非常低的分辨率下,参考扫描中的细节可能会消失。 取而代之的是,我们计算低分辨率表,以便将每个像元设置为高分辨率图中对应像元的最大值。 这确保了由低分辨率图计算的概率始终至少与高分辨率图中的概率一样大。 换句话说,它保证我们不会错过最大值。

我们的策略是使用低分辨率地图快速识别可能包含全局最大值的区域和可能不包含全局最大值的区域。 目的是最大程度地减少高分辨率搜索量。 方法是:

1)使用低分辨率表格评估整个3D搜索窗口中的概率p(z | xi,m)。 假设最大值出现在体素i处; 将最大值表示为Li。

2)使用高分辨率表格评估体素i内的搜索量。 假设该体素的对数似然为Hi。 请注意,Hi≤Li,因为低分辨率图会高估对数可能性。

3)对于步骤1中计算的每个对数似然至少为Hi的低分辨率体素,请以高分辨率评估该体素。 如果找到更好的对数可能性,请更新Hi。

4)在步骤3中以高分辨率评估的所有体素的最大值是以高分辨率评估的整个搜索空间的最大值。

这种多级分辨率方法非常快,使得实时相关扫描匹配成为可能。 如结果部分所示,它也非常健壮。

E. Graphics Processor Approach

图形处理单元(GPU)的计算吞吐量非常大,非常适合在一系列值上评估p(z | xi,m)之类的函数。 我们相信我们是第一个在机器人映射和本地化环境中使用GPU的公司

我们的实现是使用OpenGL GLSL着色器编写的,而不是像NVidia的CUDA这样的特定于供应商的语言编写的。 虽然这需要我们的实现根据3D渲染操作(即通过绘制带纹理的多边形来计算功能)来解决问题,但相关的扫描匹配方法非常简单,可以使其简单明了。

像基于CPU的实现一样,我们计算p(z | xi,m)的“切片”,从而确定每个单独图块的xi方向。 我们的片段着色器将两个纹理作为输入:一个由查询点组成的1D数组,以及一个与查找表相对应的2D纹理。 我们在GPU实现中使用了与CPU实现中完全相同的查找表。

每个片段针对特定的xi值计算p(z | xi,m)的值。该值通过纹理坐标传递到着色器。多边形中的每个片段都会根据在多边形顶点处指定的纹理坐标自动接收线性插值的纹理坐标。换句话说,当我们在屏幕上渲染多边形时,纹理坐标根本不与纹理相对应:片段着色器将它们解释为应应用于查询点的刚体变换。

片段着色器本身与最原始的CPU方法最相似:每个片段在查询点上进行迭代,根据xi的局部值投影每个点,然后从查找表中获取对数似然性。着色器仅将每个像素的对数似然相加在一起,然后将结果值输出到帧缓冲区。然后,主机CPU可以检查帧缓冲区中的最大似然解。

在主机CPU方面,我们为要评估的xi的每个方向绘制一个四边形。一个四边形对应于一组固定方向的平移。来自GPU的结果数据如图1所示。请注意,图中的颜色编码是一种可视化辅助工具:GPU输出的每个像素都是标量。


图4.后精度。 在200,000次迭代中计算了三种方法的平均后平移误差(z轴),初始化误差最大为74度(x轴)和3米(y轴)。

左:ICP,
中:爬山,
右:相关性(我们的方法)。

随着刚体变形的初始估计值下降,ICP和Hill-Climbing的输出质量也会随之下降。 相反,所提出的方法的后验误差与初始误差无关。 ICL的结果与ICP非常相似,因此已被省略。

F. Computing Covariances

在许多应用中,xi的最大似然估计就足够了。 但是,我们的方法允许对不确定性进行原则上的估计。

一旦在xi值范围内评估了成本函数的值,就可以将多元高斯分布拟合到数据中。 令x(j)i是xi的第j个求值:

从p(z | xi,m)的计算值估计扫描匹配器的不确定性时,要考虑到两个主要的歧义来源:传感器本身的噪声,以及哪些查询点应与模型的哪个部分相关联的不确定性。

这种方法的缺点是所得的高斯仅适合于已计算的样本。 高斯区域中不会反映任何不在采样量内的高概率区域,从而导致过度自信的估计。

因此,重要的是评估xi的大面积上的概率p(z | xi,m)
我们的方法做得很好。

有关两种情况的协方差估计,请参见图5。


样本协方差。
左:位置在x和y方向都受到很好的约束,产生一致的协方差估计。
右图:长长的走廊仅提供一些纵向约束,从而产生拉长的不确定椭圆。

IV. RESULTS

A.实验设计对扫描匹配器进行全面的实证评估需要大量真实的数据。 目前,获取此数据的唯一合理方法是通过仿真。 但是,通过从真实数据生成的地图中模拟新数据,可以避免传统的模拟缺陷(变化不大,杂乱无章的环境)。 在本文中,我们从英特尔研究中心数据集构建的地图中模拟了激光雷达数据(见图6)。 可从Radish [20]数据存储库中获取原始数据。 该图是使用扫描匹配器构建的,该匹配器采用了本文中的方法并结合了强大的闭环方法[4]。

为了使模拟观察更加真实(并考虑到在数据收集过程中并未观察到建筑物的所有部分),对人工观察位置进行了手动注释; 这些区域显示为蓝色。 我们的实验从蓝色区域随机选择一个合法姿势,然后在附近选择另一个姿势。 第二个姿势必须满足两个条件:它也必须是合法姿势(即在蓝色区域),并且两次扫描之间必须有连续的蓝色线。 再加上我们对360度扫描的使用,可确保两次扫描至少包含一些重叠的视图。 这些预防措施可确保模拟扫描至少包含一些重叠功能。 如果没有重叠的特征,则不能期望使用扫描匹配方法来计算出合理的答案

由于机器人的位置不同,该采样过程可产生逼真的扫描结果,显示出真实的杂波,噪声和遮挡效果。 我们没有对行人等动态物体的效果进行建模。 最终,模拟的激光扫描被与LMS-210激光雷达一致的高斯噪声所破坏。

B. Comparison Methods

除了本文描述的基于相关性的方法外,我们还实现了三种流行算法的变体,以提供有竞争力的比较。 这些方法旨在代表正在使用的算法。

1)ICP:

此处使用的迭代最近点(ICP)算法使用欧几里得距离作为其距离度量标准,且匹配限制为1.0 m。 这里的变体是对称的:对于两次扫描中的每个点,我们都找到了与另一次扫描最接近的点。 例如,假设ai是最接近bj的点,而bk是b中最接近ai的点。 如果bi距aj的距离是bk的两倍以上,则删除对应关系(ai,bi)。 这种改进有助于识别仅一次扫描即可看到的环境部分,并拒绝否则可能导致的远程通信。 在上面的示例中,bj可能没有相应的参考点。 我们的对称变体还创建了其他对应关系,有助于减少匹配错误。 给定一组对应关系,我们使用Horn的算法[6]计算最佳的刚体变换。

2)ICL:
在我们的实验中使用的迭代最近线(ICL)算法使用欧几里得距离将查询点与最近的线段相关联。 线段由相隔不超过1.0 m的连续点对生成。 假设查询点qi已与线段s关联:最接近qi的s上的点已关联并传递给Horn的算法,以计算刚体变换。

3)爬山:
这里使用的爬山方法是根据随CARMEN一起分发的Vasco扫描匹配器建模的。这是一种局部搜索方法,它反复尝试沿轴向方向进行步距,并接受改善匹配度的步距。台阶开始时相对较大(x和y为1 m,θ为10度)。当没有步长降低误差时,步长将减小一半。当步长达到预定的最小值(x和y为0.001 m,θ为0.05度)时,搜索结束。与我们的方法一样,Vasco的优化是用概率公式表示的,并使用对数似然查找表。为了能够与基于相关性的方法进行直接比较,我们使用相同的栅格化查找表。

我们的主要实验包括大约250,000次迭代;对于每次迭代,我们选择新的姿势,将噪声添加到先前的估计中,然后运行每个扫描匹配器。在图4中,绘制了解中的平均平移误差(z轴)与先验的平移噪声(x轴)和旋转噪声(y轴)的关系。 (图的对称性是由于先前的估计同时具有正和负旋转误差)。

通常,超过几厘米或几度的误差是不可接受的:它们会导致误差积聚在机器人的位置估计中,且速度过快。凭直觉,我们期望解决方案中的较大误差会反映之前的较高噪声水平。 ICP,ICL和爬山的情况确实如此。还值得注意的是,即使初始化时几乎没有噪音,爬山法的误差也比ICP稍高。

本文的主要结果是:现有技术中基于相关性的方法的误差非常低且对噪声具有鲁棒性。这种卓越性能的代价是更高的计算成本。但是,正如我们将在IV-C节中看到的那样,此成本是相当可控的。

查找表的分辨率影响结果的准确性。我们将方法的误差描述为在0.001m至1m范围内的查找表分辨率的函数。我们发现,分辨率低于1.5厘米的分辨率没有任何优势,而3.1厘米的分辨率仅稍差一些。分辨率大于6cm时,误差会迅速增加。根据这些数据,我们建议分辨率为3cm。

C. Performance

毫不奇怪,这里描述的相关方法通常比ICL,ICP和Hill Climbing慢。相关方法的主要动机是质量的提高。

但是,基于相关性的方法足够快以供实时使用(参见图7)。实验所用的CPU是2.4 GHz的Intel Core2 6600。尽管CPU有多个内核,但我们的实验仅使用一个线程。我们评估了两个不同的GPU,跨越了两代性能。 7600表示运行在400 MHz的NVidia 7600GS,而GTX260表示运行在650MHz的NVidia GTX260(具有192个流处理器)。

网格分辨率为1/32米,对于相关方法,将θ步长设置为1度。

即使使用我们的简单实现,ICP和ICL的计算复杂度也很好(请参见图7)。爬山特别快。

尽管它们的计算复杂度随位置不确定性的增加而很好地缩放,但在这些高不确定性条件下,它们的质量完全不能接受(见图4)。正如预期的那样,相关方法的计算复杂度随着先验不确定性的增加而迅速增加:复杂度随不确定性的大小而定。

对于相对较小的不确定性(例如在增量扫描匹配上下文中可能遇到的不确定性),几种相关算法都具有实时性能。在这种情况下,搜索区域会随着扫描仪的更新速度而减小:有了快速更新,机器人就根本没有时间累积大量的位置误差。例如,在75Hz的频率下,车辆必须具有37 m / s(82 mph)的速度误差才能保证0.5 m的搜索窗口。

搜索窗口的大小(以θ为单位)同样足够大:在75Hz时,机器人必须以240 rpm的转速旋转才能保证20度的窗口。但是,即使以75Hz的更新速率,多分辨率相关算法也足够快(8.4 ms)以实时运行。

对于闭环应用而言,实时性能的重要性降低:找到正确对应关系的能力成为关键因素。机器人只会在非常间歇的基础上关闭大型循环(可能每隔几分钟一次)。

这些循环闭合是出现较大不确定性窗口的地方。

我们看到相关方法的性能(特别是多分辨率实现,可以处理4 m的平移误差,而90度旋转误差超过10Hz)足以满足这些目的。

运行时的可变性对于实时系统也是一个挑战。 ICP,ICL,Hill-Climbing和多分辨率相关算法的运行时复杂度取决于数据。

使用ICP和ICL,计算某些扫描和其他扫描的答案可能要花费大约2.5倍的时间(见图8)。 尽管GTX260 GPU实现的可变性高于预期,但单分辨率相关方法通常更好。

这种可变性仅在较小的搜索大小时发生:执行较大的搜索时,GPU方法变得非常一致。 我们怀疑某些可变性是由于设置操作的开销所致。


图7.运行时结果。

对于三种不同的搜索窗口大小,给出了两次扫描注册的处理时间。

第一个窗口大小是增量扫描匹配操作的典型值(例如,用于校正测距法),而第三个窗口则代表着相当大的“闭环”问题。 对于三个不同的搜索窗口,我们收集了时序估算。

请注意,我们的ICP和ICL的实现是简单的实现,可以通过使用四叉树或类似的数据结构来大大提高速度。

图8.运行时变量。
对于实时应用程序,运行时可变性可能是重要的设计考虑因素。 ICP,ICL,爬山和多分辨率算法由于其算法的数据依赖性而显示出显着的运行时可变性。 GPU(尤其是GTX260)的可变性有些令人惊讶,并且可能归因于高昂的间接费用。

V. CONCLUSIONS

五,结论
本文提出了一系列基于相关性的扫描匹配算法。 该方法对于初始化噪声极其健壮,目前的性能明显优于其他方法。 我们证明了可以在CPU和GPU上实时使用这些强大的算法。 我们的方法是基于概率的,因此很容易合并概率先验和计算协方差估计。 有关例程的实现,请访问http://april.eecs.umich.edu。

[翻译]Real-Time Correlative Scan Matching相关推荐

  1. Real-Time Correlative Scan Matching 翻译和总结

    Olson E B . Real-time correlative scan matching[C]// Robotics and Automation, 2009. ICRA '09. IEEE I ...

  2. 【论文阅读记录】Real-Time Correlative Scan Matching

    这篇文章是谷歌的Cartograph中实现real_time_correlative_scan_matcher的论文 Real-Time Correlative Scan Matching Edwin ...

  3. 【论文简述及翻译】Correlate-and-Excite: Real-Time Stereo Matching via Guided Cost Volume Excitatio(CVPR 2021)

     一.论文简述 1. 第一作者:Antyanta Bangunharcana 2. 发表年份:2021 3. 发表期刊:CVPR 4. 关键词:立体匹配.代价聚合.特征激励.实时网络.视差回归 5. ...

  4. The Normal Distributions Transform: A New Approach to Laser Scan Matching

    这篇论文一共是十一个部分,第一部分和第二部分对应简介和前人的工作,第三四五主要是介绍了算法的实现细节,分别是正态分布的建立过程.点云的匹配和位姿的优化,之后第六和第七两部分介绍了算法的实际应用,在轨迹 ...

  5. 雷达系列论文翻译(十二):Cartographer系列(三)

    Real-Time Loop Closure in 2D LIDAR SLAM 摘要 便携式激光测距仪,又称激光雷达,同时定位和建图(SLAM)是一种有效的获取竣工平面图的方法.实时生成和可视化楼层平 ...

  6. Google Cartographer 《Real-Time Loop Closure in 2D LIDAR SLAM》翻译 (中英对照)

    Google Cartographer <Real-Time Loop Closure in 2D LIDAR SLAM>翻译 (中英对照) 作者: Wolfgang Hess, Damo ...

  7. real-time loop closure in 2D LIDAR SLAM 论文整理

    1.cartographer整体: 主要论文: Real-Time Loop Closure in 2D LIDAR SLAM , ICRA 2016 Efficient Sparse Pose Ad ...

  8. 基于 2D 激光雷达和实时回环优化的 SLAM 算法

    基于 2D 激光雷达和实时回环优化的 SLAM 算法 原文: https://www.ixueshu.com/document/771d692c7d3c0c40318947a18e7f9386.htm ...

  9. SLAM 论文阅读和分类整理

    前言:以前读论文,都是靠脑子硬记,哪个实验室,谁,哪一年在什么会议上发了一篇关于什么的论文.当需要回溯的时候,每篇论文能给出个大概,不具体,找起来也麻烦,以后就在这个 List 里分类整理已经读过的论 ...

  10. 【转】SLAM 论文阅读和分类整理

    需要时不时膜拜一下大神,激发一下原动力!!! 前言:以前读论文,都是靠脑子硬记,哪个实验室,谁,哪一年在什么会议上发了一篇关于什么的论文.当需要回溯的时候,每篇论文能给出个大概,不具体,找起来也麻烦, ...

最新文章

  1. java中怎样判断余数为3,Java的基础语法(三): 运算符
  2. 人脸特征值能存放在sql server中吗_钥匙丢了进不了门,Out了!只要自己没丢就能进门...
  3. swift4.0 确定手势滑动方向
  4. 【深度学习入门到精通系列】Mean Iou
  5. 【Python】PAT-1026 程序运行时间(AC)
  6. 深入理解PHP的运行模式
  7. POJ-2976 Dropping tests 01分数规划
  8. 定时插座动一下就断_使用插座定时器在某些时候自动将您的Amazon Echo静音
  9. 抢鲜体验.NET6 Preview1,配上Docker简直停不下来!
  10. Python turtle库实现基本剖析
  11. python不调包实现sobel_python利用百度云接口实现车牌识别的示例
  12. DataBase -- Operator
  13. 连发12款软硬件产品 瑞星领跑企业级安全市场
  14. QT虚拟小键盘设计--qt事件循环,事件发送的理解
  15. 如何在游标里控制条件_如何在冰冻条件下保护控制球阀?
  16. 基于SSM+Layui图书借阅管理系统设计
  17. testbed与 c++test 的几点区别
  18. 百度翻译API接口的使用
  19. adaway的jni设计摸索
  20. Houdini图文笔记:用Houdini实现随机自然倒角

热门文章

  1. EMVI5.3 将数据信息改为投影坐标系
  2. 全新 ENVI Modeler 遥感建模工具
  3. 前端直接读取文本文件内容
  4. 并查集的介绍和其六种优化(c++)
  5. 基于 MVP + Glide + Retrofit + RxJava2.0 + butterknife 的C9MJ TV App
  6. 直播技术总结(二)ijkplayer的编译到Android平台并测试解码库
  7. Python的学习必备基础知识总结
  8. Python中的unittest模块(入门学习款)
  9. 为什么网站服务器不存在了,百度数据中有网站不存在的路径是什么原因
  10. R语言在图上标出点坐标_利用R语言的leaflet包根据GPS信息在地图上标点