书籍详情

计算机视觉和深度学习在自动驾驶汽车中的应用

计算机视觉和深度学习在自动驾驶汽车中的应用

作者:[印] 苏米特 · 兰詹,S. 森塔米拉苏

出版社:机械工业出版社

出版时间:2024-08-01

ISBN:9787111761112

定价:¥158.00

购买这本书可以去
内容简介
  计算机视觉以及深度学习技术构成了智能驾驶甚至自动驾驶的技术基础。随着智能驾驶技术的逐渐普及,计算机视觉以及深度学习技术在汽车行业受到了越来越多的关注。本书从自动驾驶技术的历史和发展讲起,围绕计算机视觉和深度学习技术逐渐深入,介绍了其在自动驾驶中涉及的诸如学习模型、OpenCV技术、CNN改进图像分类器、语义分割等技术,并介绍了它们在自动驾驶领域的应用实践和实际工程案例。《计算机视觉和深度学习在自动驾驶汽车中的应用》可作为自动驾驶、人工智能、汽车与制造等行业工程技术人员的学习参考书,也可作为高等院校相关专业师生的参考书。对于自动驾驶和智能汽车产业爱好者和产业研究员而言,本书也具有相当高的参考价值。
作者简介
  苏米特·兰詹(Sumit Ranjan)是电子与通信专业工学硕士。他是一位充满热情的数据科学家,致力于解决业务问题,在汽车、医疗、半导体、云虚拟化和保险等领域提供了无与伦比的跨领域用户体验。他在构建应用于现实需求的机器学习、计算机视觉和深度学习解决方案方面经验丰富。他曾获得KPIT Technologies颁发的自动驾驶汽车学者奖,并在梅赛德斯-奔驰研发中心参与多个研究项目。除了工作,他的爱好是旅游和探索新地方、野生动物摄影和写博客。写书比我想象得更难,也比我想象得更有价值。首先,我要感谢Packt Publishing的所有人对我的支持。特别感谢总是很有耐心的编辑Nathanya和Ayaan,优秀的策划编辑Girish,帮助我改善书中技术方面的Utkarsha和Sonam,以及最优秀的项目经理Gebin。感谢我的家人一直支持我,感谢我的导师Sikandar、Ashis和Arjun,因为有了他们,我才到了这里。如果没有好友Divya、Pramod和Ranjeet,那么这本书将不可能完成,他们让我的生活变得精彩,谢谢他们在我写这本书时给我的所有支持。S. 森塔米拉苏(S. Senthamilarasu)出生并成长于泰米尔纳德邦的哥印拜陀市。他是一名技术专家、设计师、演说家、短篇小说作家、期刊评审人、教育工作者和科研工作者。他喜欢学习新技术,解决IT行业中的实际问题。他发表了多篇论文,并在多种国际会议上做过报告。他的研究领域包括数据挖掘、图像处理和神经网络。他喜欢阅读泰米尔语小说,并积极参与社会活动。他为患有自闭症的儿童开发的研究产品在国际展览会上获得了银牌。他目前住在班加罗尔,并与主要客户密切合作。写一本书比我想象的要难,但比我期望的更加满意。如果没有我的伙伴Sumit,这一切都不可能实现,在成功的背后,他都一直支持着我并一起撰写了这本书。我要特别感谢我的家人,是他们给了我这个千载难逢的机会来写这本书,让我学到了很多新的东西。最后,我要感谢出版团队中的每一个人,没有他们的不断支持,这本书不可能存在。
目录
前言
第1部分 深度学习和自动驾驶汽车基础
第1章 自动驾驶汽车基础2
1.1 自动驾驶汽车简介2
1.1.1 自动驾驶汽车的优势5
1.1.2 自动驾驶汽车的进展6
1.2 当前部署中的挑战8
1.2.1 建立安全系统9
1.2.2 硬件10
1.2.3 软件编程15
1.2.4 高速互联网15
1.3 自动驾驶等级15
1.4 深度学习和计算机视觉在自动驾驶汽车中的应用16
1.5 总结18
第2章 深入了解深度神经网络19
2.1 深入了解神经网络20
2.2 理解神经元和感知器22
2.3 人工神经网络的工作原理25
2.4 理解激活函数26
2.4.1 阈值函数26
2.4.2 Sigmoid函数26
2.4.3 整流线性函数27
2.4.4 双曲正切激活函数28
2.5 神经网络的损失函数29
2.6 优化器30
2.7 理解超参数31
2.7.1 模型训练超参数31
2.7.2 网络架构超参数34
2.8 TensorFlow与Keras的对比36
2.9 总结36
第3章 使用Keras实现深度学习模型37
3.1 开始使用Keras37
3.1.1 Keras的优点38
3.1.2 Keras的工作原理38
3.1.3 构建Keras模型38
3.1.4 Keras执行类型41
3.2 Keras深度学习41
3.3 构建第一个深度学习模型44
3.3.1 Auto-Mpg数据集介绍44
3.3.2 导入数据45
3.3.3 分割数据47
3.3.4 标准化数据48
3.3.5 构建和编译模型48
3.3.6 训练模型49
3.3.7 预测新的、未知的模型52
3.3.8 评估模型的性能53
3.3.9 保存和加载模型54
3.4 总结54
第2部分 深度学习和计算机视觉
第4章 自动驾驶汽车中的计算机视觉56
4.1 计算机视觉介绍56
4.1.1 计算机视觉的挑战57
4.1.2 人工眼睛与人眼的对比59
4.2 图像的基本构建块60
4.2.1 图像的数字表示60
4.2.2 从RGB到灰度图像的转换62
4.2.3 道路标记检测64
4.3 颜色空间技术68
4.3.1 RGB颜色空间68
4.3.2 HSV颜色空间68
4.3.3 颜色空间操作70
4.4 卷积介绍78
4.5 边缘检测和梯度计算87
4.5.1 Sobel的介绍87
4.5.2 Laplacian边缘检测器的介绍88
4.5.3 Canny边缘检测89
4.6 图像变换93
4.6.1 仿射变换93
4.6.2 投影变换94
4.6.3 图像旋转94
4.6.4 图像平移96
4.6.5 图像缩放97
4.6.6 透视变换99
4.6.7 图像裁剪、腐蚀和膨胀102
4.6.8 使用掩模提取感兴趣区域107
4.6.9 霍夫(Hough)变换109
4.7 总结115
第5章 使用OpenCV查找道路标志116
5.1 在图像中查找道路标志116
5.1.1 使用OpenCV加载图像116
5.1.2 将图像转换为灰度图像117
5.1.3 平滑图像118
5.1.4 Canny边缘检测119
5.1.5 使用掩模提取感兴趣区域120
5.1.6 应用bitwise_and122
5.1.7 应用霍夫变换123
5.1.8 优化检测到的道路标志127
5.2 在视频中检测道路标志130
5.3 总结132
第6章 使用CNN改进图像分类器133
6.1 计算机格式中的图像133
6.1.1 CNN的必要性133
6.1.2 CNN背后的直觉134
6.2 CNN介绍135
6.2.1 为什么需要3D层135
6.2.2 理解卷积层135
6.2.3 深度、步长和零填充139
6.2.4 ReLU141
6.2.5 全连接层142
6.3 手写数字识别介绍142
6.3.1 问题和目标143
6.3.2 加载数据143
6.3.3 重塑数据146
6.3.4 数据的转换146
6.3.5 对输出进行独热编码146
6.3.6 构建和编译模型148
6.3.7 训练模型149
6.3.8 验证损失与训练损失150
6.3.9 验证与测试准确度151
6.3.10 保存模型152
6.3.11 可视化模型架构152
6.3.12 混淆矩阵153
6.3.13 准确度报告155
6.4 总结157
第7章 使用深度学习进行道路标志检测158
7.1 数据集概述158
7.1.1 数据集结构158
7.1.2 图像格式159
7.2 加载数据160
7.3 图像探索161
7.4 数据准备162
7.5 模型训练163
7.6 模型准确度164
7.7 总结168
第3部分 自动驾驶汽车中的语义分割
第8章 语义分割的原理和基础170
8.1 语义分割简介171
8.2 语义分割架构的理解171
8.3 不同语义分割架构的概述173
8.3.1 U-Net173
8.3.2 SegNet174
8.3.3 PSPNet175
8.3.4 DeepLabv3 176
8.3.5 E-Net177
8.4 总结179
第9章 语义分割的实现180
9.1 图像中的语义分割180
9.2 视频中的语义分割185
9.3 总结188
第4部分 高级功能实现
第10章 基于深度学习的行为克隆190
10.1 回归神经网络190
10.2 使用深度学习进行行为克隆194
10.2.1 数据收集194
10.2.2 数据准备198
10.2.3 模型开发209
10.2.4 评估模拟器211
10.3 总结213
第11章 基于OpenCV和深度学习的车辆检测214
11.1 YOLO特点215
11.2 YOLO损失函数215
11.3 YOLO架构216
11.4 YOLO目标检测的实现217
11.4.1 导入库218
11.4.2 图像处理函数218
11.4.3 类别获取函数219
11.4.4 边界框绘制函数219
11.4.5 图像目标检测函数220
11.4.6 视频目标检测函数220
11.4.7 导入YOLO221
11.4.8 检测图像中的物体221
11.4.9 检测视频中的物体223
11.5 总结223
第12章 未来工作及传感器融合224
12.1 自动驾驶汽车传感器227
12.2 传感器融合简介228
12.3 卡尔曼滤波器229
12.4 总结229
猜您喜欢

读书导航