学习心得:Apollo无人驾驶汽车入门课程——第四课:感知

目录

    • C1:感知简介
    • C2:Sebastian Thrun介绍感知
    • C3:计算机视觉
    • C4:摄像头图像
    • C5:激光雷达图像
    • C6:机器学习
    • C7:神经网络
    • C8:反向传播算法
    • C9:卷积神经网络CNN
    • C10:检测与分类
    • C11:跟踪
    • C12:分割
    • C13:Apollo感知
    • C14:传感器数据比较
    • C15:感知融合策略
    • C16:项目示例:感知与融合

C1:感知简介

  1. 类比:人类驾驶员的眼睛——静态摄像头+其他传感器
  2. 技术支持:计算机视觉
    卷积神经网络CNN

C2:Sebastian Thrun介绍感知

感知即使用海量的感知数据,模拟人脑的感知过程

C3:计算机视觉

  1. 四个感知核心任务
    a. 检测:找出物体在环境中位置
    b.分类:明确对象是什么
    c. 跟踪:随时间的推移观察移动物体
    d. 语义分割:将图像中的每个像素与语义信息进行匹配
  2. 分类器的步骤
    a. 接受摄像头图像输入
    b. 预处理:如调整图像大小、旋转、调整从全彩到灰度
    c. 特征:有助于计算机理解图像
    d. 分类模型:接受上述步骤的输入,使用特征选择图像类别

C4:摄像头图像

  1. 对于计算机来说,图片只是图像矩阵、数字网格
  2. 图像处理
    分为RGB三个部分(分为三层)
    三层合并则为一张完整的图片

C5:激光雷达图像

  1. 测量原理
    激光雷达发出激光,碰到的障碍物进行反射,传感器根据反射时间,构建世界的视觉表征
  2. 雷达图中的每个点,对其进行聚类和分析,这些数据提供了足够的对象检测信息

C6:机器学习

  1. 定义:使用特殊算法训练计算机从数据中学习
  2. 机器学习主要涉及:如何使用数据和相关的真值标记来进行模型训练
  3. 机器学习类型
    a. 监督式学习Supervised Learning
    b. 无监督式学习Unsupervised Learning
    c. 半监督式学习Half-supervised Learning
    d. 强化学习:使用多种方法,并衡量哪种方法最成功

C7:神经网络

  1. 启发:生物神经元
  2. 人工神经元
    可以进行传递、处理信息
    同样也可以训练这些人工神经元
  3. 人工神经元提取特征
    人工神经元将对一个物体提取特征并设置权重,用于标识一个物体

C8:反向传播算法

步骤.

  1. 前馈部分:随机分配权重,即每个神经元的值,再通过神经网络来馈送每个图像,产生输出值
  2. 误差测定部分:真值标记与前馈输出值之间的误差
  3. 反向传播部分:类似于前馈部分,方向相反;并且神经元传递的值需要根据所测定的误差进行微调
  4. 并重复上述周期,甚至几千次

C9:卷积神经网络CNN

  1. 接受多维输入,包括定义大多数传感器接受的二维、三维数据
  2. 算法内容
    a. 需要将图像分布到一维,重塑为一个矢量
    b. 尽管可能会打乱一个整体,将其变为分散的像素点,但是CNN会维持像素之间的空间关系,从而解决这个问题

C10:检测与分类

  1. 举例
    a. 识别动态障碍物:当识别到前方有一辆正在驾驶的车,那么便是一个动态障碍物,无人驾驶车就可能会选择保持当前速度与车道
    b. 识别信号灯:当识别到前方有信号灯,传感器辨别信号灯的颜色,进而对相应颜色的信号灯做出相应动作
  2. 使用什么算法检测与分类?CNN
    a. 一种思路:一个CNN作为检测算法,另一个CNN作为分类算法
    b. 另一种思路:使用一个CNN同时作为检测与分类算法
    i) 如何实现?在单个网络体系结构的末端设置多个不同的“头”,一个“头”用于检测,另一个“头”用于分类
    ii)典例:R-CNN、Fast R-CNN、Faster R-CNN

C11:跟踪

  1. 意义
    对每个对象进行检测、分类后,追踪对检测失败是非常有效的,例如解决遮挡问题;并且追踪可以保留身份。
  2. 步骤:
    a. 确认身份:通过查找特征相似度最高的对象确认身份
    b. 使用对象的位置并结合预测算法,估计下一个时间点的速度和位置,这样可以帮助我们识别下一帧的相应对象

C12:分割

  1. 基于特殊的CNN——全卷积网络FCN
    网络中的每一层都是卷积层
    提供了原始输入图像之上叠加的逐像素输出
  2. 需要考虑分割之后的图像大小问题
    必须要最终输出大小与原始图像大小相同
    因此使用上采样处理
  3. FCN组成
    a. 编码器
    b. 解码器

C13:Apollo感知

图像处理过程

  1. YOLO处理:进行车道检测+动态对象检测
  2. 雷达数据与动态对象检测结合,进行调整,获得车辆基本数据

C14:传感器数据比较

学习心得:Apollo无人驾驶汽车入门课程——第四课:感知_第1张图片

C15:感知融合策略

  1. 融合输出的主要算法:卡尔曼滤波算法
    步骤:
    a. 预测状态(如行人的速度预测)
    b. 更新测量结果状态(将实时传感器数据更新)
    c. 卡尔曼滤波算法是上述两个状态的无限循环
  2. 融合方式
    同步融合:同时更新不同传感器的测量结果
    异步融合:逐个更新不同传感器的测量结果

C16:项目示例:感知与融合

  1. 重难点:高性能地实现计算机视觉功能

你可能感兴趣的:(自动驾驶)