0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一种半动态环境中的定位方法

INDEMIND 来源:INDEMIND 2024-09-30 14:40 次阅读

在非静态环境中进行地图绘制和定位是机器人学的基本问题。之前的方法大多关注静态和高度动态的物体,但在半动态环境中,如果不考虑低动态物体(如停放的汽车和行人),可能会导致定位失败。我们提出了语义建图和终身定位方法,以识别非静态环境中的半动态物体,并提出了一个通用框架,将主流物体检测算法与建图和定位算法集成在一起。建图方法结合物体检测算法和SLAM算法来检测半动态物体,并构建只包含这些对象的语义地图。在导航期间,定位方法可以对静态和非静态对象进行分类观测,并评估半动态对象是否移动,以减少无效观测权重和位置波动。实验证明所提出的方法可以提高移动机器人在非静态环境下的定位精度。

01 引言

在过去几十年中,人们努力将SLAM的应用范围从实验室场景扩展到户外场景,但由于场景动态程度的差别。户外环境中,除了静态物体外,还有着更多的动态和半动态物体,这可能会导致定位系统产生波动,以对地图构建和定位系统提出了重要挑战。为此,研究人员开始打破静态世界的假设,但在识别高度动态和半动态物体方面仍然存在挑战。通过对动态物体进行建模和过滤,在高度动态的环境中实现了精确的地图和定位结果。然而,在包含许多半动态物体的环境中,地图和定位问题仍未解决,因为静态与半动态物体具有相似的特性。

为了解决这个问题,通过选择那些随时间变化较小的特征,并利用语义信息进行定位的方法证明是有效的,且已经得到广泛应用。因此,本文提出了一种相关方法,用于识别和记录环境中的静态和半动态物体,可以分为两部分:分别构建静态地图和半动态地图,并基于两者进行机器人定位。

本文的建图算法扩展了赫斯等人[15]引入的OccupancyGrid技术,用于记录环境的半动态部分。该算法能够检测环境中的静态和半动态物体,并生成两张地图:静态地图和半动态地图。在建图过程中,通过过滤动态物体,静态地图包含环境中的静态和半动态物体,而半动态地图只包含半动态物体。本文的定位算法同时使用两张地图优化粒子滤波算法。它允许对观测进行分类(静态或半动态物体),并确定半动态物体移动的距离。然后通过调整不同物体的权重,可以在半动态环境中获得更精确的定位结果。

我们的主要贡献如下:

我们提出了一种能够识别并记录环境半动态特征的语义建图方法;

我们构建了一个稳健的定位系统,可以根据观察结果确定物体类别;

我们引入了一个通用框架,结合主流的物体检测和SLAM算法,无论半动态物体位置如何变化,都能达到高精度定位的目标。

02 方法概述

本节介绍所提方法的体系结构。根据[29]的分类,本文稍作修改如下:

静态物体:保持固定位置的物体,如墙壁、货架;

半动态物体:在建图过程中保持静止,但在定位过程中可能移动的物体,如椅子、停放的汽车;

动态物体:指位置频繁变化的物体,例如行人和移动车辆。

wKgZomb6SAWAKBiCAAH34a4bVs4804.jpg

图2展示了建图和定位框架。在建图过程中(红色虚线表示),选择一个对象检测算法(Yolov3
[37])来识别半动态对象。在SLAM线程中,我们利用SLAM算法(Cartographer
[15])生成静态地图,然后将激光雷达点投影到图像中。给出的半动态位置的全球坐标可以帮助创建半动态地图wKgaomb6SAWAKwzMAAAQcEdojbg536.jpg从静态地图wKgaomb6SAWAG_6lAAAKLbgzIZw636.jpg。静态地图wKgaomb6SAWAG_6lAAAKLbgzIZw636.jpg包含静态和半动态对象的信息,而半动态地图wKgaomb6SAWAKwzMAAAQcEdojbg536.jpg仅包含半动态对象的信息。此外,半动态地图是在线生成的,不会增加建图过程的复杂性。在定位过程中(蓝色虚线表示),同时将wKgaomb6SAWAG_6lAAAKLbgzIZw636.jpgwKgaomb6SAWAKwzMAAAQcEdojbg536.jpg加载到定位系统中。通过比较观察距离,我们可以获得与静态对象(黄色点)和半动态对象(红色点)对应的观察信息。同时从wKgaomb6SAWAG_6lAAAKLbgzIZw636.jpgwKgaomb6SAWAKwzMAAAQcEdojbg536.jpg中获取信息来定位机器人的姿态,取决于对象是否移动以及移动了多远。通过降低半动态物体观测值的权重,可以实现精确定位。

A:建图方法

1)静态地图更新:基于物体出现在相同位置的可能性来实现对动态物体的识别。具体来说,如果某个区域的状态在占用和空闲之间发生变化,则该区域被视为动态区域。在本文中,采用概率方法将问题定义为:

wKgZomb6SAWAdpXlAAAYewnA2xY246.jpg

2)半动态地图更新:观测数据wKgaomb6SAWAQ50DAAAG8YWP4U8412.jpg被分为静态对象观测数据wKgZomb6SAWALnguAAAJjqzUpV4671.jpg和半动态对象观测数据wKgaomb6SAWAWlOsAAARRLanO6o185.jpg。为此步骤,应用了Yolov3来获取分类信息。通过校准激光雷达与摄像头之间的外部参数,可以将激光雷达点投影到这些矩形框中。然而,由于激光雷达点在矩形框边缘可能对应于其他物体,因此无法提供准确的尺寸信息。为了解决这个问题,只采用矩形框中心的点来代表半动态对象的位置信息,从而排除了尺寸信息。有了位置信息,就可以在静态地图的基础上进行连接区域的计算,从而生成更精确的半动态地图。

wKgaomb6SAWAFA16AADcHkdhYjQ811.jpg

图3中的蓝色圆点表示半动态位置。一个或多个相连的区域表示一个单一物体。为了补充半动态物体的维度,我们使用较低的阈值来获取二进制静态地图,然后计算相连区域。将半动态位置和相连区域结合起来生成半动态地图。在生成静态地图时,仅获取半动态位置,图3中的其他过程是离线的,不会增加建图过程的计算复杂度。有关更多实验结果,请参见第四部分。

B:定位方法

对于定位过程,我们使用蒙特卡洛方法通过使用odometrywKgZomb6SAWAavPqAAAHln5Glxs541.jpg和观察数据wKgaomb6SAWAQ50DAAAG8YWP4U8412.jpg 进行递归验证来提出该想法。通过同时加载wKgaomb6SAWAG_6lAAAKLbgzIZw636.jpgwKgaomb6SAWAKwzMAAAQcEdojbg536.jpg,我们可以识别并减少与移动的半动态物体对应的观测值的权重。图4展示了所提定位方法的图形模型,其输入包括传感器观测数据wKgaomb6SAWAQ50DAAAG8YWP4U8412.jpg、静态地图wKgaomb6SAWAG_6lAAAKLbgzIZw636.jpg、半动态地图wKgaomb6SAWAKwzMAAAQcEdojbg536.jpg、odometrywKgZomb6SAWAavPqAAAHln5Glxs541.jpg和时间wKgaomb6SAWAHAhaAAAIYcvlybk641.jpg的姿态。定位问题可以表示为:

wKgaomb6SAWAbEtjAAAhtEy58DY667.jpg

通过将贝叶斯公式应用于方程2,可以表示为:

wKgZomb6SAWAWjltAABHNhqeE1w168.jpg

其中wKgZomb6SAWACJASAAAEJv6P44c212.jpg为归一化常数。为了进一步减少移动物体的权重,应根据wKgaomb6SAWAG_6lAAAKLbgzIZw636.jpgwKgaomb6SAWAKwzMAAAQcEdojbg536.jpg计算观测值的分类。方程3可进一步定义为:

wKgaomb6SAaAbtiFAACs0ds7BeQ569.jpg

我们的方法主要改进在于同时使用两张地图对半动态物体和静态物体的观测进行分类。通过比较每个激光点与两张地图之间的最近距离来计算分类,设wKgaomb6SAWAJcYkAAAID-RoiWg429.jpg代表点wKgZomb6SAaACuu1AAACHa6_LUM153.jpg到静态地图中相邻网格的距离,wKgaomb6SAaAVlelAAARqoyvdvU106.jpg代表点i到半动态地图中相邻网格的距离。如果wKgaomb6SAaAVlelAAARqoyvdvU106.jpg-wKgaomb6SAWAJcYkAAAID-RoiWg429.jpg的差小于一个阈值,则当前激光点对应于半动态物体,否则为静态物体。定位过程中给出的结果反映了半动态物体(红色激光点)和静态物体(黄色激光点)。根据半动态物体移动的距离,相应观测的权重会相应地减少。减少的比例可以定义为wKgZomb6SAaAUBeyAAAt6GXldEA736.jpg,该函数的结果在0到1之间,表示当前观测的权重应减少多少。在本工作中,这些半动态物体的位置被假设遵循高斯分布。用F表示递减比率wKgZomb6SAaAUBeyAAAt6GXldEA736.jpg,其定义如下:

wKgZomb6SAaAIy00AAA66YNBJ44017.jpg

其中,wKgZomb6SAaAaM-JAAABsTjOxmY192.jpg是一个相对较小的距离,在本文中取0.1。wKgaomb6SAaAUx0lAAACL5JPO1E108.jpg是判断一个物体是否为半动态的阈值,在本文中取0.3。因此,当前位置的最终权重可以计算如下:

wKgaomb6SAaAUgydAAB-S-11J2s695.jpg

其中,wKgaomb6SAaAVMAnAAAlCjyhMUA478.jpg表示观测模型。在本文中,选择似然观测模型来计算当前位置的权重。通过同时使用静态地图和半动态地图,可以使姿态估计更加准确。计算当前姿态权重的算法总结在算法1中。

该框架的三个主要组件——目标检测、地图构建和定位算法——都可以被其他相应的主流算法替换。

03实验

为了验证本文所提出的方法,我们使用一台机器人进行了实验测试。该机器人(如图6所示)配备了一台16束Velodyne激光雷达(在地图构建和定位过程中仅使用一束激光束)、摄像头、惯性测量单元和编码器

wKgZomb6SAaAHcFrAAGShph8M2Y277.jpg

该停车库被选为实验场景,因为每个个体运行时停车库都会发生显著变化。它由四个房间组成,地图框架中的左侧房间通常比其他房间停放更多的车辆。机器人从左侧房间开始,绕着停车库移动,然后回到原地。由于实验场景的特殊性,很难直接获得真实姿态。我们在地图构建过程中记录了机器人的姿态作为真实姿态,并在其他时间构建的地图上记录了定位过程中的姿态。通过比较未使用和使用所提方法的定位精度,验证了所提方法的有效性。在发生改变的环境中使用所提方法的定位精度也与在未改变的环境中不使用所提方法的定位精度进行了比较。

A. 停车场场景中的地图

对于建图过程,我们让机器人每隔几天进行一次数据采集。在单次运行中收集的数据用于构建wKgaomb6SAWAG_6lAAAKLbgzIZw636.jpg.wKgaomb6SAWAKwzMAAAQcEdojbg536.jpg,该文件是通过使用静态对象的位置和速度信息在线下构建。

wKgaomb6SAaATpsmAAHS_PZXo98127.jpg

最终构建的wKgaomb6SAWAG_6lAAAKLbgzIZw636.jpgwKgaomb6SAWAKwzMAAAQcEdojbg536.jpg如图5所示。在这些静态地图中,由于车辆的移动,某些区域显得较为明显,而其他部分则始终保持静态。wKgaomb6SAWAKwzMAAAQcEdojbg536.jpg包含环境中大部分半动态物体,缺失的半动态物体对应于较少被观察到的区域,这对定位精度影响较小。通过应用逆观测模型,在地图构建过程中可以自动去除高度动态的物体,如移动的行人和车辆。

B. 在非静态环境中的定位

我们比较了在未修改和修改的半动态环境中使用和不使用我们的算法的定位精度(图7ABCD)。此外,我们还展示了在使用纯静态地图的情况下,原始蒙特卡洛定位方法的定位精度(图7E)。所有半动态对象,如停放的汽车,都是人工移除的。在建图过程中选择的姿态作为真值,在定位过程中记录的姿态也使用在其他日子构建的地图中。算法Evo([38])被用于离线评估我们的方法的精度。图7展示了定位精度的定性结果,表I列出了姿态误差的定量比较。MCL+-和MCL++分别表示在未修改和修改的环境中使用蒙特卡洛算法时,是否使用了我们的方法(第一个加减号指示定位过程中环境是否改变,第二个加减号指示定位过程中是否使用了我们的方法)。因此,MCL--和MCL-+分别表示在未修改的环境中使用蒙特卡洛算法时,是否使用了我们的方法。MCL表示使用蒙特卡洛算法,但不使用我们的方法,使用纯静态地图。纯静态地图如图8所示,其中半动态对象从地图中人工移除。此外,图7ABCDE分别对应表1中的MCL+-、MCL++、MCL--、MCL-+和MCL。

wKgZomb6SAaAQx6iAAGRWWmYyek629.jpg

在图7A和7B中,我们的算法在改变的环境中显著降低了偏差,给出了更低的平均误差(0.083米相对于0.129米)和最大误差(0.336米相对于0.516米)。根据图5中的地图和机器人的路线,它在前300秒和最后200秒期间遇到更多的半动态物体(如图7A所示),这些地方的定位精度显著波动,这证明原始的蒙特卡洛算法在改变的环境中性能较低。相反,应用了我们的算法后,结果更加准确(如图7B所示)。

我们还进行了实验来评估算法在静态环境中的表现。如图7C和7D所示,我们的算法也可以应用于未改变的环境中,与传统的蒙特卡洛定位方法相比,其精度相当(0.327米对0.336米,0.065米对0.064米),这证明了所提方法在具有静态和半动态物体的环境中的通用性。

此外,我们还进行了实验,测试原始蒙特卡洛定位算法在修改后的环境中的定位性能,但将半动态物体从地图中人工移除。因此,地图仅包含环境的静态物体(如图8所示)。机器人利用环境中的静态物体来确定自身的位置。如图7E所示,由于所有半动态信息都被丢弃,因此其定位精度较低,是合理的。

wKgaomb6SAaABWf7AABP6Q-4K8E519.jpg

此外,wKgaomb6SAWAKwzMAAAQcEdojbg536.jpg是在线获取的。因此,在定位过程中,机器人只需要比较两幅地图之间的距离,所以计算复杂度可以忽略不计。值得注意的是,蒙特卡洛算法的绝对精度并不是本文的重点。我们的目标是将该方法引入主流的地图和定位算法,以获得更准确的结果而不牺牲效率。实验结果证明,我们的方法在静态和半动态环境中具有更好的鲁棒性、更高的精度和通用性。

C.一些棘手的情况

在获得半动态位置的过程中,可能会出现一些半动态位置击中错误位置的情况(如图9A和B所示)。但是,错误的位置不会影响wKgaomb6SAWAKwzMAAAQcEdojbg536.jpg生成,因为它没有对应的连接区域。

wKgaomb6SAaAJMXIAADY8FIB1pQ553.jpg

在计算连通区域的过程中,某些静态区域可能会被误认为是半动态区域。如图9C所示,柱子被误认为是半动态物体,然而,这些物体(柱子和墙)的静态特性使得该区域的重量保持不变。因此,错误的连通区域不会影响定位精度。

04 总结与未来

本文提出了一种新颖的语义地图生成方法和能够处理半动态环境的定位方法。通过融合摄像头和激光雷达,所提出的方法可以在地图构建期间自主检测和标记半动态物体,利用这些关键信息,能够构建用于后续导航的2D半动态地图,并设计了基于后验分布的姿态估计。我们还对配备了摄像头、激光雷达和IMU的移动平台在地下停车场进行了多项评估。结果表明,我们的方法在大多数情况下都能正常工作。基于此工作,我们的框架可以轻松扩展到3D模式。

在进一步扩展中,我们将研究使用其他类型的地图和不同的定位算法,例如点云地图和NDT定位算法。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 算法
    +关注

    关注

    23

    文章

    4585

    浏览量

    92427
  • 定位
    +关注

    关注

    5

    文章

    1283

    浏览量

    35294
  • 移动机器人
    +关注

    关注

    2

    文章

    755

    浏览量

    33520
  • SLAM
    +关注

    关注

    23

    文章

    414

    浏览量

    31748

原文标题:干货丨半动态环境中的终身定位

文章出处:【微信号:gh_c87a2bc99401,微信公众号:INDEMIND】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    一种简单的OpenHarmony环境搭建方法

    本文介绍一种简单的OpenHarmony环境搭建方法
    的头像 发表于 03-14 13:58 3355次阅读
    <b class='flag-5'>一种</b>简单的OpenHarmony<b class='flag-5'>环境</b>搭建<b class='flag-5'>方法</b>

    一种修正的近场声源定位时延估计方法

    和易于实现的特点使得此方法在实际的被动声定位系统得到了广泛应用。但是此方法只能在高信噪比和适度混响条件下有较好的性能。针对此问题,给出了一种
    发表于 04-22 11:55

    一种基于负载均衡的分层副本定位方法

    提出一种基于负载均衡的分层副本定位方法――RepliLoc。从副本信息存储和副本定位计算2负载考虑,将副本
    发表于 04-16 08:49 16次下载

    一种同时定位与地图构建的仿真系统

    基于近年来流行的移动机器人同时定位与地图构建的方法,提出了一种仿真系统,详细地描述了系统的定义模型结构和运行方式流程。系统采用了一种基于线
    发表于 06-26 08:13 13次下载

    一种车牌识别系统的混合车牌定位方法

    提出了一种新的粗定位和精细定位相结合的车牌定位方法。首先采用一种基于垂直边缘和车牌句法的车牌粗
    发表于 08-13 14:23 34次下载

    一种新的快速自适应车牌定位方法

    针对现存车牌定位方法自适应性差和鲁棒性不强的情况,本文提出了一种新的快速自适应车牌定位算法.此算法结合图象车牌区域的纹理特征、灰度和边缘投
    发表于 08-26 08:19 27次下载

    一种NLOS环境下的TOA AOA定位算法

    为了减小NLOS 传播的影响,基于几何结构的单次反射统计信道模型,该文提出一种NLOS 环境下的TOA/AOA 定位算法。利用RBF 神经网络较快的学习特性和逼近任意非线性映射的能力,对NLOS
    发表于 11-25 15:46 22次下载

    一种动态选择加密方法

    能力和能源供给都十分有限,难以承受全文加密的计算量和能源开销。因此提出了一种动态选择加密方法动态的选择加密算法对部分数据进行加密,并在该方法
    发表于 11-08 10:54 2次下载
    <b class='flag-5'>一种</b><b class='flag-5'>动态</b>选择加密<b class='flag-5'>方法</b>

    一种新的动态环境衰减因子模型的算法

    针对精确的室内定位节点受复杂环境的干扰带来因距离相同而位置不同的环境差异,造成定位精度不足和定位
    发表于 01-03 15:06 0次下载

    一种新型的动态响应信道建模方法

    跟踪法,对浅海信道的多途特性进行了建模;针对传统声线模型在信道动态响应建模上的不足,提出了一种新型的动态响应信道建模方法,仿真了信道的多途多普勒效应。分析了不同条件下信号的频谱规律。仿
    发表于 01-16 18:50 0次下载

    一种适用于动态场景的SLAM方法

    同时定位与地图构建(SLAM)作为机器人领域的硏究热点,近年来取得了快速发展,但多数SLAM方法未考虑应用场景动态或可移动目标。针对该问题,提出
    发表于 03-18 10:39 21次下载
    <b class='flag-5'>一种</b>适用于<b class='flag-5'>动态</b>场景的SLAM<b class='flag-5'>方法</b>

    一种基于TextRank算法的帧定位方法

    针对未知网络环境下比特流形式的通信数据难以进行帧定界的问题,提出一种基于 Textrank算法的帧定位方法。通过统计数据的序列出现频率获得
    发表于 04-01 10:55 15次下载
    <b class='flag-5'>一种</b>基于TextRank算法的帧<b class='flag-5'>定位</b><b class='flag-5'>方法</b>

    一种基于风险轨迹与复杂网络的缺陷定位方法

    针对大规模软件系统测试过程传统缺陷定位方法存在运行效率低下且可操作性不强的问题,提出一种基于风险轨迹与复杂网络的缺陷定位
    发表于 04-01 11:30 9次下载
    <b class='flag-5'>一种</b>基于风险轨迹与复杂网络的缺陷<b class='flag-5'>定位</b><b class='flag-5'>方法</b>

    一种基于DE和ELM的监督分类方法

    演化算法和分析方法的结合是机器学习领域近几年的个研究热点。研究如何将差分进化(DE)演化算法与基于超限学习机(ELM)的监督分类算法相结合。首先,提出了一种基于DE和ELM的
    发表于 04-09 16:16 5次下载
    <b class='flag-5'>一种</b>基于DE和ELM的<b class='flag-5'>半</b>监督分类<b class='flag-5'>方法</b>

    一种可在动态环境下构建语义地图的算法

    Localization And Mapping,SLAM)算法已经可以达到较高的定位和制图精度,但是在动态环境下如何通过剔除动态物体来获得较髙的
    发表于 05-07 14:56 4次下载