一起自学SLAM算法:12.3 autoware导航系统

news2024/11/18 1:45:47

连载文章,长期更新,欢迎关注:

上面介绍的ros-navigation和riskrrt导航系统主要都是用于机器人的低速导航,并且大多基于2D地图。而autoware导航系统主要用于无人驾驶汽车的高速导航,并且基于3D地图。除了所导航速度高一点和采用3D地图外,autoware的原理几乎与ros-navigation一样,因此下面主要针对autoware的架构做简单分析,其他内容就不再深入展开了。

虽然autoware导航系统主要应用于无人驾驶汽车领域,但整个框架也依然是基于ROS开发的,autoware框架同样也是由定位、感知识别、路径规划等主要模块组成,如图12-15所示。定位模块借助多种定位算法以及传感器融合来提供混合定位信息;感知识别模块利用计算机视觉或深度神经网络对3D激光雷达和相机中的目标物体进行识别(比如车辆识别、行人识别、交通信号灯识别等),并基于卡尔曼滤波算法对识别出来的物体进行目标跟踪;路径规划模块利用3D地图、定位、目标识别等信息进行路径规划,路径规划过程还需要考虑一些先验规则(比如交通规则),规划器输出的线速度和角速度控制量直接用于控制车辆运动。

图12-15  autoware系统框架

其中感知识别模块的内部结构如图12-16所示,首先利用计算机视觉或者深度神经网络从3D激光雷达以及相机中识别出目标物体(比如车辆、行人、交通信号灯等),然后利用3D地图信息、定位信息、目标物体等进行融合实现对目标物体的追踪,并实时输出被追踪目标物体在地图中的位姿、状态、移动速度等信息。

图12-16  感知识别模块

定位模块的内部结构如图12-17所示,无人汽车的全局位姿由多种定位算法融合而来,这些定位算法包括激光SLAM(即NDT)、视觉SLAM(ORB_SLAM)、组合导航(GNSS+IMU)等。不管是激光SLAM还是视觉SLAM,都需要先运行SLAM建图模式构建出一张地图,然后再载入该地图进行SLAM重定位。对于轮式里程计(odometer)、IMU、GNSS、相机、激光雷达等传感器,除了在SLAM中进行融合外,它们之间也有一些特殊的融合处理过程,也就是说多传感器融合的形式很丰富。

图12-17  定位模块

路径规划模块的内部结构如图12-18所示,其实也就是全局路径规划和轨迹跟踪。只不过需要额外考虑一些约束,比如交通规则约束、避让车辆、避让行人等。对于电动汽车来说,路径规划模块输出的线速度和角速度控制量可以直接用于操控汽车。而对于燃油汽车的话,就需要有一套电子控制转机械控制的中间装置,负责将路径规划模块输出的线速度和角速度控制量转换成汽车的方向盘和油门控制量。

图12-18  路径规划模块 

对于autoware的应用来说,也与ros-navigation类似。先通过源码方式编译安装autoware,然后按照官方教程配置启动。autoware运行起来的定位、感知识别、路径规划以及轨迹跟踪的效果,分别如图12-19、12-20和12-21所示。

 图12-19  定位效果

 图12-20  感知识别效果

 图12-21  路径规划与轨迹跟踪效果

参考文献

【1】 张虎,机器人SLAM导航核心技术与实战[M]. 机械工业出版社,2022.

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

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

相关文章

软件工程(一)——软件开发模型和方法

目录 (一)软件开发方法 (二)瀑布模型 (三)原型模型 (四)螺旋模型与增量模型 (五)V模型、喷泉模型、RAD模型 (六) 统一过程(RUP) …

idea 中 connot run program “svn“ 系统找不到文件

idea 中 connot run program “svn“ 系统找不到文件1. idea中svn的问题1.1 idea connot run program "svn"1.1.1 解决办法-重装svn1.2 idea中check out灰色不可用1.2.1 解决办法—装插件1. idea中svn的问题 1.1 idea connot run program “svn” 如图:…

2023年机床工具行业研究报告

第一章 行业概况 生产和销售机床工具的行业。机床是指制造机器的机器,亦称工作母机或工具机,习惯上简称机床。一般分为金属切削机床、锻压机床和木工机床等。现代机械制造中加工机械零件的方法很多:除切削加工外,还有铸造、锻造、…

【ES实战】索引生命周期管理(一)

索引生命周期管理ILM(index lifecycle management) 文章目录索引生命周期管理ILM(index lifecycle management)概述版本矩阵主要概念索引生命周期阶段的过渡阶段的执行生命周期中的操作生命周期策略索引翻滚…

AzureRT:一款能够实现各种Azure红队技战术的PowerShell模块

关于AzureRT AzureRT是一款能够实现各种Azure红队技战术的PowerShell模块,在AzureRT的帮助下,广大研究人员可以从攻击者的角度来与Azure和Azure AD进行交互,以此来测试目标环境的安全性。 AzureRT可以帮助广大研究人员测试和处理基于访问令…

【工具】操作PDF推荐的java依赖

Apache PDFBox |一个 Java PDF 库 <dependency><groupId>org.apache.pdfbox</groupId><artifactId>pdfbox-app</artifactId><version>2.0.27</version></dependency> Apache PDFBox - A Java PDF Library Apache PDFBox 库…

超详解线段树(浅显易懂)

一&#xff0c;什么是线段树&#xff1f;线段树是怎样的树形结构?线段树是一种二叉搜索树&#xff0c;而二叉搜索树&#xff0c;首先满足二叉树&#xff0c;即每个结点最多有两颗子树&#xff0c;并且是一颗搜索树&#xff0c;我们要知道&#xff0c;线段树的每个结点都存储了…

用于在过程工业中参数化配置现场设备的移动式解决方案

EndressHauser提供了一个组合套件&#xff08;包含Field Xpert和Softing的mobiLink通信工具&#xff09;&#xff0c;可用于参数化配置和现场调试。 &#xff08;将Softing的mobiLink通信工具与EndressHauser的Field Xpert SMT70或SMT77平板电脑相结合使用&#xff0c;可为用户…

再见 Matplotlib 和 Seaborn ,Python 画图建议用这个

本文主要介绍 Python 中用来替代 Matplotlib 和 Seaborn 的可视化工具 plotly&#xff0c;并结合实例讲解了 plotly 的优点和用法&#xff0c;满足了可视化绘图的交互需求。 数据可视化是人脑有效理解各种信息的最舒适、最直观的方式。对于需要处理数据的人来说&#xff0c;能…

谈思生物直播课|辛格迪副总裁“细胞治疗数字化解决方案”

近年来&#xff0c;细胞基因治疗在全球范围内得到了快速的发展。因为细胞基因治疗药物的特殊性&#xff08;从人体中采得活细胞&#xff0c;经过特别的处理技术后再输入人体&#xff09;&#xff0c;其安全性也被监管机构和药企高度关注&#xff1b;同时&#xff0c;也由于其制…

Laravel笔记-使用composer搭建Laravel环境(开发工具phpStorm)

以前写过一个&#xff0c;但没这个composer直接搭建的方便。在此记录下。 使用国内的 Composer 加速镜像 composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/ 新建一个名为MyRestfulTest的项目&#xff1a; composer create-project larave…

测试go test

目录go test工具单元测试测试代码go test -run跳过某些测试用例子测试表格驱动测试并行测试报告方法测试覆盖率基准测试demo性能比较函数计时方法并行测试TestMainSetup与Teardownhttptest简单的 Web 应用测试Go 语言从开发初期就注意了测试用例的编写。特别是静态语言&#xf…

【java入门系列六】java基础-面向对象进阶**

学习记录&#x1f914;IDE快捷键包访问修饰符封装结合构造器进行封装继承-代码的复用性继承的构造器继承的本质super关键字方法的重写override多态**难点多态trickinstanceof动态绑定**多态数组多态参数object类trickObject类创建对象流程讨论总结谢谢点赞交流&#xff01;(❁◡…

MDK的格式化代码工具及添加快捷方式

文章目录Astyle介绍插件安装参数设置格式化整个工程参数说明快捷键设置参考Astyle介绍 Astyle 即Artistic Style&#xff0c;是一个可用于C, C, C/CLI, Objective‑C, C# 和Java编程语言格式化开源工具。 官网&#xff1a;Artistic Style - Index 插件安装 不用安装&#xf…

年前花2个月面过阿里测开岗,拿个27K也不过分吧?

背景介绍 美本计算机专业&#xff0c;代码能力一般&#xff0c;之前有过两段实习以及一个学校项目经历。第一份实习是大二暑期在深圳的一家互联网公司做前端开发&#xff0c;第二份实习由于大三暑假回国的时间比较短&#xff08;小于两个月&#xff09;&#xff0c;于是找的实…

23.1.29 make menuconfig执行过程

1、将uboot源码拷贝ubuntu中 1.在家目录创建一 -个demo文件夹 2.将en. SOURCES - stm32mp1- openstlinux-5.10- dunfell- mp1-21- 11-17_ tar_ v3.1.0. xz文件夹拷贝到~/ demo文件夹下面 3.进入~/demo目录下&#xff0c;对en . SOURCES- stm32mp1 - openstlinux-5. 10- dunfell…

第02天-Java数据结构和算法

目录 021_单链表新浪面试题 单链表面试题&#xff08;新浪、百度、腾讯&#xff09; 代码实现 022_单链表腾讯面试题 图解 代码实现 023_单链表百度面试题 图解 代码实现 024_双向链表增删改查分析图解 双向链表应用实例 图解 代码实现 026_双向链表功能测试和小结 …

10个方法教你解决虚幻4运行崩溃问题

“多年来我一直在我的电脑上使用不同版本的虚幻引擎 4&#xff0c;但最近它突然在启动时崩溃。我最初认为这是一个项目相关的问题&#xff0c;但后来注意到即使是从桌面图标或 Epic Games Launcher执行Unreal Engine 4&#xff0c;也是闪了几秒就直接闪退了。这个问题真是让我很…

Nginx从入门到精通(从安装到实践,持续更新中)

一&#xff0c;安装从官网下载相应的tar包http://nginx.org/通过命令tar zxvf tar包名 -c 解压路径 解压到指定的目录下在解压的nginx包下有一个confuture文件&#xff0c;可通过./confuture判断是否符合安装条件&#xff08;./configure --prefix/usr/local/nginx即可指定一会…

H3CMSR 系列路由器限速配置

1 配置需求或说明 1.1 适用产品系列 本手册适用于如下产品&#xff1a;MSR 全系列路由器 1.2 配置需求及实现的效果 MSR路由器G0/0接口连接公网&#xff0c;G0/1接口连接内网&#xff0c;内网网关地址为MSR路由器VLAN1虚接口地址192.168.1.1/24&#xff0c;需要实现对内网I…