利用显著地面特征进行配送机器人定位的鲁棒方法

news2024/11/15 19:46:53

论文:Salience-guided Ground Factor for Robust Localization of Delivery Robots in Complex Urban Environments

作者:Jooyong Park,Jungwoo Lee,Euncheol Choi,Younggun Cho

收录:ICRA2024

利用显著地面特征进行配送机器人定位的鲁棒方法在本文中,我们提出了一种新颖的定位系统,它将标准特征和人工特征(复杂城市结构的一个特点)进行集成,并将它们作为SGF(地面特征)。icon-default.png?t=N7T8https://mp.weixin.qq.com/s/VoRWCSbwSiD_d_lcHQmhwg

01 引言

在自主配送机器人迅速融入城市物流系统的时代,这些机器人在复杂城市环境中的精确的定位已经成为一个至关重要的挑战。而随着同步定位与地图构建(SLAM)技术的进步,最后一公里配送机器人已被越来越多地应用于各个领域。例如,Starship Technologies ,Kiwibot,Nuro和 Neubility等公司提供的基于各种传感器进行环境识别的配送服务机器人。

这些配送机器人具有不同的传感器配置(例如RGB相机、激光雷达、GPS等)。使用各种传感器使得机器人能够更加了解环境,但同时也增加了配送机器人的成本。其中,基于视觉的SLAM方法受到了极大的关注,因为商业级别产品更偏好低成本的传感器配置。然而,这类方法长期受到光照、视角和外观变化的影响。此外,城市环境中的配送路线也面临着诸多挑战。

02 相关工作

在自动驾驶机器人领域,精确的定位是最关键的任务之一。正如上面提到的,基于视觉的SLAM方法具有成本竞争力,但长期受到光照、透视和外观变化的影响。为了解决这些挑战,前辈们已经提出了各种利用易于观察到的道路标记(如线条和路缘标记)的方法。然而,这些方法仍然具有与传统特征相同的局限性。因此,使用地面信息作为地面特征的方法被提出。

IPM(Inverse Perspective Mapping)算法被用于提取稳健的地面特征,并在各种应用中得到广泛使用。传统的IPM技术在斜坡或粗糙表面上表现不佳。为了解决这个问题,一些方法使用估计的消失点,而在其他工作中,Jeong和Kim利用相机姿势信息获得精确的IPM图像,引入了一种扩展的IPM算法。最近,Zhu等人提出了一种基于合成数据集的学习方法,而Bruls等人则基于真实世界数据集提出了方法,确保IPM在真实世界环境中表现良好。

许多工作已经利用地面特征在复杂城市环境中进行精确的定位。Road-SLAM利用IPM图像和通过机器学习方法获得的六类信息性道路标记。随着基于CNN的图像分割网络的发展,许多方法使用此网络来利用地面特征。AVP-SLAM利用专门为停车场所训练的图像分割网络,增强了建图和定位的准确性。Cheng等人通过使用基于CNN的稀疏语义视觉特征提取前端,通过紧凑的语义地图实现了高效准确的定位。Zhou等人提出了一种基于紧凑实例级语义道路标记参数化的视觉建图和定位方法。然而,这些方法依赖于语义图像分割,受到预定义类限制的困扰,这不适合复杂和多样化的环境。

配送机器人在复杂的城市环境中运行时,面临着诸如不寻常的地形(包括铺砌的路面、崎岖的人行道和类似路缘的障碍物)以及来自行人和车辆的动态遮挡等挑战。它们还受到可用传感器的限制,包括在GNSS拒止的场景和较便宜的传感器中的限制。为了解决这些问题,我们在3.1中引入了运动补偿的IPM(MC-IPM)方法。此外,在3.2、3.3和3.4中,我们还展示了如何使用基于Transformer的SOD模型提取和利用未定义的语义地面特征。

03 方法

3.1 运动补偿逆向透视映射

我们使用IPM方法从单目相机中获取地面特征。由于IPM假设相机前的地面是平坦的,因此在地面不平坦的环境中需要通过局部地面估计进行失真补偿。为了解决这个问题,我们引入了MC-IPM,这是一个测量机器人的相对运动变化并通过它们进行补偿的后处理过程。

首先,IPM补偿使用姿态之间的滚转和俯仰差。在先前的工作中,我们将自适应IPM改进为可以补偿滚转和俯仰的扩展自适应IPM方法。像素坐标(u,v)被转换为度量空间(c,r),并投影到经过补偿的相机中心坐标的三维点(x_c,y_c,0),过程如下所示。

公式1是在将像素坐标从图像平面投影到3D空间之前的滚转补偿过程,ψ是滚转变化的大小。在公式2中,h_c是前视相机的海拔高度(c),f_m是度量单位中的焦距,\alpha是光学轴与地面之间的角度,\theta是俯仰的大小,

。运动变化补偿公式的详细信息可以在参考文献[20]中找到。

然后,我们可以通过以下过程将3D点通过虚拟相机(\bar{c})的2D投影到虚拟相机,

其中(X_c,0,Z_c)和\pmb{K_{\bar{c}}}分别是虚拟相机的坐标(相机中心坐标)和内参, respectively。IPM投影和前视相机与虚拟相机之间的关系如图3所示。

补偿可以主要在两种情况下应用:1) 暂时不均匀(例如,减速带,裂缝)和2) 上坡或下坡,如图3所示。首先,存储N个姿态在队列中并计算平均值。由于俯仰运动变化主要发生在驾驶场景中,平均计算不包括俯仰阈值以上的姿态。随后,将需要补偿的机器人姿态与区域中平均姿态的相对差异作为IPM参数\psi和\theta传递。在本文中,我们设置N=50和相对俯仰差异d_{\theta}=0.025弧度。MC-IPM补偿的定性结果如图3所示。

3.2 显著地面特征检测

在一般的计算机视觉领域中,SOD目标是在普通场景中对前景物体进行分割。受此启发,我们利用通用SOD网络来捕获代表性的地面特征。对于SGF提取,我们采用SelfReformer网络,这是一个基于Transformer的模型。然而,通用SOD网络在地面特征上表现不佳。因此我们将SelfReformer重新设计为SelfReformer,使其能够捕获SGF的特点。SelfReformer的输入是MC-IPM校准的BEV图像(3通道)和SGF掩模(1通道),作为输出获得。

获得二值SGF掩模后,我们基于图像moment选择最优SGF,该moment可以捕获二值图像的本质。与其对所有查询图像执行提取,我们采用一种高效的方法提取最显著的特征。这也避免了将一个特征定义为SGF,如果它没有完全出现则会出现歧义。

Moment-based的SGF检测器使用滑动窗口方法在4个步骤中找到最佳SGF:

1)首先,它确定有效特征范围,即特征出现的范围到消失的范围。

2)然后,它计算有效特征范围内的所有特征的Hu矩。Hu矩的每个元素由\ita_{i,j}组成,它具有在平移和缩放中的鲁棒性,如下所示:

其中I{·,·}表示像素坐标(u,v)处的强度,p,q是矩的阶。此外,\mu_{pq}是中心矩,它对平移不变,\ita_{pq}通过零阶中心矩归一化中心矩获得。Hu矩\mathcal{H}通过以下方式计算,以对平移、缩放和旋转不变:

其中\mathcal{v}是有效特征范围内的所有集合,Hu矩的七个分量遵循。

3)接下来,我们使用Hu矩通过形状匹配计算当前特征与之前特征之间的距离,如下:

4)我们选择距离小于阈值(=0.005)的组的最具显著性的特征。如果特征区域在图像的四边界之外,我们不选择它。根据Hu矩的三个不变属性,它可以捕获高度相关的连续特征。一个例子如图4所示。

3.3 显著地面特征描述

一旦选择了最优的SGF,那些区域就被提取到3D空间中,如下所示:

之后,对SGF点进行下采样。为了将SGF用作循环因子,我们为SGF点创建描述符。我们采用了scan context方法,这是一种对旋转稳健的描述方法。在SGF点的L_{max}范围内围绕质心将方位和径向方向分割成bins。

在本文中,我们使用了L_{max}=2,考虑到地面特征的平均大小。为了执行反向闭环,我们将N_s设置为90,一个中心角(2\pi/N_s),并将N_r设置为10,一个径向间隔(L_{max}/N_r)。描述过程如图5所示。

然后,通过在线聚类将SGF描述符分组为各种特征。当确定查询SGF描述符\mathcal{D}^q时,它被分配给通过余弦距离从前一个SGF组的描述符\mathcal{D}^{sg}获得的最接近的组,如下所示:

其中c^q_j和c^{sg}_j分别是\mathcal{D}^q和\mathcal{D}^{sg}的第j列,N_c是列数。\mathcal{D}^{sg}然后被替换为组中D的平均值,并用于与新的\mathcal{D}^q进行比较。如果与所有\mathcal{D}^{sg}的距离都大于0.7,则将其分配为一个新SGF组。

3.4 Loop Closing with SGF Factor

当机器人重新访问具有相同SGF的区域时,可以通过SGF关联执行闭环。一旦选择了SGF并确定了SGF组,就可以通过与组内最近的描述符进行迭代最近点(ICP)匹配来执行闭环。在逆向闭环情况下,我们可以使用计算最近描述符时获得的最佳列键为ICP提供初始值。由于具有对称性质的SGF组(例如,圆形检查井)无法提供准确的位姿,因此在闭环SGF中将其排除。SGF环因素的全球位姿图优化如下:

其中

是t时刻的相机位姿,

是所有序列的集合,\pmb{z}_{t,t+1}是t和t+1时刻相机框架之间的相对位姿。\mathcal{S}_i和\mathcal{S}_j是在不同序列中观察到的SGF对,\mathcal{L}是所有SGF对的集合。函数f(·,·)估计相对位姿。

04 实验

4.1 实验设置

在实验中,我们使用了两种移动机器人:来自Neubility的真实配送机器人和四轮移动机器人。图6表示了用于评估的机器人和传感器。两台机器人都配备了轮编码器、RGB相机、IMU和激光雷达。我们使用著名的激光雷达SLAM方法构建了地面真实轨迹。

如图7所示,测试序列由校园内的各种行驶场景组成,因为校园环境中包含许多动态物体,如人和车辆。此外,为了评估长期运行,我们对夜间序列进行了评估。Seq. Delivery假设一个交付路线。在这种情景下,机器人执行交付任务,然后返回到其起始点。Seq. Reverse+Slope是一个只有反向循环的情景。Seq. Large loop涵盖了大约2.7公里的距离,包括正向和反向循环。对于具体的评估,我们测试了所提出方法在显著性检测性能、特征检测器评分和定位精度方面的表现。

4.2 显著性检测

为了测试SelfReformer的性能,我们将该方法与著名的SOD网络和语义分割的基础模型(GroundedSAM)进行了比较。如图8所示,SelfReformer在显著性掩模预测方面表现最佳。

这一结果报告了训练集对于人造地面标记的有效性。我们还发现在GroundedSAM的结果中一个有趣的现象。尽管GroundedSAM在视觉感知方面具有很好的通用性,但只有人造地面标记的一些部分可以通过预定义的语义来表示。另一方面,SelfReformer能够在没有预定义类信息的情况下识别显著目标,因此它可以有效识别人造特征以及标准标记在BEV图像中。在定量评估中,我们使用SOD任务中众所周知的最优指标MaxF(Fm)、MAE(M)、MeanF(FA)和S-measure(Sm)进行评估。如表1所示,SelfReformer在所有指标上都优于其他方法。

4.3 定位评估

我们展示了实验结果来验证所提出辅助因子在定位系统中的性能。由于我们的算法是基于视觉的定位方法,在复杂的城市环境中同时使用标准和人造特征,因此很难直接与现有的算法进行比较。因此,我们将结果与里程计和ORB-SLAM3进行了比较。在ORB-SLAM3中,我们使用单目-IMU系统来避免尺度模糊,并在输出上手动执行尺度校正。我们使用evo来估计绝对轨迹误差(ATE)。

如图9所示,提出的SGF因子在校园场景中的表现。定量比较可以在表2中找到。对于所有序列,我们可以看到与传统的基于视觉方法ORB-SLAM3相比,所提出的方法都取得了良好的性能。对于Seq. Delivery,ORB-SLAM3和所提出的方法都表现良好,但我们可以看到我们的提出的方法在反向闭环检测方面取得了较低的误差。Seq. Reverse + Slope在所有序列中的精度相对较低,因为SGF是从不均匀的地面提取的。在Seq. Large Loop中,ORB-SLAM3在驾驶时失去了跟踪。与跟踪丢失前的轨迹相比,我们可以看到在反向闭环点误差并未得到纠正。

在表3的每列中,定量地显示了所有序列中SGF检测器、闭环发现和闭环匹配的结果。第一列是相对于路径上应检测的总SGF数量找到的SGF数量的比例,第二列是在所有闭环对中分组在同一SGF组中的对数,最后一列是在第二列中获得的对中成功进行SGF闭环匹配的对数。括号表示反向闭环情况。提出的SGF检测器在检测成功率上接近80%或更高,甚至在反向闭环情况下,SGF描述符在闭环匹配中也成功了一半以上。

我们还对夜间序列进行了测试。每台机器人都配备了LED灯,并对暗图像应用了对比度受限的自适应直方图均衡化(CLAHE)以增强对比度。如图9所示,提出的方法在夜间与白天具有相当的表现。需要注意的是,ORB-SLAM3在原始和增强的夜间序列上都未能进行优化。

4.4 MC-IPM与IPM的比较

为了评估MC-IPM的性能,我们将它与传统的IPM进行了比较。在不平坦的地面条件下,IPM无法为SGF检测器提供一致的信息,导致性能不佳。为了更明确的比较,我们选择了具有不均匀地面条件和大量SGF的Seq. Large loop和Seq. Reverse+Slope。结果在表4和图10中展示。

05 结论

在本文中,我们提出了一种新颖的定位系统,它将标准特征和人工特征(复杂城市结构的一个特点)进行集成,并将它们作为SGF(地面特征)。

为了在不平坦的地面条件下获得更一致的SGF,我们采用了利用机器人运动的MC-IPM方法。SGF因子被应用于一个传递机器人,在校园环境中表现良好,并解决了反向循环的问题。它还验证了在白天和黑夜中光照和外观变化的情况下的强大性能。

我们的未来工作是构建一种将SGF集成到基于视觉的SLAM算法中以提高性能的方法。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

AI大模型探索之路-实战篇4:深入DB-GPT数据应用开发框架调研

目录 前言一、DB-GPT总体概述二、DB-GPT关键特性1、私域问答&数据处理&RAG2、多数据源&GBI3、多模型管理4、自动化微调5、Data-Driven Multi-Agents&Plugins6、隐私安全 三、服务器资源准备1、创建实例2、打开jupyterLab 四、DB-GPT启动1、激活 conda 环境2、切…

mysql5.7允许root远程访问

mysql客户端工具配置完成后,测试联通失败,客户端真正连接mysql时,也报错不允许rootip连接。 这是由于mysql的root用户默认禁止远程访问,可以通过两种方式改表或者授权的方式开启远程访问。本文中使用改表的方法。按照如下操作即可…

如何让大模型更聪明?提升AI智能的关键策略

如何让大模型更聪明?提升AI智能的关键策略 🤖 如何让大模型更聪明?提升AI智能的关键策略摘要引言方向一:算法创新🚀1.1 自监督学习的崛起1.2 强化学习的应用 方向二:数据质量与多样性📊2.1 数据…

【EVI】Hume AI 初探

写在前面的话 Hume AI宣布已在B轮融资中筹集5000万美元,由前Google DeepMind研究员Alan Cowen创立并担任CEO。该AI模型专注于理解人类情感,并发布了「共情语音界面」演示,通过语音对话实现互动。从 Hume AI 官网展示的信息,EVI 能…

飞书API(10):通过阿里云MaxCompute数仓入库 - 转为阿里云 DataFrame 再入库

一、引入 上一小节介绍了怎么入库到阿里云的 MaxCompute 数仓,其中涉及到 2 种入库方式,一种是转为阿里云的 DataFrame,然后类似 pandas 的 DataFrame 直接写入 MySQL 的方法,将数据写入表中;另外一种是转为列表&…

【openlayers系统学习】4.3VectorTile 功能交互(指针悬停在要素上时,绘制矩形框)

三、 VectorTile 功能交互(指针悬停在要素上时,绘制矩形框) 矢量切片的好处是我们可以与要素交互,因为我们在客户端上有数据。但需要注意的一件事是矢量切片针对渲染进行了优化。这意味着要素仅包含过滤和渲染所需的属性&#xf…

如何知道huggingface/modelscope的大模型的模型层名字

下载模型后,有个文件叫model.safetensors.index.json,里面有。 你下载的大模型位置在用户名/.cache/huggingface/hub/大模型名差不多这个路径。 或者直接print(parameters.name),但是这样打出来特别多,很难看。差不多这样写&am…

Android 10.0 锁屏页面弹窗功能实现

1.前言 在10.0的系统rom产品定制化开发中,在定制化开发中,需要在锁屏页面弹窗功能,当收到某些信息的时候,需要添加 悬浮窗锁屏页面也同样需要弹窗功能,接下来就分析下相关功能,然后实现功能 2.锁屏页面弹窗功能实现的核心类 frameworks\base\core\java\android\view\Wi…

【Chrono Engine学习总结】6-创建自定义场景-6.2-chrono中的光线设置

由于Chrono的官方教程在一些细节方面解释的并不清楚,自己做了一些尝试,做学习总结。 上一篇文章中,自己【用sketchup重建了三维场景】,但导入chrono中颜色很不正确,几乎都是白色的,但也不是完全白色。经过…

2024年上半年软考什么时候查成绩?附查询流程

考试一旦结束,并不意味着与考试相关的事情也就结束了。2024年上半年信息系统项目管理师等软考考试结束后,我们还需要关注考后和证书相关的事情,比如成绩查询、证书领取等等。 2024年上半年软考成绩查询 查询时间:预计在2024年7月…

优优嗨聚集团:快速摆脱个人债务束缚的秘诀

在快节奏的现代生活中,个人债务问题时常困扰着许多人。面对日益增长的债务压力,如何快速有效地处理成为众多人的迫切需求。本文将为你提供一套实用的债务清零攻略,帮助你摆脱债务的束缚,重获财务自由。 一、认清债务现状&#xff…

艾体宝洞察 | Redis Enterprise对比ElastiCache

选择缓存数据库时,如何在Amazon ElastiCache和Redis Enterprise之间做出选择,应当考虑哪些标准? ElastiCache 通常可以满足基本的缓存需求,因此是一种适合初始阶段的解决方案。但随着使用量的增加,ElastiCache很快会变…

Octo 精武门? :开源的通用机器人模型

大模型技术论文不断,每个月总会新增上千篇。本专栏精选论文重点解读,主题还是围绕着行业实践和工程量产。若在某个环节出现卡点,可以回到大模型必备腔调重新阅读。而最新科技(Mamba,xLSTM,KAN)则提供了大模型领域最新技…

[RK3588-Android12] 关于ES8388 喇叭+PDM回采 4+2配置

问题描述&#xff1a; ES8388 喇叭PDM回采 42配置如下&#xff1a; 解决方案&#xff1a; // MICpdmics: dummy-codec {status "okay";compatible "rockchip,dummy-codec";#sound-dai-cells <0>;};// MICpdm_mic_array: pdm-mic-array {status …

【Linux002】cURL接口测试常用命令总结(已更新)

1.熟悉、梳理、总结项目研发实战中的cURL接口测试常用命令&#xff0c;刚好是最近研发遇到的问题。 2.欢迎点赞、关注、批评、指正&#xff0c;互三走起来&#xff0c;小手动起来&#xff01; 文章目录 1.cURL简要介绍2. cURL常用命令清单3. 测试命令行4. 部分效果示例&#xf…

教育新篇章:AI工具Sora引领学习新趋势

Sora——这个让人在24年初引爆AI圈的新产品&#xff0c;它究竟会如何改变我们的教育领域呢&#xff1f; 从gpt到Sora&#xff0c;从对话型的ai到游戏和短剧制作的新风口&#xff0c;我们从23年到24年一个接一个地被震惊&#xff01; Sora能够根据文本提示生成高质量的视频内容…

哈工大操作系统—多进程图像

操作系统管理cpu的时候 引出多进程 多进程为操作系统的核心 把程序存放在内存里 设置一个pc地址 发出取指的命令 cpu工作 把指令通过总线传到

前端工具vscode 提交代码git操作

一 常规操作 1. 相当于git add . 2.输入修改备注&#xff0c;点击提交 3.git push 推送&#xff08;完成这步&#xff0c;本地代码就成功推送到了远程git&#xff09; 二、切换分支 三 比较与之前版本的改动内容 四。合并分支&#xff08;分两步&#xff0c;两截图&#xff0…

图像处理之DBSCAN算法(C++)

图像处理之DBSCAN算法&#xff08;C&#xff09; 文章目录 图像处理之DBSCAN算法&#xff08;C&#xff09;前言一、DBSCAN算法原理二、代码实现总结 前言 DBSCAN聚类算法是一种无监督的数据分类方法&#xff0c;该算法不需要训练数据就可以实现对数据的分类。 一、DBSCAN算法…

最最最重要的集群参数配置(上)no.7

我希望通过两期内容把这些重要的配置讲清楚。严格来说这些配置并不单单指Kafka服务器端的配置&#xff0c;其中既有Broker端参数&#xff0c;也有主题&#xff08;后面我用我们更熟悉的Topic表示&#xff09;级别的参数、JVM端参数和操作系统级别的参数。 需要你注意的是&…