书籍详情

自动驾驶算法与芯片设计

自动驾驶算法与芯片设计

作者:任建峰 著

出版社:电子工业出版社

出版时间:2022-06-01

ISBN:9787121436437

定价:¥108.00

购买这本书可以去
内容简介
  目前自动驾驶的一个发展趋势就是智能化。随着人工智能的飞速发展以及各种新型传感器的涌现,汽车智能化形成趋势,辅助驾驶功能的渗透率越来越高。这些功能的实现需要借助于摄像头、雷达、激光雷达等新增的传感器数据,其中视频处理需要大量并行计算。然而,传统CPU算力不足,而DSP擅长图像处理,对于深度学习却缺乏足够的性能。尽管GPU擅长训练,但它过于耗电,影响汽车的性能。因此,本书着眼于未来,认为定制化的ASIC必将成为主流。本书以自动驾驶的芯片设计为最终目标,来论述设计一个面向未来的自动驾驶SoC芯片的学术支撑和工程实践。本书共13章。其中第1章主要介绍自动驾驶目前遇到的挑战和研究方向。第2~6章重点讲述环境感知以及规划控制方面的算法设计;第7~10章重点讲述深度学习模型的优化和深度学习芯片的设计;第11章和第12章重点讲述具有安全功能的自动驾驶软件架构设计;第13章介绍5G车联网。
作者简介
  任建峰,博士,目前就职于谷歌公司,分别于2005年和2009 年获得西北工业大学模式识别与智能系统博士学位和美国得州大学达拉斯分校电子工程博士学位,从事计算影像学、自动驾驶方面芯片算法研发工作,在高通、华为海思工作多年,发表论文40多篇,拥有30多项美国专利。
目录
第1章 自动驾驶芯片的挑战\t1
1.1 自动驾驶科技界现状\t1
1.2 自动驾驶设计的挑战\t2
1.2.1 功能约束\t3
1.2.2 可预测性约束\t3
1.2.3 存储限制\t4
1.2.4 热量约束\t4
1.2.5 功率约束\t5
1.3 自动驾驶系统算法设计\t5
1.3.1 感知\t6
1.3.2 决策\t7
1.3.3 控制\t8
1.3.4 安全验证与测试\t9
1.4 自动驾驶系统计算平台\t10
1.4.1 GPU\t11
1.4.2 DSP\t11
1.4.3 FPGA\t11
1.4.4 ASIC\t12
参考文献\t12
第2章 3D物体检测\t14
2.1 传感器\t15
2.1.1 摄像机\t15
2.1.2 激光雷达\t15
2.2 数据集\t16
2.3 3D物体检测方法\t17
2.3.1 基于单目图像的检测方法\t18
2.3.2 基于点云的检测方法\t19
2.3.3 基于融合的检测方法\t22
2.4 实战项目:3D物体检测\t24
2.4.1 算法概述\t25
2.4.2 点云预处理\t26
2.4.3 网络结构\t28
2.4.4 欧拉区域提议\t28
2.4.5 锚盒设计\t29
2.4.6 复角度回归\t30
2.4.7 损失函数的构建\t30
2.4.8 实验结果\t31
2.4.9 训练细节\t31
2.4.10 鸟瞰检测\t32
2.4.11 3D对象检测\t32
2.5 未来研究展望\t33
参考文献\t33
第3章 车道检测\t37
3.1 传统图像处理\t38
3.2 实例:基于霍夫变换的车道检测\t39
3.2.1 霍夫变换\t40
3.2.2 OpenCV车道检测\t41
3.3 实例:RANSAC算法及直线拟合\t42
3.3.1 算法思路\t43
3.3.2 用Python实现直线拟合\t43
3.4 基于深度学习\t45
3.5 多传感器集成方案\t47
3.6 车道检测系统评估标准\t49
3.6.1 车道检测系统性能的影响因素\t49
3.6.2 离线评估\t50
3.6.3 在线评估\t51
3.6.4 评估指标\t52
3.7 实战项目:车道检测\t53
3.7.1 概述\t53
3.7.2 车道点实例网络\t53
3.7.3 调整大小层\t54
3.7.4 相同瓶颈层\t55
3.7.5 下采样瓶颈层和上采样瓶颈层\t56
3.7.6 损失函数\t58
3.7.7 后处理方法\t61
3.7.8 实验结果\t62
3.7.9 测试部分\t62
参考文献\t63
第4章 运动规划和控制\t68
4.1 概述\t68
4.2 传统自动驾驶的规划和决策层\t69
4.2.1 路径规划\t70
4.2.2 实例:路径规划Dijkstra算法\t71
4.2.3 实例:路径规划A*算法\t75
4.2.4 行为决策\t77
4.2.5 运动规划\t77
4.2.6 实例:运动规划\t78
4.2.7 车辆控制\t84
4.2.8 实例:模型预测控制\t84
4.2.9 实例:PID控制\t89
4.3 集成感知和规划\t90
实战项目:NVIDIA的端到端自动驾驶\t92
4.4 交互行为感知和规划\t94
4.4.1 合作与互动\t95
4.4.2 博弈论方法\t95
4.4.3 概率方法\t96
4.4.4 部分可观察的马尔可夫决策过程\t96
4.4.5 基于学习的方法\t97
参考文献\t98
第5章 定位与建图\t102
5.1 SLAM问题\t103
5.1.1 基于滤波器的SLAM方法\t104
5.1.2 基于优化的SLAM方法\t108
5.2 自主驾驶的局限性\t109
5.2.1 问题的提出\t109
5.2.2 避免或减少漂移的影响\t109
5.2.3 自动驾驶SLAM的评估标准\t110
5.3 自动驾驶中的SLAM\t111
5.3.1 重新定位和回环检测\t111
5.3.2 先前构建的地图中的定位\t113
5.3.3 建立和使用未来地图\t115
5.3.4 利用当前地图资源\t116
5.4 自动驾驶中的地图表示\t117
5.4.1 公制地图模型\t117
5.4.2 语义地图模型\t120
参考文献\t122
第6章 自动驾驶仿真器\t128
6.1 最新的仿真器\t129
6.1.1 AirSim\t129
6.1.2 Apollo\t129
6.1.3 CARLA\t130
6.1.4 Udacity AV Simulator\t131
6.1.5 Deep Traf?c\t132
6.2 仿真器实战:CARLA\t132
6.2.1 仿真引擎\t132
6.2.2 使用CARLA评估自动驾驶方法\t133
参考文献\t135
第7章 自动驾驶芯片\t136
7.1 Mobileye EyeQ\t137
7.2 NVIDIA\t138
7.2.1 NVIDIA DRIVE AGX开发者套件\t138
7.2.2 NVIDIA DRIVE软件\t138
7.3 TI Jacinto TDAx\t141
7.4 实战项目:360°环景系统与自动停车系统\t142
7.4.1 自动停车与停车辅助系统\t143
7.4.2 使用Jacinto TDA4VM处理器系列应对环视和自动停车的挑战\t144
7.4.3 Jacinto TDA4VM SoC\t145
7.5 Qualcomm\t147
7.6 NXP\t148
7.7 Xilinx Zynq-7000\t148
7.8 Synopsys\t149
第8章 深度学习模型优化\t151
8.1 模型压缩和加速\t152
8.1.1 参数修剪和共享\t153
8.1.2 低秩分解\t155
8.1.3 转移/紧凑卷积滤波器\t156
8.1.4 知识蒸馏\t159
8.2 AI模型效率工具包\t159
8.2.1 大规模节能AI\t160
8.2.2 通过合作推进AI模型效率的研究\t161
8.3 未来研究展望\t161
参考文献\t162
第9章 深度学习芯片设计\t166
9.1 概述\t167
9.2 在CPU和GPU平台上加速内核计算\t167
9.3 中科院计算所的深度学习芯片系列\t168
9.3.1 卷积神经网络简介\t168
9.3.2 DaDianNao\t170
9.3.3 ShiDianNao\t171
9.3.4 寒武纪Cambricon-X\t172
9.4 麻省理工学院的Eyeriss系列\t172
9.4.1 卷积神经网络基本知识\t172
9.4.2 Eyeriss\t173
9.4.3 Eyeriss v2\t174
9.5 谷歌的TPU芯片\t177
9.5.1 TPU v1\t177
9.5.2 TPU指令集\t178
9.5.3 TPU的心脏:脉动阵列\t179
9.5.4 TPU v2/v3\t180
9.5.5 软件架构\t180
9.6 近内存计算\t181
9.6.1 DRAM\t181
9.6.2 SRAM\t182
9.6.3 非易失性电阻存储器\t182
9.6.4 传感器\t183
9.7 DNN硬件的指标\t183
参考文献\t184
第10章 自动驾驶SoC设计\t186
10.1 自动驾驶SoC设计流程\t186
10.2 TI的Jacinto SoC平台\t187
10.3 Jacinto 7处理器的功能安全特性\t190
10.3.1 功能安全\t190
10.3.2 软件功能安全\t191
10.3.3 安全应用部署\t192
10.4 具有DNN和ISP的符合安全标准的多核SoC设计\t194
10.4.1 ADAS图像识别SoC\t194
10.4.2 DNN加速器\t195
10.4.3 具有安全BIST控制器的ISP\t196
10.5 实例:NVIDIA深度学习加速器\t197
10.5.1 NVDLA介绍\t198
10.5.2 FireSim\t199
10.5.3 NVDLA集成\t199
10.5.4 性能分析\t200
参考文献\t200
第11章 自动驾驶操作系统\t202
11.1 概述\t202
11.2 开源自动驾驶操作系统\t204
11.2.1 Linux RTOS\t204
11.2.2 ROS中间件\t205
11.3 使用开源软件开发自动驾驶技术的公司\t206
11.3.1 百度\t206
11.3.2 宝马\t207
11.3.3 Voyage\t208
11.3.4 Tier IV\t208
11.3.5 PolySync\t209
11.3.6 Perrone Robotics\t210
11.4 汽车硬实时操作系统和框架\t211
11.4.1 BlackBerry QNX\t211
11.4.2 EB robinos和EB corbos\t212
11.4.3 Integrity RTOS\t213
11.4.4 NVIDIA DriveWorks SDK\t213
11.5 总结\t214
第12章 自动驾驶软件架构\t215
12.1 概述\t215
12.2 基于ISO 26262的软件开发\t216
12.2.1 ISO 26262简介\t216
12.2.2 Synopsys软件产品组合\t216
12.2.3 ASIL\t218
12.2.4 软件架构设计\t218
12.2.5 软件单元设计与实现\t219
12.2.6 软件单元测试\t219
12.3 基于SAE J3016的组件架构设计\t220
12.3.1 功能组件\t221
12.3.2 AUTOSAR\t224
12.4 自动驾驶汽车的架构设计与实现\t225
12.4.1 硬件框架\t226
12.4.2 软件系统架构\t227
12.4.3 数据传输模块\t229
12.4.4 自动驾驶测试报告\t229
参考文献\t229
第13章 5G C-V2X简介\t230
13.1 移动车联网\t230
13.2 C-V2X如何改变驾驶\t231
13.2.1 避免碰撞\t231
13.2.2 车队行驶\t232
13.2.3 协作驾驶\t232
13.2.4 队列警告\t232
13.2.5 保护弱势道路使用者\t232
13.2.6 支持应急服务\t233
13.2.7 危险提前警告\t233
13.2.8 越来越多的自动驾驶\t233
13.3 C-V2X的优势\t233
13.4 C-V2X的工作原理\t235
13.4.1 直接通信\t235
13.4.2 网络通信\t235
13.4.3 5G如何改变C-V2X\t236
13.5 C-V2X部署计划\t236
13.5.1 中国引领潮流\t236
13.5.2 澳大利亚――改善道路安全\t237
13.5.3 美国――增长势头\t237
13.5.4 欧洲――广泛支持\t238
13.6 总结\t238
猜您喜欢

读书导航