搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
出版时间 :
无库存
自动驾驶汽车视觉和行为实践 用Python3和OpenCV4探索视觉感知、车道检测和物体分类
0.00     定价 ¥ 149.00
泸西县图书馆
此书还可采购1本,持证读者免费借回家
  • ISBN:
    9787111729365
  • 作      者:
    [美]卢卡·文图瑞(Luca Venturi),克里斯托弗·柯尔达(Krishtof Korda)
  • 出 版 社 :
    机械工业出版社
  • 出版日期:
    2023-08-01
收藏
荐购
作者简介

Luca Venturi曾在shijie级公司(包括法拉利和Opera软件)担任程序员,具有丰富的工作经验。他还曾为一些初创公司工作,包括Activetainment(世界上第一辆智能自行车的制造商)、Futurehome(智能家居解决方案供应商)和CompanyBook(其产品将人工智能应用于销售)。他曾在Tapad(Telenor集团)的数据平台团队工作,使公司其他部门能够访问数以亿计的数据,现在是Piano软件公司分析数据库的首席工程师。

Krishtof Korda曾在Lyft公司为5级自动驾驶汽车设计传感器集成。现在,他作为Ouster的应用工程师,在机器人、飞行器、无人机和采矿等领域负责整合激光雷达的工作。此外,他喜欢参加Enduro山地自行车比赛。


展开
目录

前 言

第一部分

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


展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

温馨提示:请使用泸西县图书馆的读者帐号和密码进行登录

点击获取验证码
登录