自动驾驶笔记

23. 总结

现在 我们已经明白 为什么需要定位;
以及 几种定位的方法;
和 Apollo 的定位框架。

22. 项目

看别人锻炼不能使自己减重!
自己需要动手编程,实现一些想法。

21. (3-37-9)Apollo 定位

Apollo 使用基于 GPS、IMU、激光雷达的多传感器 融合定位系统,
这种 融合方法 利用了不同传感器的互补优势;

Apollo 定位模块 依赖于 IMU、GPS、激光雷达、雷达、高精度地图。
这些传感器 同时支持 GNSS定位 和 激光雷达定位;

GNSS定位
输出位置、速度信息,
激光雷达定位
输出位置、前进方向信息


视觉定位 的优点:图像很好获取;
缺点:缺乏三维信息,和对三维信息的依赖

19. (3-35-7)激光雷达定位

点云匹配
利用激光雷达,我们可以 通过点云匹配来对汽车进行定位;
该方法 将来自激光雷达传感器的检测数据,与预先存在的高精度地图 进行连续匹配;
通过 这种方法,可以获知在高精度地图上的位置和行驶方向。

许多算法 可以用于匹配点云
迭代最近点(ICP:Iterative Closest Point )是一种方法,
假设我们想对两次点云扫描进行匹配,
对于第一次扫描中的每个点,我们需要找到另一次扫描中 最接近的匹配点。
最终 我们会收集到许多匹配点对。
把每对点之间的距离误差相加, 然后计算平均值,
我们的目标是 通过点云旋转、平移,来尽可能降低 平均距离误差。
一旦达到了目标,就可以在传感器扫描和地图之间找到匹配。

我们 把传感器扫描到的位置 转换为 全球地图上的位置,并计算出在地图上的精确位置。


滤波算法 – 另一种激光雷达定位算法
滤波算法可以消除冗余信息,并在地图上找到最可能的车辆位置;
Apollo使用了 直方图滤波算法(或称为 误差平方和算法SSD Sum of Square Difference)
具体方法:
我们 将传感器扫描得到的点云 滑过地图上的每个位置,对于每个点 和地图上的对应点之间的误差或距离,然后平方求和。
求得结果越小,匹配越好。


GPS接收器 并不是直接测量 卫星和我们之间的距离,
而是 测量信 飞行的时间(即,信 从卫星传播到GPS接收器所需的时间),
然后,乘以光速 计算出距离。

通过RTK的帮助,GPS可以将自己的定位误差,限制在10厘米以内;
但GPS仍然受限于环境,且GPS的更新频率低(每秒更新10次,即更新频率10赫兹)


想象在地球表面,三个维度的定位(三维定位)
我们将使用到 卫星,它可以传送它与我们之间的距离,
那么,需要几颗卫星可以确定自己的位置呢p>


15. (3-29-1)定位

假设有一张 全球高精度地图,
定位任务 就是 确定我的无人车 在这张高精度地图上的位置;(无人驾驶车 迷路了!!/p>

GPS 的精度 在1-3米,对于 无人驾驶车 来说太不准确了。
(在有些情况下,如被高楼、山脉环绕,或处于峡谷,精度更差,10-50米)

因为 无法完全相信GPS,我们需要 找到一种方法
更准确地 确定车辆在地图上的位置。

最常用的做法是:
将 汽车传感器看到的内容 和 地图上显示的内容比较
车辆将 传感器识别的地标 与 高精度地图上存在的地标 做对比,
为了进行该对比,数据 需要在 车辆坐标系 和 地图坐标系之间转换;
然后,系统在地图上以10厘米的精度确定 车辆的位置。


具体实现:
传感器 可以测量车辆与静态障碍物之间的距离,(树木、电线杆、路标等);
这些距离 是在 车辆坐标系中的投影(或者 距离和方向),进而得到 地标的传感器观测坐标值;
在高精度地图上,也可以找到该地标的 坐标;
将 这两个坐标值 进行匹配,
估计出车辆在地图上的位置;


在构建和更新 地图的过程中 Apollo采用了众包。

众包:Crowdsourcing,
a modern business term coined in 2006, is defined by Merriam-Webster as the process of obtaining needed services, ideas, or content by soliciting contributions from a large group of people, and especially from an online community。

  • 帮助 车辆找到合适的行车空间(道路的中线);
  • 帮助 规划器确定出不同的路线选择;
  • 帮助 预测软件 预测道路上其他车辆将来的位置li>

可以帮助 缩小可选择的范围。

11. (2-24-5) 地图 与 感知

正如 人的眼睛和耳朵有距离的限制一样,
传感器 也是如此。

距离–长距离过后会受到限制
恶劣天气条件、或夜间–识别能力进一步受限;
遇到障碍物时,无法确定其后的情况;

因此,高精度地图有利于感知

  • 即使没有检测到红绿灯,可以预先给出其位置;
  • 缩小检测的范围,这个范围被叫做感兴趣区域(Range Of Interest, ROI)–有助于提高准确度和速度,节约计算资源。

10. (2-23-4)地图 与 定位

高精度地图 是Apollo无人驾驶车平台 的核心;
因为 许多其他无人驾驶车模块 都有赖于高精度地图。

有了高精度地图,我们(无人驾驶车辆)要做的就是在 地图上进行自定位
(即,我们在地图上的什么位置)

  • 首先,车辆可能寻找 地标
    使用从各类传感器收集到的数据寻找 地标
    例如摄像机的图像、LiDAR的三维点云数据,–这个过程需要一些预处理(消除质量差、不准确的数据)、坐标变换(统一视角)和数据融合(融合不同车辆、不同传感器的数据);
  • 然后将找到的地标 与 已知的地标进行匹配

    一旦无人驾驶车 高精度知道了它的位置,定位的任务就完成了。
    整个 定位过程 依赖于地图,定位结果的精度也依赖于地图,这就是为什么需要 高精度的地图。

可以将 定位与拼图进行比较

运行时框架(Runtime Framework)

  • 是 Apollo的操作环境(the operating environment of Apollo),
  • 3. Apollo架构(1-14-6)

    百度最初是一家中国的互联 搜索引擎公司,现在转变为一家人工智能公司,在全球各地设有办事处。
    百度的宗旨是通过技术让复杂的世界变得简单。
    The Apollo Vehicle System是百度最重要的开源贡献之一。


    我们开放了无人驾驶功能,让全世界的工程师都可以在Apollo上打造自己的无人驾驶车。
    Apollo提供世界领先的高精度地图服务、和开源无人驾驶模拟引擎
    与Closed Vehicle Systems相比,Apollo的发展速度更快,为参与者带来的收益更大。
    我们的开源框架是学术界、行业研究人员和制造工程师共同努力的成果。
    Apollo技术框架由四个层面组成:
    参考车辆平台(Reference Vehicle Platform);
    参考硬件平台(Reference Hardware Platform);
    开源软件平台(Open Software Platform);
    云服务平台(Clouds Service Platform);
    在接下来的学习中,了解这些方面,并将其整合打造端到端无人驾驶车辆。

    2. 五大核心部分

    2017年,百度发布了名为Apollo的开源无人驾驶项目,该项目帮助合作伙伴整合自有车辆和硬件系统 以构建完整的无人驾驶系统。


    途胜未来br> SLAMbr> 路径规划p>

    声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2018年7月9日
下一篇 2018年7月9日

相关推荐