1、计算机视觉

无人驾驶车有四个感知世界的核心任务:检测——指找出物体在环境中的位置;分类——指明确对象是什么;跟踪——指随时间的推移观察移动物体;语义分割——将图像中的每个像素与语义类别进行匹配如道路、汽车、天空。

2、Camera图像

RGB图像,深度为3

3、Lidar图像

激光雷达传感器创建环境的点云表征,提供了难以通过摄像头图像获得的信息如距离和高度。点云中的每个点代表反射回传感器的激光束,可以告诉我们关于物体的许多信息例如其形状和表面纹理。

4、机器学习

  • 监督式学习:使用数据和相关的真值标记来进行模型训练

  • 非监督学习:没有真值标记的车辆与行人图像,让计算机自行决定哪些图像相似、哪些图像不同

  • 半监督学习:使用少量的标记数据和大量的未标记数据来训练模型

  • 强化学习:允许模型通过尝试许多不同的方法来解决问题,然后衡量哪种方法最为成功。以多种不同的方向和速度进行实验性驾驶,如果车辆实际完成了右转,智能体会提高奖励即得分。

5、神经网络

受到构成人类神经系统的生物神经元启发,生物神经元通过相互连接构成了神经元网络或神经网络,通过类似的方式将人工神经元层连接起来以创建用于机器学习的人工神经网络。

6、反向传递

三步循环组成——前馈、误差测定、反向传播。每个人工神经元都对其值进行微调,这是基于通过神经网络后向传播的误差,可生成更准确的网络。

7、卷积神经网络CNN:CNN通过维持输入像素之间的空间关系来解决这个问题,CNN通过将过滤器连续滑过图像来收集信息,每次收集信息时,只对整个图像的一小部分区域进行分析,称为卷积。当在整个输入图像上对一个过滤器进行卷积时,将该信息与下一个卷积层相关联。

8、检测与分类:计算机首先需要知道障碍物的位置,然后进行分类。另一个示例为交通信号灯检测分类,首先将使用计算机视觉对图像中的交通信号灯进行定位,然后根据灯光显示颜色对交通信号灯进行分类。可以先使用检测CNN来查找图像中的对象的位置,在对图像中的对象进行定位后,可以将图像发送给另一个CNN进行分类。经典体系结构为 R-CNN、Fast R-CNN、Faster R-CNN、YOLO、SSD等

9、跟踪:追踪可以解决遮挡问题。追踪的第一步为确认身份,通过查找特征相似度最高的对象,将在之前的帧中检测到的所有对象与在当前的帧中检测到的对象进行匹配。

10、分割:语义分割涉及对图像的每个像素进行分类,用于尽可能详细地了解环境并确定车辆可驾驶区域。语义分割依赖于一种特殊类型的CNN,被称为全卷积网络FCN。1)FCN用卷积层来替代传统CNN体系结构末端的平坦层,现在网络中的每一层都是卷积层,因此名称为“全卷积网络”。2)为了分割像素,输出尺寸必须与原始图像的尺寸相匹配。为了完成,可以对中间输出进行上采样处理,直到最终输出的大小与原始输出图像的大小相匹配。编码器 和解码器。

11、Apollo感知:

1)Apollo将ROI过滤器应用于点云和图像数据,以缩小搜索范围并加快感知。

2)然后通过检测网络馈送已过滤的点云,输出用于构建围绕对象的三维边界框。

3)最后使用被称为检测跟踪关联的算法来跨时间步识别单个对象,该算法先保留在每个时间步要跟踪的对象列表,然后在下一个时间步中找到每个对象的最佳匹配。

4)对于交通信号灯的分类,Apollo先使用高精度地图来确定前方是否存在交通信号灯。如果前方有交通信号灯,则高精度地图会返回灯的位置。后续根据位置,摄像头搜索范围,在摄像头捕获到交通信号灯图像后。Apollo使用检测网络对图像中的灯进行定位,然后从较大的图像中提取交通信号灯。将裁剪的交通灯图像提供给分类网络以确定灯颜色,如果有许多灯则系统需要选择哪些灯与其车道相关。

5)Apollo使用 YOLO 网络来检测车道线、动态物体其中包括车辆、卡车、骑自行车的人、行人。在经过YOLO网络检测后,在线检测模块会并入来自其他传感器的数据对车道线预测进行调整,车道线最终被并入名为“虚拟车道”的单一数据结构中。同样也通过其他传感器的数据对YOLO网络所检测到的动态对象进行调整,以获得每个对象的类型、位置、速度、前进方向。虚拟通道和动态对象均被传递到规划与控制模块。

12、传感器比较:Camera适应于分类,交通信号灯分类、车道检测。激光雷达:适用于障碍物检测;

13、感知融合策略:卡尔曼滤波。实际上有两种测量结果更新步骤:同步和异步。同步融合同时更新来自不同传感器的测量结果,而异步融合则逐个更新所收到的传感器测量结果。传感器融合可提高感知性能,因为各传感器相辅相成,融合也可以减少跟踪误差。

1、简介

1.1、无人车需要预测这些物体的行为,这样才能确保做出最佳决策。在环境中为所有其他的物体做出预测,这些共同形成了在一段时间内的预测路径。这些预测路径为无人车在规划阶段做出决策提供了必要信息。

1.2、预测路径:实时性、准确性、预测模块应该有学习新的行为。

2、不同的预测方式

  • 基于模型的预测:构建两个候选模型,观察移动车的运动,看它与那一条轨迹更匹配。

  • 基于数据驱动预测:使用机器学习算法,通过观察结果来训练模型。数据驱动方法的优点是训练数据越多,模型效果越好。

3、基于车道序列的预测

为了建立车道序列,首先将道路分成多个部分,每一部分都覆盖了一个易于描述车辆运动的区域。为了预测,我们更关心车辆如何在这些区域内转换,而不是在某个区域内的具体行为。例如直行汽车的运动可以描述为车道序列是 0-1-3-7。

4、障碍物状态

为了预测物体运动也需要知道障碍物状态(位置、朝向、速度、加速度、其在车道段内物体的位置),预测模块会考虑从物体到车道线段边界的纵向和横向距离,还包含之前时间间隔的状态信息以便做出更准确的预测。

5、预测目标车道

现在所要做的就是选择车辆最有可能采取的车道顺序,可以通过计算每个车道序列的概率来进行选择。随着记录随着时间的增加,模型可以自我迭代更新,精确度不断提升。

6、递归神经网络RNN在目标车道预测的应用

1) 递归神经网络RNN是一种利用时间序列数据特征的一种预测方法。建立像这样的多重结构的递归神经网络称之为 MLP单元,从数据序列中提取出高级特征,每个MLP单元将序列的一个元素作为输入并预测序列的下一个元素作为输出。为了对元素之间的顺序关系建立模型,在每个单元之间建立一个额外的连接,这意味着每个单元根据原始输入和前一个单元的输出进行预测,这 RNN的基本结构。

2)Apollo使用RNN建立一个模型来预测车辆的目标车道,为车道序列提供一个RNN模型,为相关对象状态提供另一个RNN模型。连接这两个RNN的输出并将它们馈送到另一个神经网络,该神经网络会估计每个车道序列的概率,具有最高概率的车道序列是我们预测目标车辆将遵循的序列。

7、轨迹生成

如何预测最有可能的轨迹?可以先通过设置约束条件来去除大部分候选轨迹,首先假定汽车将与目标车道的中心对齐,继续去除车辆无法实际执行的轨迹。通过考虑车辆当前的速度和加速度从剩余的轨迹中进行选择,实际上我们并没有实际列出所有可能的轨迹并逐一去除它们。

APOLLO UDACITY自动驾驶课程笔记——感知、预测相关推荐

  1. 一文掌握百度Apollo Udacity自动驾驶课程笔记

    LZ第一次使用幕布完成了对Apollo课程的课后笔记,欢迎大家观看. 自动驾驶的六大模块:高精地图.定位.感知.预测.规划.控制,本次课程都有涉及.毕竟是入门课程,作为了解自动驾驶机制是很不错的课程. ...

  2. 学习笔记 | Apollo Udacity自动驾驶课程笔记——高精度地图、厘米级定位

    点击上方"AI算法修炼营",选择加星标或"置顶" 标题以下,全是干货 前言:目前 Apollo 内部高精地图主要应用在高精定位.环境感知.决策规划.仿真运行四大 ...

  3. Coursera自动驾驶课程第1讲:Welcome to the self-driving cars specialization

    本专栏为Coursera自动驾驶课程笔记,B站上也有配套课程视频,对自动驾驶技术感兴趣的朋友可以看看. 本讲对应视频: https://www.bilibili.com/video/BV1WE411D ...

  4. Apollo星火计划学习笔记——第一讲 使用Apollo学习自动驾驶

    引言 如何学习自动驾驶? 自动驾驶是集车辆.计算机.电子电气.人工智能.通信等多学科应用为一体的的复杂系统.针对自身专业背景结合自动驾驶发展进行学习: 自动驾驶是通过智能系统来驾驶汽车从而取代了驾驶员 ...

  5. 学习笔记:星火第一讲-使用Apollo 学习自动驾驶

    星火第一讲-使用Apollo 学习自动驾驶 引言 如何学习自动驾驶? 自动驾驶是集车辆.计算机.电子电气.人工智能.通信等多学科应用为一体的的复杂系统.针对自身专业背景结合自动驾驶发展进行学习: 自动 ...

  6. 书评学习笔记《自动驾驶汽车环境感知》

    随笔 我读这本书是希望能对自动驾驶感知有一个框架式的了解. 优点: 专门介绍感知的书很少,这本书填补了这一块空白.做到了对感知有一个全方位的介绍.追求更详细的感觉可以直接看论文. 编排结构合理. 成书 ...

  7. Apollo自动驾驶开发笔记47——apollo编译报错this rule is missing dependency declarations for the following files

    Apollo自动驾驶开发笔记47--apollo编译报错this rule is missing dependency declarations for the following files 报错信 ...

  8. 巨卷时代!如何入门学习自动驾驶中的感知定位融合?

    星球介绍 自动驾驶之心知识星球是国内首个以自动驾驶技术栈为主线的交流学习社区,这是一个前沿技术发布和学习的地方,由上海交大校友创办!主要切入自动驾驶感知(分类.目标检测.语义分割.实例分割.全景分割. ...

  9. Coursera自动驾驶课程第16讲:LIDAR Sensing

    在第15讲<Coursera自动驾驶课程第15讲:GNSS and INS Sensing for Pose Estimation> 我们学习了自动驾驶定位中常用的两种传感器:IMU(惯性 ...

最新文章

  1. c语言指针要点,C语言指针的重点有哪些?
  2. Crash+Kdump 分析内核崩溃内存转储文件之环境搭建
  3. static,extern关键字作用?
  4. python6翻_洗礼灵魂,修炼python(6)--活起来的代码+列表
  5. Android之基于AssetManager实现换肤方案
  6. Oracle的rownum原理和使用
  7. SAP UI5不支持delta render
  8. Api网关Kong集成Consul做服务发现及在Asp.Net Core中的使用
  9. 大数据中心周边辐射大吗_“一部手机读云南”上线 力争建成国家方志大数据中心西南中心...
  10. bzoj1625[Usaco2007 Dec]宝石手镯*
  11. openai-gpt_GPT-3对非技术专业人员意味着什么
  12. PHP经常用到的方法,[PHP]经常用到的实用函数集合第1/2页
  13. Windows Azure Virtual Network (12) 虚拟网络之间点对点连接VNet Peering
  14. Centos Siege测试使用
  15. GC 的背景和一般原理--什么是GC,minor gc,major gc,full gc
  16. 渐进式Express源码学习2-道士下山
  17. 基于动态超图卷积网络的地铁客流预测
  18. php无法访问_php突然不能访问的原因
  19. TCP/IP网络编程:计算器服务器端/客户端
  20. Win10安装cuda和cudnn(可安装多版本并自由切换)

热门文章

  1. 机器学习之sklearn-KNN近邻算法分类小案例(乳腺癌预测最优模型)
  2. 【项目】前端实习——知识库项目总结
  3. Enigma机密码加密解密的实现
  4. 2022-2028全球超声波封管机行业调研及趋势分析报告
  5. 添加打印机时提示:未安装打印机驱动,试图将打印机添加到存储区时遇到问题
  6. 是对计算机系统或其他网络设备进行,计算机信息系统是由计算机及其相关的和配套的设备、设施(含网络)构成的,按照一定的应用目标和规则对信息进行()等处理的人机系统。...
  7. Aggressive cows-疯牛POJ(2456)-详解
  8. google chrome adobe flash player过期解决方法
  9. android 系统源码分析
  10. 控制反转(IOC) 和依赖注入(DI) 的理解