本书深入浅出地讲解了面向封闭、低速场景的自动驾驶主流关键技术,主要包括无人驾驶系统架构、ROS中间件的原理、刚体运动的三维表示、定位与建图、环境感知、路线搜索、运动规划和底盘控制,在介绍数学概念和算法原理时还提供了直观的交互式程序。
本书适合对无人驾驶或移动机器人感兴趣的师生阅读,也可以供从事该领域研究工作的技术人员参考。
胡亚南,博士,主要研究方向为移动机器人控制、运动规划。参与国家自然科学基金项目,已发表论文6篇,申报专利7项。长期从事移动机器人算法的设计开发工作,完成多项室内AGV和室外AMR机器人算法设计,负责的项目获得江苏省“双创博士”资助。对机器人、无人驾驶和人工智能中相关技术都有深入的研究。
第1章 无人驾驶技术概述 001
1.1 无人驾驶行业发展现状 002
1.2 无人驾驶车辆的组成 003
1.3 无人驾驶技术开发对从业者专业技能的要求 005
第2章 无人驾驶软件平台 007
2.1 软件平台架构 008
2.2 程序开发 009
2.2.1 shell 命令 009
2.2.2 性能调试工具 013
2.3 ROS 系统简介 015
2.3.1 节点的诞生 016
2.3.2 节点间的通信 018
2.3.3 序列化 024
2.3.4 ROS 中的时间 026
2.3.5 ROS 常用工具 028
第3章 三维空间中运动的表示 031
3.1 概述 032
3.2 旋转矩阵 033
3.3 欧拉角 040
3.4 四元数 045
3.4.1 四元数的定义 045
3.4.2 四元数的运算 046
3.4.3 四元数与旋转 050
3.4.4 四元数的插值 053
3.5 李群与旋转 058
3.5.1 什么是李群 058
3.5.2 三维旋转群 064
3.5.3 李群基本运算 075
3.6 车辆运动表示 087
第4章 定位技术 089
4.1 概述 090
4.2 GNSS 定位 092
4.2.1 GNSS 常用坐标系 092
4.2.2 RTK 技术 094
4.3 激光定位 094
4.3.1 激光雷达原理 094
4.3.2 LOAM 系列 095
4.3.3 特征点提取 095
4.3.4 特征点匹配 098
4.3.5 环境建图 103
4.4 多传感器融合 105
4.4.1 概率论基础 106
4.4.2 Kalman 滤波原理 110
第5章 环境感知技术 118
5.1 感知系统概述 119
5.1.1 感知系统的功能 119
5.1.2 传统感知技术 120
5.1.3 基于深度学习的感知技术 123
5.2 视觉检测技术 134
5.2.1 Yolo 设计思想 134
5.2.2 Yolo 网络结构 136
5.2.3 损失函数 138
5.2.4 训练技巧 139
5.2.5 Yolo 的扩展 140
5.3 激光点云检测技术 141
5.3.1 点云数据的特点 141
5.3.2 PointPillars 设计思想 142
5.3.3 PointPillars 网络结构 142
5.4 通用障碍物检测技术 146
5.4.1 占用栅格的基本概念 146
5.4.2 Transformer 主干网络 148
5.4.3 占用栅格网络的结构 149
第6章 路线搜索技术 153
6.1 功能概述 154
6.2 路线搜索算法 154
6.2.1 图搜索问题 154
6.2.2 从边松弛到A??算法 155
6.3 路线搜索的具体实现 167
6.3.1 高精地图 167
6.3.2 消息格式 169
6.3.3 整体架构 171
6.3.4 基本概念 173
6.3.5 黑名单路段 174
6.3.6 A??搜索算法 176
6.3.7 后处理 180
第7章 规划决策技术 185
7.1 规划决策系统概述 186
7.2 车道行车规划 186
7.2.1 Frenet 坐标系 186
7.2.2 参考线平滑 187
7.2.3 横向规划 195
7.2.4 纵向规划 201
7.2.5 仿真结果 205
7.3 开放场地规划 206
7.3.1 混合A??算法 206
7.3.2 Dubins 曲线与Reeds-Shepp 曲线 209
7.3.3 速度规划 217
7.3.4 曲线平滑 226
7.3.5 仿真结果 234
第8章 运动控制技术 238
8.1 控制理论 239
8.1.1 车辆运动学模型 239
8.1.2 可控性分析 241
8.1.3 小时间可控性 244
8.2 控制方法 247
8.2.1 纯跟踪方法 247
8.2.2 模型预测控制 248
8.3 仿真试验 250
8.3.1 纯跟踪控制仿真 251
8.3.2 模型预测控制仿真 254
附录一 随书代码使用方法 256
附录二 无人驾驶领域常用术语 258
参考文献 262