写点什么

L4 自动驾驶中感知系统遇到的挑战及解决方案

  • 2019 年 5 月 17 日
  • 本文字数:2794 字

    阅读完需:约 9 分钟

L4自动驾驶中感知系统遇到的挑战及解决方案

本次分享的大纲


  • Perception Introduction

  • Sensor Setup & Sensor Fusion

  • Perception Onboard System

  • Perception Technical Challenges


1. Perception Introduction

Perception 系统是以多种 sensor 的数据,以及高精度地图的信息作为输入,经过一系列的计算及处理,对自动驾驶车的周围的环境精确感知。能够为下游模块提供丰富的信息,包括障碍物的位置、形状、类别及速度信息,也包括对一些特殊场景的语义理解(包括施工区域,交通信号灯及交通路牌等)。


Perception 系统包括多个方面及子系统:


  1. 传感器:传感器的安装,视场角,探测距离,数据吞吐、标定精度,时间同步。因为用到的传感器比较多,时间同步的解决方案这里会起到非常重要的作用。

  2. 目标检测及分类:为了保证车辆百分百的安全,能够达到近似百分之百的召回率及非常高的准确率;这里会涉及到深度学习方面的工作,包括 3D 点云及 2D Image 上的物体检测及多传感器融合方面等。

  3. 多目标追踪:跟进多帧的信息计算并预测障碍物的运动轨迹。

  4. 场景理解,包括交通信号灯,路牌,施工区域,以及特殊类别,比如校车,警车。

  5. 机器学习分布式训练基础架构及相关的 Evaluation 评价系统。

  6. 数据:大量的标注数据,这里包括 3D 点云数据及 2D 的图片数据等。


目前传感器主要分为 3 个类别:


  1. Lidar 激光雷达;

  2. Camera 相机;

  3. Radar 毫米波雷达。




这张图相当于 Perception 物体检测的输出,能够检测车辆周围的障碍物,包括车辆、行人、自行车等,同时结合高精度地图,会对周边的 Background 信息进行输出。


图中绿颜色的是一辆车,橙色的是一辆摩托车,黄颜色的是一个行人,灰颜色是一些背景如植被信息。



结合多帧的信息,对运动的行人和车辆的速度,方向,进行精确的输出。


2. Sensor Setup & Sensor Fusion

以上是 Perception 系统从输入到输出的一个大概介绍。接下来总体介绍 Pony.ai 第三代车辆的传感器安装方案以及传感器融合的解决方案。


目前我们的整个传感器安装的解决方案,是能够覆盖 360 度,范围 200 米的感知距离。从不同传感器的安装,不同角度来看,首先用到了 3 个激光雷达,顶部和两侧。激光雷达有 100 米的感知距离。同时通过 4 个广角的摄像头来覆盖相机 360 度的视野。远处的视野通过前向的毫米波雷达以及长焦的相机,将感知距离扩到 200 米的范围。这套传感器配置能保证我们的自动驾驶车辆在居民区、商业区、工业区这样的场景进行自动驾驶。



18 年 9 月份世界人工智能大会上推出的第 3 代的传感器配置方案。



前边的相机两个广角,一个长焦。使得可以看到更远距离的信号灯的信息,两百米内红绿灯的状态。


上面介绍了整个传感器的安装方案。下面主要介绍下多传感器融合的解决方案。


第一个要解决的问题是把不同的传感器的数据标定到同一个坐标系里。包括相机的内参标定,Lidar 到相机的外参标定,雷达到 GPS 的外参标定。


传感器融合重要的前提是要能把标定精度提高到非常高的一个精度,不管是做结果层面的传感器融合,还是元数据层面的传感器融合,是一个必要的基础。



这张图可以看到,我们将 3D 的激光点云投射到影像上,可以看到传感器标定的精度还是挺高的。


整个标定的工作基本上已经做到完全自动化的方式。不同传感器标定的方案:



首先是相机内参的标定,内参的标定平台对每一个相机能够在两到三分钟之内做到传感器的标定。



这个图是相机到激光雷达的外参标定,激光雷达是 360 度旋转的方式,每旋转一周是 100 毫秒。相机是某一瞬时曝光的问题,所以涉及到时间同步的一个方式,通过 Lidar 来触发相机曝光。比如说我们有 4 个相机,能够通过激光雷达去保证时间同步。


3D 和 2D 彼此互补,二者更好的融合能够对感知会有更精确的输出。




下面是整个的一个 demo,大家可以看下:


00:00 / 00:00
    1.0x
    • 2.0x
    • 1.5x
    • 1.25x
    • 1.0x
    • 0.5x
    网页全屏
    全屏
    00:00


    Raw Sensor-fused Output


    3. Perception Onboard

    上面大概介绍了整个 perception 的 sensor 的 setup,以及 sensor fusion 做法。接下来介绍车载的 Perception Onboard 的架构是什么样的,以及解决方案是什么。



    这是整个 Perception Onboard 的架构。首先用 LiDAR,Camera,Radar 三种 sensor 数据通过时间同步,所有的时间误差控制在 50 毫秒以内。结合 sensor 的数据,进行 frame wise 的 detection 及 classification 等计算,最后利用多 frame 信息进行多目标跟踪,最后将相关结果输出。这里涉及到 Sensor Fusion, Deep Learning 相关的技术细节,这里不做过多的讨论。


    整个 Perception 系统的解决方案要保证这 5 点:


    1. 首先是安全,保证近乎百分之百的 detection 的 recall

    2. Precision 要求非常高,如果低于某个阈值,造成 False Positive,车辆在自动驾驶状态下会非常不舒适

    3. 尽量输出所有对行车有帮助的信息,包括路牌,交通信号灯及其它场景理解的信息

    4. 保证高效的运行,能够近实时的处理大量的 sensor 的数据

    5. scalability 可扩展性也很重要,deep learning 依赖大量数据,整个模型的泛化能力如何都是非常重要的。能够让我们的 model 和一些新的算法能够去适配更多的城市和更多的国家。


    4. Perception Technical Challenges

    下面分享有挑战性的一些场景:


    第一部分:precision 和 recall 的 balance;


    第二部分:长尾场景。



    这是晚高峰的十字路口的繁忙场景,有大量行人摩托车穿过十字路口。



    通过 3D 点云数据能够看到的对应的原始数据。



    这是目前我们 Perception 的输出,正确的 segmentation 结果和类别。


    00:00 / 00:00
      1.0x
      • 2.0x
      • 1.5x
      • 1.25x
      • 1.0x
      • 0.5x
      网页全屏
      全屏
      00:00


      雨天的问题。自动驾驶系统在一些特殊的或者恶劣的天气条件下,处理是非常难的。


      比如,激光雷达是能打到水花的。图中白色的是对水花的 filter。如果不能对水花进行准确的识别和过滤,会对自动驾驶车辆造成麻烦。这里看到我们目前系统的处理结果,结合 Lidar & Camera 的数据,对水花有很高的识别率。


      长尾的问题



      这个是我们在路测时,遇到的两种洒水车。左边是向上喷的雾炮,右边是向两侧喷的洒水车。人类司机可以很容易超过洒水车,但是对于感知系统来说,需要花很多的时间去处理和识别这类场景和车辆,最后让自动驾驶车辆在遇到类似场景获得更好的体感。


      小物体的检测



      意想不到的事件,路测时比如流浪的小猫小狗的突然出现,我们期望感知系统能够对小物体能够有准确的召回。



      对红绿灯来说会更有挑战。会一直遇到新的场景。因为在不同的城市或国家会遇到各种各样的红绿灯。



      逆光的问题,或者突然从桥洞下边出来相机曝光的问题。通过动态的去调整相机曝光等方式去解决。



      这个也是红绿灯的场景,红绿灯上有倒计时,我们需要识别出倒计时,能够让自动驾驶车辆遇到黄灯时,乘车体验更好。



      雨天摄像头的防水问题,也是处理极端气候条件下所必须具备的。



      红绿灯进进度条的识别,绿等快变黄要减速。


      图中部分图片来自互联网,只用做交流学习,若涉及侵权,请联系 DataFun 删除。


      作者介绍:


      李阳光,Pony.ai Tech lead,中科院计算机研究所硕士,此前就职于百度广告搜索部和自动驾驶事业部,任感知系统工程架构负责人,目前在 Pony.ai 负责自动驾驶感知技术研发。


      本文来自 李阳光 在 DataFun 社区的演讲,由 DataFun 编辑整理。


      2019 年 5 月 17 日 08:005271

      评论

      发布
      暂无评论
      发现更多内容

      Opus从入门到精通(一):简介

      轻口味

      android 音视频 9月日更

      南京主题展2021国际大数据产业展会/论坛会

      南京专业智博会

      大数据 智博会 南京智博会

      乘风破浪携手共赢——博睿数据深圳渠道大会圆满落幕

      博睿数据

      交Y所K线机器人系统开发功能介绍(源码搭建)

      量化系统19942438797

      机器人 k线

      Apache APISIX 为 KubeSphere 提供更好用的网关及 K8S Ingress Controller

      Apache APISIX 中国社区

      Apache 开源 API网关 APISIX KubeSphere

      JavaScript 进阶(二)下

      Augus

      JavaScript 9月日更

      中原银行分布式缓存实践

      中原银行

      redis 中间件 分布式缓存 中原银行

      云智一体破解AI落地“最后一公里”难题,企业智能化转型再获新利器

      百度大脑

      人工智能

      《中国梦》打造数亿中产阶级!疯了,疯了,全涨疯了!!

      CECBC

      直播预告丨走进云溪数据库之高可用方案

      浪潮云

      云计算

      Android的Ftp断点上传---Aria使用笔记

      Changing Lin

      9月日更

      如何搭建一台永久运行的个人服务器?试试这个黑科技!

      不想秃头

      Java 程序员

      Vite + Vue3 + OpenLayers 手动控制缩放级别

      德育处主任

      大前端 地图 vite openlayers Vue 3

      (AL智博会)2021南京国际人工智能主题展

      南京专业智博会

      人工智能展览会 人工智能论坛会 人工智能智博会

      物联世界2021南京物联网展览会

      南京专业智博会

      物联网展览会 物联网论坛会 物联网智博会

      面试讲不清MySQL索引底层,Java面试

      Java 程序员 后端

      学生管理系统整理架构设计

      小智

      架构训练营

      研发工具链介绍

      百度开发者中心

      学习 最佳实践 方法论 研发工具

      2021南京国际智慧工地装备展览会

      南京专业智博会

      智博会 智慧工地展览会 智慧工地论坛会

      CSS交互动画指南之keyframes

      devpoint

      CSS css3 9月日更

      Alibaba船新制作“Java架构核心宝典”,全是流行技术,限时开放

      Java 程序员 架构 面试 计算机

      【Vuex 源码学习】第四篇 - Vuex 中 Getters 的实现

      Brave

      源码 vuex 9月日更

      阿里大佬怒写“Java初学者宝典”,让你就业没压力

      Java 阿里巴巴 程序员 面试 计算机

      雪花算法,什么情况下发生 ID 冲突?

      Java 架构 分布式 算法

      联邦学习框架浅析

      趣链科技

      架构实战营 - 模块三作业

      Alex.Wu

      架构实战营 - 模块三作业

      Geek_de900a

      区块链“牵手”金融 面临诸多挑战

      CECBC

      2021年第十四届南京智慧城市展览会

      南京专业智博会

      智博会 智慧城市展览会 智慧城市论坛会

      模块三作业:学生管理系统架构设计文档

      apple

      不会 Lua?Python 助你快速上手 Apache APISIX 插件开发

      Apache APISIX 中国社区

      Python Apache 开源 API网关 APISIX

      L4自动驾驶中感知系统遇到的挑战及解决方案_AI_DataFunTalk_InfoQ精选文章