书籍详情
自动驾驶:感知原理与实践
作者:龚心满 等
出版社:电子工业出版社
出版时间:2023-07-01
ISBN:9787121457388
定价:¥108.00
购买这本书可以去
内容简介
本书是一本系统讲解自动驾驶感知技术的图书,同时带有具体的自动驾驶实践案例,以及自动驾驶感知技术的落地部署方案供读者学习。本书主要涉及的内容包括神经网络的基础理论知识、经典卷积神经网络、轻量化卷积神经网络、Vision Transformer、2D目标检测算法(YOLOv5、YOLOX、YOLOv5 Lite、NanoDet等算法)、3D激光点云目标检测算法、BEVFormer纯视觉的3D目标检测算法、语义分割、车道线检测、ReID相关技术、多目标跟踪及部署落地的相关技术(如CUDA、OpenCV、NCNN、TensorRT等)。为了让读者全面、深入、透彻地理解所讲解的算法,书中还给出了具体的实践案例,并提供了相应的数据集供读者实践,同时通过对代码的讲解使读者获得实战能力。
作者简介
龚心满,硕士,新能源汽车感知融合资深工程师。毕业于中国计量大学控制理论与控制工程专业。曾就职于华人运通自动驾驶科技有限公司,担任深度学习高级工程师职位,负责ADAS感知项目的研发,现任职于吉咖智能机器人有限公司感知中心,负责高阶自动驾驶的落地。同时还参与多本人工智能书籍的撰写,也是多个技术专栏的签约作者。在安防和自动驾驶领域都有丰富的经验。江涛,北京航空航天大学学士,香港中文大学硕士。先后在明星初创公司、研究院、互联网大厂、实验室任职,专注于深度学习与计算机视觉领域的前沿研究、落地部署、AI产品化,是多个国际知名开源项目的活跃贡献者和维护者,也是多个技术专栏的签约作者。梁功臣,硕士,新能源汽车软件研发高级工程师。毕业于东北大学控制理论与控制工程专业。曾作为项目核心成员于中国科学院沈阳自动化研究所参与相关国家863项目(仿生医疗假肢)的研发科研工作,现任职于蔚来汽车科技有限公司数字架构定义与集成部门。胡佳慧,硕士,毕业于中国计量大学控制工程专业。现就职于远景科技集团,负责新能源行业智能化项目的研发,同时也是多个知名开源项目的负责人。在人工智能研发与落地方面有着丰富的经验。
目录
第1章 计算机视觉与神经网络 1
1.1 人工神经网络 1
1.1.1 感知机 2
1.1.2 神经网络 2
1.2 卷积神经网络 4
1.2.1 卷积 4
1.2.2 激活函数 5
1.2.3 池化层 6
1.2.4 全连接层 6
1.3 经典卷积神经网络 7
1.3.1 AlexNet 7
1.3.2 VGG 8
1.3.3 GoogLeNet 9
1.3.4 ResNet 11
1.3.5 DarkNet 14
1.3.6 CSPDarkNet 16
1.4 轻量化卷积神经网络 18
1.4.1 MobileNet 18
1.4.2 ShuffleNet 22
1.4.3 GhostNet 25
1.5 Vision Transformer在计算机视觉中的应用 27
1.5.1 ViT 27
1.5.2 Swin Transformer 30
1.5.3 MobileViT 34
1.5.4 TRT-ViT 36
1.5.5 基于ResNet/MobileViT的交通标识牌识别项目实践 38
1.6 本章小结 55
第2章 目标检测在自动驾驶中的应用 56
2.1 目标检测简介 56
2.1.1 相关工作简介 56
2.1.2 两阶段目标检测算法简介 57
2.1.3 单阶段目标检测算法简介 62
2.2 自动驾驶中的车辆检测 66
2.2.1 BDD100K数据集简介 66
2.2.2 YOLOv5算法的原理 67
2.2.3 基于YOLOv5的车辆检测项目实践 74
2.3 自动驾驶中的行人检测 81
2.3.1 YOLOX算法的原理 81
2.3.2 基于YOLOX的行人检测项目实践 90
2.4 自动驾驶中的交通标识牌检测 104
2.4.1 NanoDet算法的原理 104
2.4.2 基于NanoDet的交通标识牌检测项目实践 110
2.5 自动驾驶中的交通信号灯的检测与识别 125
2.5.1 YOLOv5 Lite算法的原理 125
2.5.2 基于YOLOv5 Lite的交通信号灯检测项目实践 128
2.6 3D目标检测 131
2.6.1 PointPillars 132
2.6.2 BEVFormer 136
2.6.3 基于OpenPCDet的3D目标检测项目实践 139
2.7 本章小结 153?
第3章 语义分割在自动驾驶中的应用 154
3.1 STDC算法的原理 155
3.1.1 STDC模块 155
3.1.2 STDC语义分割网络 157
3.2 TopFormer算法的原理 160
3.2.1 Token Pyramid Module 161
3.2.2 Scale-Aware Semantics Extractor 162
3.2.3 Semantics Injection Module 162
3.2.4 Segmentation Head 163
3.3 基于TopFormer的可行驶区域分割项目实践 163
3.3.1 Cityscapes数据集简介 163
3.3.2 TopFormer模型实现 164
3.4 本章小结 172
第4章 车道线检测与分割 173
4.1 UNet算法的原理 174
4.2 LaneATT算法的原理 176
4.2.1 Lane的Anchor表征 177
4.2.2 基于Anchor的特征图池化 177
4.2.3 局部注意力机制 178
4.2.4 Proposal预测 179
4.2.5 后处理 179
4.3 基于LaneATT的车道线检测实践 180
4.3.1 CULane数据集介绍 180
4.3.2 LaneATT实践 180
4.4 本章小结 186
第5章 多目标跟踪在自动驾驶中的应用 187
5.1 多目标跟踪算法SORT的原理 187
5.2 多目标跟踪算法DeepSORT的原理 192
5.2.1 级联匹配 192
5.2.2 ReID特征提取 193
5.3 多目标跟踪算法ByteTrack的原理 194
5.4 基于ByteTrack的多目标跟踪项目实践 196
5.4.1 MOT16数据集 196
5.4.2 Byte匹配 197
5.5 本章小结 202
第6章 深度学习模型的落地和部署 203
6.1 常见模型部署框架介绍 203
6.1.1 TensorRT 204
6.1.2 NCNN 206
6.1.3 ONNX 206
6.2 OpenCV图像处理操作 207
6.2.1 OpenCV基本操作 207
6.2.2 使用OpenCV 进行图像预处理 212
6.3 GPU编程工具之CUDA 216
6.3.1 CUDA 编程模型 217
6.3.2 CUDA 线程组织 223
6.3.3 CUDA 内存组织 239
6.3.4 GPU 硬件组织结构 242
6.3.5 CUDA流 245
6.4 模型部署框架之TensorRT 249
6.4.1 使用TensorRT API搭建网络结构 250
6.4.2 从ONNX文件中导入网络结构定义 253
6.4.3 TensorRT推理引擎的序列化与反序列化 254
6.4.4 TensorRT的推理 257
6.4.5 INT8量化 259
6.4.6 TensorRT的插件开发 261
6.5 TensorRT 模型部署实例 263
6.5.1 使用 OpenCV 进行前处理 264
6.5.2 使用CUDA加速前处理 265
6.5.3 执行推理操作 268
6.5.4 后处理 270
6.6 NCNN模型部署 273
6.6.1 NCNN部署流程 273
6.6.2 使用NCNN部署NanoDet 276
6.7 本章小结 284
参考文献 285
1.1 人工神经网络 1
1.1.1 感知机 2
1.1.2 神经网络 2
1.2 卷积神经网络 4
1.2.1 卷积 4
1.2.2 激活函数 5
1.2.3 池化层 6
1.2.4 全连接层 6
1.3 经典卷积神经网络 7
1.3.1 AlexNet 7
1.3.2 VGG 8
1.3.3 GoogLeNet 9
1.3.4 ResNet 11
1.3.5 DarkNet 14
1.3.6 CSPDarkNet 16
1.4 轻量化卷积神经网络 18
1.4.1 MobileNet 18
1.4.2 ShuffleNet 22
1.4.3 GhostNet 25
1.5 Vision Transformer在计算机视觉中的应用 27
1.5.1 ViT 27
1.5.2 Swin Transformer 30
1.5.3 MobileViT 34
1.5.4 TRT-ViT 36
1.5.5 基于ResNet/MobileViT的交通标识牌识别项目实践 38
1.6 本章小结 55
第2章 目标检测在自动驾驶中的应用 56
2.1 目标检测简介 56
2.1.1 相关工作简介 56
2.1.2 两阶段目标检测算法简介 57
2.1.3 单阶段目标检测算法简介 62
2.2 自动驾驶中的车辆检测 66
2.2.1 BDD100K数据集简介 66
2.2.2 YOLOv5算法的原理 67
2.2.3 基于YOLOv5的车辆检测项目实践 74
2.3 自动驾驶中的行人检测 81
2.3.1 YOLOX算法的原理 81
2.3.2 基于YOLOX的行人检测项目实践 90
2.4 自动驾驶中的交通标识牌检测 104
2.4.1 NanoDet算法的原理 104
2.4.2 基于NanoDet的交通标识牌检测项目实践 110
2.5 自动驾驶中的交通信号灯的检测与识别 125
2.5.1 YOLOv5 Lite算法的原理 125
2.5.2 基于YOLOv5 Lite的交通信号灯检测项目实践 128
2.6 3D目标检测 131
2.6.1 PointPillars 132
2.6.2 BEVFormer 136
2.6.3 基于OpenPCDet的3D目标检测项目实践 139
2.7 本章小结 153?
第3章 语义分割在自动驾驶中的应用 154
3.1 STDC算法的原理 155
3.1.1 STDC模块 155
3.1.2 STDC语义分割网络 157
3.2 TopFormer算法的原理 160
3.2.1 Token Pyramid Module 161
3.2.2 Scale-Aware Semantics Extractor 162
3.2.3 Semantics Injection Module 162
3.2.4 Segmentation Head 163
3.3 基于TopFormer的可行驶区域分割项目实践 163
3.3.1 Cityscapes数据集简介 163
3.3.2 TopFormer模型实现 164
3.4 本章小结 172
第4章 车道线检测与分割 173
4.1 UNet算法的原理 174
4.2 LaneATT算法的原理 176
4.2.1 Lane的Anchor表征 177
4.2.2 基于Anchor的特征图池化 177
4.2.3 局部注意力机制 178
4.2.4 Proposal预测 179
4.2.5 后处理 179
4.3 基于LaneATT的车道线检测实践 180
4.3.1 CULane数据集介绍 180
4.3.2 LaneATT实践 180
4.4 本章小结 186
第5章 多目标跟踪在自动驾驶中的应用 187
5.1 多目标跟踪算法SORT的原理 187
5.2 多目标跟踪算法DeepSORT的原理 192
5.2.1 级联匹配 192
5.2.2 ReID特征提取 193
5.3 多目标跟踪算法ByteTrack的原理 194
5.4 基于ByteTrack的多目标跟踪项目实践 196
5.4.1 MOT16数据集 196
5.4.2 Byte匹配 197
5.5 本章小结 202
第6章 深度学习模型的落地和部署 203
6.1 常见模型部署框架介绍 203
6.1.1 TensorRT 204
6.1.2 NCNN 206
6.1.3 ONNX 206
6.2 OpenCV图像处理操作 207
6.2.1 OpenCV基本操作 207
6.2.2 使用OpenCV 进行图像预处理 212
6.3 GPU编程工具之CUDA 216
6.3.1 CUDA 编程模型 217
6.3.2 CUDA 线程组织 223
6.3.3 CUDA 内存组织 239
6.3.4 GPU 硬件组织结构 242
6.3.5 CUDA流 245
6.4 模型部署框架之TensorRT 249
6.4.1 使用TensorRT API搭建网络结构 250
6.4.2 从ONNX文件中导入网络结构定义 253
6.4.3 TensorRT推理引擎的序列化与反序列化 254
6.4.4 TensorRT的推理 257
6.4.5 INT8量化 259
6.4.6 TensorRT的插件开发 261
6.5 TensorRT 模型部署实例 263
6.5.1 使用 OpenCV 进行前处理 264
6.5.2 使用CUDA加速前处理 265
6.5.3 执行推理操作 268
6.5.4 后处理 270
6.6 NCNN模型部署 273
6.6.1 NCNN部署流程 273
6.6.2 使用NCNN部署NanoDet 276
6.7 本章小结 284
参考文献 285
猜您喜欢