官网 自动驾驶汽车视觉和行为实践 用Python3和OpenCV4探索视觉感知 车道检测和物体分类 卢卡 文图瑞 自动驾驶汽车技术书
运费: | ¥ 0.00-30.00 |
商品详情
书名:自动驾驶汽车视觉和行为实践——用Python3和OpenCV4探索视觉感知、车道检测和物体分类
定价:149.0
ISBN:9787111729365
作者:卢卡·文图瑞
版次:1
内容提要:
本书将使用OpenCV完成各种任务,包括行人检测和车道检测。本书将讲述深度学习并介绍如何利用它进行图像分类、对象检测和语义分割,使用它来识别行人、汽车、道路、人行道和交通信号灯,同时帮助读者了解一些有影响力的神经网络算法。本书中还将使用Carla模拟器通过行为克隆和PID控制器来控制汽车;了解网络协议、传感器、摄像头以及使用激光雷达来绘制周围的世界并找到相应位置。本书适合具备任何一种编程语言基础的程序员,以及车辆工程和自动驾驶相关专业的研究生阅读使用。
目录:
前 言
第一部分
OpenCV和传感器及信号
第1 章 OpenCV 基础知识和摄像头标定/ 002
1.1 技术需求/ 003
1.2 OpenCV 和NumPy 简介/ 003
1.2.1 OpenCV 和NumPy / 003
1.2.2 图像大小/ 003
1.2.3 灰度图/ 004
1.2.4 RGB 图/ 005
1.3 处理图像文件/ 006
1.4 处理视频文件/ 007
1.5 图像处理/ 008
1.5.1 图像翻转/ 009
1.5.2 图像模糊化/ 009
1.5.3 改变对比度、亮度和灰度系数/ 011
1.5.4 绘制矩形和文本/ 012
1.6 使用HOG 进行行人检测/ 013
1.6.1 滑动窗口/ 013
1.6.2 使用OpenCV 中的HOG / 013
1.6.3 摄像头简介/ 014
1.6.4 摄像头术语/ 015
1.6.5 摄像头组件/ 019
1.6.6 选择摄像头的注意事项/ 019
1.6.7 摄像头的优点和缺点/ 020
1.7 使用OpenCV 进行摄像头标定/ 021
1.7.1 畸变检测/ 022
1.7.2 校准/ 022
1.8 总结/ 023
1.9 问题/ 024
第2 章 理解和使用信号/ 025
2.1 技术需求/ 026
2.2 理解信号的类型/ 026
2.3 模拟信号与数字信号/ 026
2.4 串行和并行/ 028
2.4.1 通用异步接收和发送(UART) / 029
2.4.2 差分与单端/ 032
2.4.3 I2 C / 034
2.4.4 SPI / 036
2.5 基于帧的串行协议/ 039
2.5.1 理解CAN / 039
2.5.2 以太网和因特网协议/ 042
2.5.3 理解UDP / 044
2.5.4 理解TCP / 045
2.6 总结/ 048
2.7 问题/ 048
2.8 扩展阅读/ 049
第3 章 车道检测/ 050
3.1 技术需求/ 051
3.2 阈值处理/ 051
3.2.1 阈值在不同颜色空间中如何工作/ 051
3.2.2 RGB/BGR / 052
3.2.3 HLS / 053
3.2.4 HSV / 054
3.2.5 LAB / 054
3.2.6 YCbCr / 055
3.2.7 选择通道/ 055
3.3 透视校正/ 055
3.4 边缘检测/ 057
3.4.1 插值阈值/ 059
3.4.2 组合阈值/ 060
3.5 利用直方图确定车道线/ 061
3.6 滑动窗口算法/ 062
3.6.1 初始化/ 063
3.6.2 滑动窗口坐标/ 063
3.6.3 多项式拟合/ 064
3.7 增强视频/ 065
3.8 滚动平均/ 066
3.9 总结/ 066
3.10 问题/ 067
第二部分
利用深度学习和神经网络改进自动
驾驶汽车的工作方式
第4 章 基于神经网络的深度学习/ 070
4.1 技术需求/ 071
4.2 理解机器学习和神经网络/ 071
4.2.1 神经网络/ 072
4.2.2 神经元/ 072
4.2.3 参数/ 074
4.2.4 深度学习的成功/ 074
4.3 了解卷积神经网络/ 075
4.3.1 卷积/ 075
4.3.2 为什么卷积这么棒/ 076
4.4 Keras 和TensorFlow 入门/ 077
4.5 检测MNIST 手写数字/ 078
4.5.1 刚刚加载了什么/ 078
4.5.2 训练样本和标签/ 079
4.5.3 独热编码/ 080
4.5.4 训练数据集和测试数据集/ 081
4.6 确定神经网络模型/ 081
4.6.1 LeNet / 081
4.6.2 代码/ 082
4.6.3 框架/ 083
4.6.4 训练神经网络/ 084
4.6.5 CIFAR?10 数据集/ 087
4.7 总结/ 092
4.8 问题/ 092
4.9 扩展阅读/ 092
第5 章 深度学习工作流/ 093
5.1 技术需求/ 094
5.2 获取数据集/ 094
5.2.1 Keras 模块中的数据集/ 094
5.2.2 现有数据集/ 095
5.2.3 合成数据集/ 096
5.2.4 自定义数据集/ 096
5.3 理解三种数据集/ 096
5.4 理解分类器/ 098
5.4.1 生成真实数据集/ 099
5.4.2 数据增强/ 099
5.5 模型/ 101
5.5.1 调整卷积层/ 102
5.5.2 调整池化层/ 105
5.5.3 调整全连接层/ 106
5.5.4 如何训练神经网络/ 107
5.5.5 随机初始化/ 108
5.5.6 过拟合与欠拟合/ 109
5.6 可视化激活/ 110
5.7 推理/ 112
5.8 重训练/ 113
5.9 总结/ 113
5??10 问题/ 114
第6 章 改进神经网络/ 115
6.1 技术需求/ 116
6.2 更大的模型/ 116
6.2.1 出发点/ 116
6.2.2 提高速度/ 117
6.2.3 增加深度/ 119
6.3 更高效的神经网络/ 121
6.4 通过批归一化构建更智能的
神经网络/ 124
6.5 早停法/ 128
6.6 通过数据增强改进数据集/ 128
6.7 使用随机失活提高验证准确率/ 131
6.7.1 将模型应用于MNIST 数据集/ 135
6.7.2 现在轮到你了/ 136
6.8 总结/ 137
6.9 问题/ 137
第7 章 检测行人和交通信号灯/ 138
7.1 技术需求/ 139
7.2 使用SSD 检测行人、车辆和交通信号灯/ 139
7.2.1 使用Carla 模拟器收集图像/ 139
7.2.2 解读SSD / 143
7.2.3 探索TensorFlow 检测模型库/ 143
7.2.4 下载和加载SSD / 145
7.2.5 运行SSD / 145
7.2.6 图像注释/ 147
7.3 检测交通信号灯的颜色/ 148
7.3.1 创建交通信号灯数据集/ 148
7.3.2 解读迁移学习/ 150
7.3.3 了解ImageNet / 151
7.3.4 关于AlexNet 的探究/ 152
7.3.5 用Inception 来进行图像分类/ 154
7.3.6 利用Inception 进行迁移学习/ 155
7.3.7 将数据集输入Inception / 157
7.3.8 迁移学习的性能表现/ 158
7.3.9 改善迁移学习/ 159
7.4 识别交通信号灯及其颜色/ 161
7.5 总结/ 162
7.6 问题/ 163
7.7 扩展阅读/ 163
第8 章 行为克隆/ 164
8.1 技术需求/ 165
8.2 教神经网络如何使用行为
克隆驾驶/ 165
8.3 DAVE?2 简介/ 166
8.3.1 初识manual_control.py / 167
8.3.2 录制一段视频/ 169
8.3.3 神经网络建模/ 176
8.3.4 训练回归神经网络/ 177
8.3.5 可视化显著图/ 179
8.4 神经网络与Carla 的集成/ 184
8.5 自动驾驶/ 188
8.5.1 使用生成器在更大的数据集上
训练/ 189
8.5.2 一种复杂的数据增强方法/ 190
8.6 总结/ 191
8.7 问题/ 191
8.8 扩展阅读/ 191
第9 章 语义分割/ 192
9.1 技术需求/ 193
9.2 引入语义分割/ 193
9.2.1 确定目标/ 194
9.2.2 收集数据集/ 194
9.2.3 修改synchronous_mode??py / 196
9.3 理解用于分类的DenseNet / 197
9.3.1 总览DenseNet 的架构/ 197
9.3.2 理解密集块/ 198
9.4 使用CNN 分割图像/ 201
9.5 调整DenseNet 进行语义分割/ 201
9.6 编写FC?DenseNet 模块/ 202
9.6.1 组合构件/ 204
9.6.2 为神经网络提供输入/ 205
9.6.3 运行神经网络/ 208
9.7 改善效果较差的语义分割/ 211
9.8 总结/ 212
9.9 问题/ 212
9??10 扩展阅读/ 212
第三部分
建图和控制
第10 章 转向、加速和制动控制/ 214
10.1 技术需求/ 215
10.2 为什么需要控制/ 215
10.3 控制器类型/ 216
10.3.1 PID 控制器/ 216
10.3.2 MPC / 220
10.4 在Carla 中实现PID 控制器控制/ 224
10.4.1 安装Carla / 224
10.4.2 复制Packt?Town04 ?PID.py 脚本/ 225
10.4.3 浏览Packt?Town04 ?PID.py 脚本/ 225
10.4.4 PID 纵向控制器/ 228
10.4.5 PID 横向控制器/ 230
10.4.6 运行脚本/ 232
10.5 C++ 中的MPC 实例/ 233
10.6 总结/ 237
10.7 问题/ 237
10.8 扩展阅读/ 237
第11 章 环境建图/ 238
11.1 技术需求/ 239
11.2 为什么需要地图和定位/ 239
11.2.1 地图/ 239
11.2.2 定位/ 240
11.3 建图和定位的类型/ 240
11.4 开源建图工具/ 244
11.5 基于Ouster 激光雷达和Google Cartographer 的SLAM / 245
11.5.1 Ouster 传感器/ 245
11.5.2 代码仓/ 245
11.5.3 从cartographer_ros 开始/ 245
11.5.4 Docker 镜像/ 251
11.6 总结/ 256
11.7 问题/ 257
11.8 扩展阅读/ 257
答 案/ 258
第1 章/ 258
第2 章/ 258
第3 章/ 259
第4 章/ 259
第5 章/ 259
第6 章/ 259
第7 章/ 260
第8 章/ 260
第9 章/ 260
第10 章/ 261
第11 章/ 261
- 机械工业出版社旗舰店 (微信公众号认证)
- 扫描二维码,访问我们的微信店铺
- 随时随地的购物、客服咨询、查询订单和物流...