- 中国铁道出版社
- 9787113319090
- 1-1
- 2026-01
- 工学
- 电子信息类
- 电子与信息大类
- 计算机类
- 本科
作者简介
内容简介
本书论述了智能网联汽车常用算法原理与实践的核心知识。本书共8章,包括自动驾驶概述、激光雷达传感器感知算法、基于高清摄像头传感器的视觉处理算法、路径规划与决策算法、基于红外传感器的应用算法、基于超声波传感器的应用算法、基于SLAM的定位与地图构建算法、OctoMap环境感知。
目录
第 1 章 自动驾驶概述 ......................1
1.1 自动驾驶介绍 ....................................1
1.1.1 自动驾驶分级 ..............................1
1.1.2 自动驾驶的发展历程 ..................2
1.1.3 自动驾驶的应用领域 ..................3
1.2 自动驾驶技术介绍 ............................4
1.2.1 传感器技术 ..................................4
1.2.2 感知与感知算法 ..........................5
1.2.3 控制与执行系统 ..........................6
1.3 自动驾驶的挑战与机会 ....................7
1.3.1 技术挑战 ......................................7
1.3.2 法规与政策挑战 ..........................8
1.3.3 社会接受与文化变革 ..................9
1.3.4 商业机会与创新发展 ................10
小结 ...........................................................11
习题 ...........................................................11
第 2 章 激光雷达传感器感知算法...12
2.1 传感器技术与感知 ..........................12
2.1.1 环境感知算法 ............................13
2.1.2 激光雷达传感器感知算法 ........13
2.2 地面提取算法 ..................................14
2.2.1 基于平面拟合的方法 ................14
2.2.2 统计学方法 ................................26
2.3 目标检测与跟踪算法 ......................32
2.3.1 聚类算法 ....................................32
2.3.2 分割算法 ....................................34
2.3.3 滤波器算法 ................................36
2.4 环境建模与地图构建算法 ..............38
2.5 实战——基于扩展卡尔曼滤波器的 对象跟踪系统 ..................................41
2.5.1 数据包 ........................................41
2.5.2 计算均方根误差和雅可比 矩阵 ............................................42
2.5.3 扩展卡尔曼滤波器 ....................44
2.5.4 状态预测和更新 ........................50
2.5.5 数据融合与目标跟踪 ................52
2.6 实战——基于激光雷达点云的 地面分割系统 ..................................56
2.6.1 参数介绍 ....................................56
2.6.2 分割算法 ....................................59
2.6.3 分割结果可视化 ........................71
2.6.4 ROS 测试 ...................................73
小结 ...........................................................76
习题 ...........................................................76
第 3 章 基于高清摄像头传感器的视觉处理算法 ...................78
3.1 高清摄像头传感器介绍 ..................78
3.1.1 高清摄像头传感器的特征 ........79
3.1.2 高清摄像头传感器算法介绍 ....79
3.2 目标检测和识别算法 ......................80
3.2.1 基于 Haar 特征的目标检测 ......80
3.2.2 基于深度学习的 YOLO 算法 ...82
3.3 车道检测算法 ..................................84
3.3.1 霍夫变换算法 ............................84
3.3.2 颜色阈值算法 ............................86
3.3.3 滑动窗口法 ................................88
3.4 目标跟踪算法 ..................................90
3.4.1 目标跟踪的应用领域 ................91
3.4.2 卡尔曼滤波器算法 ....................91
3.4.3 扩展卡尔曼滤波器算法 ............94
3.4.4 粒子滤波器算法 ........................96
3.4.5 多假设跟踪算法 ........................99
3.4.6 MOSSE 滤波器算法 ...............101
3.4.7 轨迹聚类算法 ..........................103
3.4.8 实战——基于 OpenCV 的行人 检测系统 ..................................105
3.5 盲点检测算法 ................................114
3.5.1 盲点检测的应用领域 ..............114
3.5.2 实战——基于 YOLOv7 的 盲点检测系统 ..........................114
小结 .........................................................119
习题 .........................................................120
第 4 章 路径规划与决策算法 .......121
4.1 Dijkstra 算法 ..................................121
4.1.1 Dijkstra 算法的实现步骤 ........121
4.1.2 实战——寻找导航中的最短 路径 ..........................................122
4.2 A* 算法 ..........................................126
4.2.1 A* 算法的原理和实现步骤 ....127
4.2.2 实战——基于 ROS 的自动 驾驶汽车路径规划系统 ..........127
4.3 Bellman-Ford 算法 .........................143
4.3.1 图的表示方法 ..........................143
4.3.2 实战——寻找地图中建筑物的 最短距离 ..................................144
4.4 Floyd-Warshall 算法 ......................151
4.4.1 Floyd-Warshall 算法的核心 思想 ..........................................151
4.4.2 实战——解决城市交通规划的 最短路径问题 ..........................151
4.5 D* 算法 ..........................................154
4.5.1 D* 算法的原理和实现步骤 ....154
4.5.2 实战——基于 D* 算法的动态 路径规划可视化系统 ..............155
小结 .........................................................167
习题 .........................................................167
第 5 章 基于红外传感器的应用算法 ................................168
5.1 红外传感器介绍 ............................168
5.1.1 红外传感器的分类 ..................168
5.1.2 红外传感器在自动驾驶中的 作用 ..........................................169
5.2 障碍物检测与跟踪算法 ................169
5.2.1 基于距离阈值的障碍物 检测 ..........................................169
5.2.2 基于热图像的障碍物检测 ......171
5.2.3 基于特征提取的障碍物检测 ...172
5.2.4 基于运动预测的障碍物跟踪 ...174
5.2.5 基于 Arduino 的自动驾驶 程序 ..........................................176
5.3 基于红外图像的处理算法 ............180
5.3.1 热点检测 ..................................180
5.3.2 温度分布分析 ..........................182
5.3.3 障碍物识别 ..............................184
小结 .........................................................187
习题 .........................................................187
第 6 章 基于超声波传感器的应用算法 ................................189
6.1 超声波传感器介绍 ........................189
6.1.1 超声波传感器的作用 ..............190
6.1.2 基于 HCSR04 超声波传感器的 测距系统 ..................................190
6.2 实战——基于超声波传感器的 停车辅助系统 ................................192
6.2.1 项目介绍 ..................................192
6.2.2 具体实现 ..................................193
6.3 实战——环境感知和障碍物 识别 ................................................204
6.3.1 项目介绍 ..................................205
6.3.2 基于光线强度的避障程序 ......205
6.3.3 基于超声波传感器的避障 程序 ..........................................208
6.4 实战——使用超声波传感器 消除盲区 ........................................212
6.4.1 电路设计 ..................................212
6.4.2 Arduino UNO R3 介绍 ............212
6.4.3 运行流程 ..................................213
6.4.4 具体编码 ..................................214
小结 .........................................................217
习题 .........................................................217
第 7 章 基于 SLAM 的定位与地图构建算法 .........................218
7.1 SLAM 介绍 ....................................218
7.1.1 SLAM 的组成 ..........................219
7.1.2 核心功能 ..................................219
7.2 常用的 SLAM 算法 .......................219
7.2.1 FastSLAM 算法 .......................219
7.2.2 Grid-based FastSLAM 算法 ....220
7.2.3 GMapping 算法 .......................220
7.3 实战——基于 SLAM 的辅助 驾驶系统 ........................................221
7.3.1 项目介绍 ..................................221
7.3.2 环境仿真 ..................................221
7.3.3 自动驾驶、SLAM 和障碍 检测 ..........................................222
7.3.4 导航参数配置 ..........................229
7.3.5 地图可视化 ..............................230
7.4 实战——基于 ROS 的地图构建 和寻找最短导航路径系统 ............232
7.4.1 项目介绍 ..................................232
7.4.2 接收激光雷达传感器数据 ......233
7.4.3 运动控制 ..................................233
7.4.4 最短路径 ..................................236
7.4.5 VFH 控制器 .............................244
7.4.6 启动节点 ..................................248
7.4.7 启动运行 ..................................249
小结 .........................................................250
习题 .........................................................250
第 8 章 OctoMap 环境感知 .........251
8.1 OctoMap 介绍 ................................251
8.1.1 八叉树和 OctoMap ..................251
8.1.2 OctoMap 在自动驾驶中的 作用 ..........................................252
8.1.3 基于 OctoMap 的自动驾驶 算法 ..........................................252
8.1.4 基于 OctoMap 可视化的路径 规划 ..........................................254
8.2 实战——基于 OctoMap 的路径 规划系统 ........................................261
8.2.1 项目介绍 ..................................261
8.2.2 姿态处理和转换 ......................262
8.2.3 生成分段线性轨迹 ..................264
8.2.4 基于多项式的轨迹规划器 ......268
8.2.5 基于多项式的轨迹求解器 ......288
8.2.6 基于交互的路径和轨迹可视化 ......................................288
8.2.7 非交互的起始点和目标点的可视化 ......................................293
8.2.8 基于 RRT* 算法的路径规划和轨迹生成可视化 ..................296
小结 .........................................................300
习题 .........................................................300
第 1 章 自动驾驶概述 ......................1
1.1 自动驾驶介绍 ....................................1
1.1.1 自动驾驶分级 ..............................1
1.1.2 自动驾驶的发展历程 ..................2
1.1.3 自动驾驶的应用领域 ..................3
1.2 自动驾驶技术介绍 ............................4
1.2.1 传感器技术 ..................................4
1.2.2 感知与感知算法 ..........................5
1.2.3 控制与执行系统 ..........................6
1.3 自动驾驶的挑战与机会 ....................7
1.3.1 技术挑战 ......................................7
1.3.2 法规与政策挑战 ..........................8
1.3.3 社会接受与文化变革 ..................9
1.3.4 商业机会与创新发展 ................10
小结 ...........................................................11
习题 ...........................................................11
第 2 章 激光雷达传感器感知算法...12
2.1 传感器技术与感知 ..........................12
2.1.1 环境感知算法 ............................13
2.1.2 激光雷达传感器感知算法 ........13
2.2 地面提取算法 ..................................14
2.2.1 基于平面拟合的方法 ................14
2.2.2 统计学方法 ................................26
2.3 目标检测与跟踪算法 ......................32
2.3.1 聚类算法 ....................................32
2.3.2 分割算法 ....................................34
2.3.3 滤波器算法 ................................36
2.4 环境建模与地图构建算法 ..............38
2.5 实战——基于扩展卡尔曼滤波器的 对象跟踪系统 ..................................41
2.5.1 数据包 ........................................41
2.5.2 计算均方根误差和雅可比 矩阵 ............................................42
2.5.3 扩展卡尔曼滤波器 ....................44
2.5.4 状态预测和更新 ........................50
2.5.5 数据融合与目标跟踪 ................52
2.6 实战——基于激光雷达点云的 地面分割系统 ..................................56
2.6.1 参数介绍 ....................................56
2.6.2 分割算法 ....................................59
2.6.3 分割结果可视化 ........................71
2.6.4 ROS 测试 ...................................73
小结 ...........................................................76
习题 ...........................................................76
第 3 章 基于高清摄像头传感器的视觉处理算法 ...................78
3.1 高清摄像头传感器介绍 ..................78
3.1.1 高清摄像头传感器的特征 ........79
3.1.2 高清摄像头传感器算法介绍 ....79
3.2 目标检测和识别算法 ......................80
3.2.1 基于 Haar 特征的目标检测 ......80
3.2.2 基于深度学习的 YOLO 算法 ...82
3.3 车道检测算法 ..................................84
3.3.1 霍夫变换算法 ............................84
3.3.2 颜色阈值算法 ............................86
3.3.3 滑动窗口法 ................................88
3.4 目标跟踪算法 ..................................90
3.4.1 目标跟踪的应用领域 ................91
3.4.2 卡尔曼滤波器算法 ....................91
3.4.3 扩展卡尔曼滤波器算法 ............94
3.4.4 粒子滤波器算法 ........................96
3.4.5 多假设跟踪算法 ........................99
3.4.6 MOSSE 滤波器算法 ...............101
3.4.7 轨迹聚类算法 ..........................103
3.4.8 实战——基于 OpenCV 的行人 检测系统 ..................................105
3.5 盲点检测算法 ................................114
3.5.1 盲点检测的应用领域 ..............114
3.5.2 实战——基于 YOLOv7 的 盲点检测系统 ..........................114
小结 .........................................................119
习题 .........................................................120
第 4 章 路径规划与决策算法 .......121
4.1 Dijkstra 算法 ..................................121
4.1.1 Dijkstra 算法的实现步骤 ........121
4.1.2 实战——寻找导航中的最短 路径 ..........................................122
4.2 A* 算法 ..........................................126
4.2.1 A* 算法的原理和实现步骤 ....127
4.2.2 实战——基于 ROS 的自动 驾驶汽车路径规划系统 ..........127
4.3 Bellman-Ford 算法 .........................143
4.3.1 图的表示方法 ..........................143
4.3.2 实战——寻找地图中建筑物的 最短距离 ..................................144
4.4 Floyd-Warshall 算法 ......................151
4.4.1 Floyd-Warshall 算法的核心 思想 ..........................................151
4.4.2 实战——解决城市交通规划的 最短路径问题 ..........................151
4.5 D* 算法 ..........................................154
4.5.1 D* 算法的原理和实现步骤 ....154
4.5.2 实战——基于 D* 算法的动态 路径规划可视化系统 ..............155
小结 .........................................................167
习题 .........................................................167
第 5 章 基于红外传感器的应用算法 ................................168
5.1 红外传感器介绍 ............................168
5.1.1 红外传感器的分类 ..................168
5.1.2 红外传感器在自动驾驶中的 作用 ..........................................169
5.2 障碍物检测与跟踪算法 ................169
5.2.1 基于距离阈值的障碍物 检测 ..........................................169
5.2.2 基于热图像的障碍物检测 ......171
5.2.3 基于特征提取的障碍物检测 ...172
5.2.4 基于运动预测的障碍物跟踪 ...174
5.2.5 基于 Arduino 的自动驾驶 程序 ..........................................176
5.3 基于红外图像的处理算法 ............180
5.3.1 热点检测 ..................................180
5.3.2 温度分布分析 ..........................182
5.3.3 障碍物识别 ..............................184
小结 .........................................................187
习题 .........................................................187
第 6 章 基于超声波传感器的应用算法 ................................189
6.1 超声波传感器介绍 ........................189
6.1.1 超声波传感器的作用 ..............190
6.1.2 基于 HCSR04 超声波传感器的 测距系统 ..................................190
6.2 实战——基于超声波传感器的 停车辅助系统 ................................192
6.2.1 项目介绍 ..................................192
6.2.2 具体实现 ..................................193
6.3 实战——环境感知和障碍物 识别 ................................................204
6.3.1 项目介绍 ..................................205
6.3.2 基于光线强度的避障程序 ......205
6.3.3 基于超声波传感器的避障 程序 ..........................................208
6.4 实战——使用超声波传感器 消除盲区 ........................................212
6.4.1 电路设计 ..................................212
6.4.2 Arduino UNO R3 介绍 ............212
6.4.3 运行流程 ..................................213
6.4.4 具体编码 ..................................214
小结 .........................................................217
习题 .........................................................217
第 7 章 基于 SLAM 的定位与地图构建算法 .........................218
7.1 SLAM 介绍 ....................................218
7.1.1 SLAM 的组成 ..........................219
7.1.2 核心功能 ..................................219
7.2 常用的 SLAM 算法 .......................219
7.2.1 FastSLAM 算法 .......................219
7.2.2 Grid-based FastSLAM 算法 ....220
7.2.3 GMapping 算法 .......................220
7.3 实战——基于 SLAM 的辅助 驾驶系统 ........................................221
7.3.1 项目介绍 ..................................221
7.3.2 环境仿真 ..................................221
7.3.3 自动驾驶、SLAM 和障碍 检测 ..........................................222
7.3.4 导航参数配置 ..........................229
7.3.5 地图可视化 ..............................230
7.4 实战——基于 ROS 的地图构建 和寻找最短导航路径系统 ............232
7.4.1 项目介绍 ..................................232
7.4.2 接收激光雷达传感器数据 ......233
7.4.3 运动控制 ..................................233
7.4.4 最短路径 ..................................236
7.4.5 VFH 控制器 .............................244
7.4.6 启动节点 ..................................248
7.4.7 启动运行 ..................................249
小结 .........................................................250
习题 .........................................................250
第 8 章 OctoMap 环境感知 .........251
8.1 OctoMap 介绍 ................................251
8.1.1 八叉树和 OctoMap ..................251
8.1.2 OctoMap 在自动驾驶中的 作用 ..........................................252
8.1.3 基于 OctoMap 的自动驾驶 算法 ..........................................252
8.1.4 基于 OctoMap 可视化的路径 规划 ..........................................254
8.2 实战——基于 OctoMap 的路径 规划系统 ........................................261
8.2.1 项目介绍 ..................................261
8.2.2 姿态处理和转换 ......................262
8.2.3 生成分段线性轨迹 ..................264
8.2.4 基于多项式的轨迹规划器 ......268
8.2.5 基于多项式的轨迹求解器 ......288
8.2.6 基于交互的路径和轨迹可视化 ......................................288
8.2.7 非交互的起始点和目标点的可视化 ......................................293
8.2.8 基于 RRT* 算法的路径规划和轨迹生成可视化 ..................296
小结 .........................................................300
习题 .........................................................300
1.1 自动驾驶介绍 ....................................1
1.1.1 自动驾驶分级 ..............................1
1.1.2 自动驾驶的发展历程 ..................2
1.1.3 自动驾驶的应用领域 ..................3
1.2 自动驾驶技术介绍 ............................4
1.2.1 传感器技术 ..................................4
1.2.2 感知与感知算法 ..........................5
1.2.3 控制与执行系统 ..........................6
1.3 自动驾驶的挑战与机会 ....................7
1.3.1 技术挑战 ......................................7
1.3.2 法规与政策挑战 ..........................8
1.3.3 社会接受与文化变革 ..................9
1.3.4 商业机会与创新发展 ................10
小结 ...........................................................11
习题 ...........................................................11
第 2 章 激光雷达传感器感知算法...12
2.1 传感器技术与感知 ..........................12
2.1.1 环境感知算法 ............................13
2.1.2 激光雷达传感器感知算法 ........13
2.2 地面提取算法 ..................................14
2.2.1 基于平面拟合的方法 ................14
2.2.2 统计学方法 ................................26
2.3 目标检测与跟踪算法 ......................32
2.3.1 聚类算法 ....................................32
2.3.2 分割算法 ....................................34
2.3.3 滤波器算法 ................................36
2.4 环境建模与地图构建算法 ..............38
2.5 实战——基于扩展卡尔曼滤波器的 对象跟踪系统 ..................................41
2.5.1 数据包 ........................................41
2.5.2 计算均方根误差和雅可比 矩阵 ............................................42
2.5.3 扩展卡尔曼滤波器 ....................44
2.5.4 状态预测和更新 ........................50
2.5.5 数据融合与目标跟踪 ................52
2.6 实战——基于激光雷达点云的 地面分割系统 ..................................56
2.6.1 参数介绍 ....................................56
2.6.2 分割算法 ....................................59
2.6.3 分割结果可视化 ........................71
2.6.4 ROS 测试 ...................................73
小结 ...........................................................76
习题 ...........................................................76
第 3 章 基于高清摄像头传感器的视觉处理算法 ...................78
3.1 高清摄像头传感器介绍 ..................78
3.1.1 高清摄像头传感器的特征 ........79
3.1.2 高清摄像头传感器算法介绍 ....79
3.2 目标检测和识别算法 ......................80
3.2.1 基于 Haar 特征的目标检测 ......80
3.2.2 基于深度学习的 YOLO 算法 ...82
3.3 车道检测算法 ..................................84
3.3.1 霍夫变换算法 ............................84
3.3.2 颜色阈值算法 ............................86
3.3.3 滑动窗口法 ................................88
3.4 目标跟踪算法 ..................................90
3.4.1 目标跟踪的应用领域 ................91
3.4.2 卡尔曼滤波器算法 ....................91
3.4.3 扩展卡尔曼滤波器算法 ............94
3.4.4 粒子滤波器算法 ........................96
3.4.5 多假设跟踪算法 ........................99
3.4.6 MOSSE 滤波器算法 ...............101
3.4.7 轨迹聚类算法 ..........................103
3.4.8 实战——基于 OpenCV 的行人 检测系统 ..................................105
3.5 盲点检测算法 ................................114
3.5.1 盲点检测的应用领域 ..............114
3.5.2 实战——基于 YOLOv7 的 盲点检测系统 ..........................114
小结 .........................................................119
习题 .........................................................120
第 4 章 路径规划与决策算法 .......121
4.1 Dijkstra 算法 ..................................121
4.1.1 Dijkstra 算法的实现步骤 ........121
4.1.2 实战——寻找导航中的最短 路径 ..........................................122
4.2 A* 算法 ..........................................126
4.2.1 A* 算法的原理和实现步骤 ....127
4.2.2 实战——基于 ROS 的自动 驾驶汽车路径规划系统 ..........127
4.3 Bellman-Ford 算法 .........................143
4.3.1 图的表示方法 ..........................143
4.3.2 实战——寻找地图中建筑物的 最短距离 ..................................144
4.4 Floyd-Warshall 算法 ......................151
4.4.1 Floyd-Warshall 算法的核心 思想 ..........................................151
4.4.2 实战——解决城市交通规划的 最短路径问题 ..........................151
4.5 D* 算法 ..........................................154
4.5.1 D* 算法的原理和实现步骤 ....154
4.5.2 实战——基于 D* 算法的动态 路径规划可视化系统 ..............155
小结 .........................................................167
习题 .........................................................167
第 5 章 基于红外传感器的应用算法 ................................168
5.1 红外传感器介绍 ............................168
5.1.1 红外传感器的分类 ..................168
5.1.2 红外传感器在自动驾驶中的 作用 ..........................................169
5.2 障碍物检测与跟踪算法 ................169
5.2.1 基于距离阈值的障碍物 检测 ..........................................169
5.2.2 基于热图像的障碍物检测 ......171
5.2.3 基于特征提取的障碍物检测 ...172
5.2.4 基于运动预测的障碍物跟踪 ...174
5.2.5 基于 Arduino 的自动驾驶 程序 ..........................................176
5.3 基于红外图像的处理算法 ............180
5.3.1 热点检测 ..................................180
5.3.2 温度分布分析 ..........................182
5.3.3 障碍物识别 ..............................184
小结 .........................................................187
习题 .........................................................187
第 6 章 基于超声波传感器的应用算法 ................................189
6.1 超声波传感器介绍 ........................189
6.1.1 超声波传感器的作用 ..............190
6.1.2 基于 HCSR04 超声波传感器的 测距系统 ..................................190
6.2 实战——基于超声波传感器的 停车辅助系统 ................................192
6.2.1 项目介绍 ..................................192
6.2.2 具体实现 ..................................193
6.3 实战——环境感知和障碍物 识别 ................................................204
6.3.1 项目介绍 ..................................205
6.3.2 基于光线强度的避障程序 ......205
6.3.3 基于超声波传感器的避障 程序 ..........................................208
6.4 实战——使用超声波传感器 消除盲区 ........................................212
6.4.1 电路设计 ..................................212
6.4.2 Arduino UNO R3 介绍 ............212
6.4.3 运行流程 ..................................213
6.4.4 具体编码 ..................................214
小结 .........................................................217
习题 .........................................................217
第 7 章 基于 SLAM 的定位与地图构建算法 .........................218
7.1 SLAM 介绍 ....................................218
7.1.1 SLAM 的组成 ..........................219
7.1.2 核心功能 ..................................219
7.2 常用的 SLAM 算法 .......................219
7.2.1 FastSLAM 算法 .......................219
7.2.2 Grid-based FastSLAM 算法 ....220
7.2.3 GMapping 算法 .......................220
7.3 实战——基于 SLAM 的辅助 驾驶系统 ........................................221
7.3.1 项目介绍 ..................................221
7.3.2 环境仿真 ..................................221
7.3.3 自动驾驶、SLAM 和障碍 检测 ..........................................222
7.3.4 导航参数配置 ..........................229
7.3.5 地图可视化 ..............................230
7.4 实战——基于 ROS 的地图构建 和寻找最短导航路径系统 ............232
7.4.1 项目介绍 ..................................232
7.4.2 接收激光雷达传感器数据 ......233
7.4.3 运动控制 ..................................233
7.4.4 最短路径 ..................................236
7.4.5 VFH 控制器 .............................244
7.4.6 启动节点 ..................................248
7.4.7 启动运行 ..................................249
小结 .........................................................250
习题 .........................................................250
第 8 章 OctoMap 环境感知 .........251
8.1 OctoMap 介绍 ................................251
8.1.1 八叉树和 OctoMap ..................251
8.1.2 OctoMap 在自动驾驶中的 作用 ..........................................252
8.1.3 基于 OctoMap 的自动驾驶 算法 ..........................................252
8.1.4 基于 OctoMap 可视化的路径 规划 ..........................................254
8.2 实战——基于 OctoMap 的路径 规划系统 ........................................261
8.2.1 项目介绍 ..................................261
8.2.2 姿态处理和转换 ......................262
8.2.3 生成分段线性轨迹 ..................264
8.2.4 基于多项式的轨迹规划器 ......268
8.2.5 基于多项式的轨迹求解器 ......288
8.2.6 基于交互的路径和轨迹可视化 ......................................288
8.2.7 非交互的起始点和目标点的可视化 ......................................293
8.2.8 基于 RRT* 算法的路径规划和轨迹生成可视化 ..................296
小结 .........................................................300
习题 .........................................................300
第 1 章 自动驾驶概述 ......................1
1.1 自动驾驶介绍 ....................................1
1.1.1 自动驾驶分级 ..............................1
1.1.2 自动驾驶的发展历程 ..................2
1.1.3 自动驾驶的应用领域 ..................3
1.2 自动驾驶技术介绍 ............................4
1.2.1 传感器技术 ..................................4
1.2.2 感知与感知算法 ..........................5
1.2.3 控制与执行系统 ..........................6
1.3 自动驾驶的挑战与机会 ....................7
1.3.1 技术挑战 ......................................7
1.3.2 法规与政策挑战 ..........................8
1.3.3 社会接受与文化变革 ..................9
1.3.4 商业机会与创新发展 ................10
小结 ...........................................................11
习题 ...........................................................11
第 2 章 激光雷达传感器感知算法...12
2.1 传感器技术与感知 ..........................12
2.1.1 环境感知算法 ............................13
2.1.2 激光雷达传感器感知算法 ........13
2.2 地面提取算法 ..................................14
2.2.1 基于平面拟合的方法 ................14
2.2.2 统计学方法 ................................26
2.3 目标检测与跟踪算法 ......................32
2.3.1 聚类算法 ....................................32
2.3.2 分割算法 ....................................34
2.3.3 滤波器算法 ................................36
2.4 环境建模与地图构建算法 ..............38
2.5 实战——基于扩展卡尔曼滤波器的 对象跟踪系统 ..................................41
2.5.1 数据包 ........................................41
2.5.2 计算均方根误差和雅可比 矩阵 ............................................42
2.5.3 扩展卡尔曼滤波器 ....................44
2.5.4 状态预测和更新 ........................50
2.5.5 数据融合与目标跟踪 ................52
2.6 实战——基于激光雷达点云的 地面分割系统 ..................................56
2.6.1 参数介绍 ....................................56
2.6.2 分割算法 ....................................59
2.6.3 分割结果可视化 ........................71
2.6.4 ROS 测试 ...................................73
小结 ...........................................................76
习题 ...........................................................76
第 3 章 基于高清摄像头传感器的视觉处理算法 ...................78
3.1 高清摄像头传感器介绍 ..................78
3.1.1 高清摄像头传感器的特征 ........79
3.1.2 高清摄像头传感器算法介绍 ....79
3.2 目标检测和识别算法 ......................80
3.2.1 基于 Haar 特征的目标检测 ......80
3.2.2 基于深度学习的 YOLO 算法 ...82
3.3 车道检测算法 ..................................84
3.3.1 霍夫变换算法 ............................84
3.3.2 颜色阈值算法 ............................86
3.3.3 滑动窗口法 ................................88
3.4 目标跟踪算法 ..................................90
3.4.1 目标跟踪的应用领域 ................91
3.4.2 卡尔曼滤波器算法 ....................91
3.4.3 扩展卡尔曼滤波器算法 ............94
3.4.4 粒子滤波器算法 ........................96
3.4.5 多假设跟踪算法 ........................99
3.4.6 MOSSE 滤波器算法 ...............101
3.4.7 轨迹聚类算法 ..........................103
3.4.8 实战——基于 OpenCV 的行人 检测系统 ..................................105
3.5 盲点检测算法 ................................114
3.5.1 盲点检测的应用领域 ..............114
3.5.2 实战——基于 YOLOv7 的 盲点检测系统 ..........................114
小结 .........................................................119
习题 .........................................................120
第 4 章 路径规划与决策算法 .......121
4.1 Dijkstra 算法 ..................................121
4.1.1 Dijkstra 算法的实现步骤 ........121
4.1.2 实战——寻找导航中的最短 路径 ..........................................122
4.2 A* 算法 ..........................................126
4.2.1 A* 算法的原理和实现步骤 ....127
4.2.2 实战——基于 ROS 的自动 驾驶汽车路径规划系统 ..........127
4.3 Bellman-Ford 算法 .........................143
4.3.1 图的表示方法 ..........................143
4.3.2 实战——寻找地图中建筑物的 最短距离 ..................................144
4.4 Floyd-Warshall 算法 ......................151
4.4.1 Floyd-Warshall 算法的核心 思想 ..........................................151
4.4.2 实战——解决城市交通规划的 最短路径问题 ..........................151
4.5 D* 算法 ..........................................154
4.5.1 D* 算法的原理和实现步骤 ....154
4.5.2 实战——基于 D* 算法的动态 路径规划可视化系统 ..............155
小结 .........................................................167
习题 .........................................................167
第 5 章 基于红外传感器的应用算法 ................................168
5.1 红外传感器介绍 ............................168
5.1.1 红外传感器的分类 ..................168
5.1.2 红外传感器在自动驾驶中的 作用 ..........................................169
5.2 障碍物检测与跟踪算法 ................169
5.2.1 基于距离阈值的障碍物 检测 ..........................................169
5.2.2 基于热图像的障碍物检测 ......171
5.2.3 基于特征提取的障碍物检测 ...172
5.2.4 基于运动预测的障碍物跟踪 ...174
5.2.5 基于 Arduino 的自动驾驶 程序 ..........................................176
5.3 基于红外图像的处理算法 ............180
5.3.1 热点检测 ..................................180
5.3.2 温度分布分析 ..........................182
5.3.3 障碍物识别 ..............................184
小结 .........................................................187
习题 .........................................................187
第 6 章 基于超声波传感器的应用算法 ................................189
6.1 超声波传感器介绍 ........................189
6.1.1 超声波传感器的作用 ..............190
6.1.2 基于 HCSR04 超声波传感器的 测距系统 ..................................190
6.2 实战——基于超声波传感器的 停车辅助系统 ................................192
6.2.1 项目介绍 ..................................192
6.2.2 具体实现 ..................................193
6.3 实战——环境感知和障碍物 识别 ................................................204
6.3.1 项目介绍 ..................................205
6.3.2 基于光线强度的避障程序 ......205
6.3.3 基于超声波传感器的避障 程序 ..........................................208
6.4 实战——使用超声波传感器 消除盲区 ........................................212
6.4.1 电路设计 ..................................212
6.4.2 Arduino UNO R3 介绍 ............212
6.4.3 运行流程 ..................................213
6.4.4 具体编码 ..................................214
小结 .........................................................217
习题 .........................................................217
第 7 章 基于 SLAM 的定位与地图构建算法 .........................218
7.1 SLAM 介绍 ....................................218
7.1.1 SLAM 的组成 ..........................219
7.1.2 核心功能 ..................................219
7.2 常用的 SLAM 算法 .......................219
7.2.1 FastSLAM 算法 .......................219
7.2.2 Grid-based FastSLAM 算法 ....220
7.2.3 GMapping 算法 .......................220
7.3 实战——基于 SLAM 的辅助 驾驶系统 ........................................221
7.3.1 项目介绍 ..................................221
7.3.2 环境仿真 ..................................221
7.3.3 自动驾驶、SLAM 和障碍 检测 ..........................................222
7.3.4 导航参数配置 ..........................229
7.3.5 地图可视化 ..............................230
7.4 实战——基于 ROS 的地图构建 和寻找最短导航路径系统 ............232
7.4.1 项目介绍 ..................................232
7.4.2 接收激光雷达传感器数据 ......233
7.4.3 运动控制 ..................................233
7.4.4 最短路径 ..................................236
7.4.5 VFH 控制器 .............................244
7.4.6 启动节点 ..................................248
7.4.7 启动运行 ..................................249
小结 .........................................................250
习题 .........................................................250
第 8 章 OctoMap 环境感知 .........251
8.1 OctoMap 介绍 ................................251
8.1.1 八叉树和 OctoMap ..................251
8.1.2 OctoMap 在自动驾驶中的 作用 ..........................................252
8.1.3 基于 OctoMap 的自动驾驶 算法 ..........................................252
8.1.4 基于 OctoMap 可视化的路径 规划 ..........................................254
8.2 实战——基于 OctoMap 的路径 规划系统 ........................................261
8.2.1 项目介绍 ..................................261
8.2.2 姿态处理和转换 ......................262
8.2.3 生成分段线性轨迹 ..................264
8.2.4 基于多项式的轨迹规划器 ......268
8.2.5 基于多项式的轨迹求解器 ......288
8.2.6 基于交互的路径和轨迹可视化 ......................................288
8.2.7 非交互的起始点和目标点的可视化 ......................................293
8.2.8 基于 RRT* 算法的路径规划和轨迹生成可视化 ..................296
小结 .........................................................300
习题 .........................................................300















