当前位置: 华文星空 > 汽车

Pegasus Project(3):智能驾驶实车数据处理系统

2023-03-01汽车

转载自作者:我是路头

链接:Pegasus Project(3):智能驾驶实车数据处理系统-知乎 (zhihu.com)

来源:知乎

著作权归作者所有。商业转载请联系作者进行授权,非商业转载请注明出处。

Pegasus项目整体材料可以分成10个课题(按照自己的理解进行分割的)左右和大家分享,由于计划中的前两个课题已经和伙伴们分享过,今天开始从第3个课题:实车数据相关内容和大家一起分享。

一. Pegasus 体系

图1. Pegasus架构图

Pegasus项目是基于场景实现智能驾驶的典范。

其主要解决的核心问题为: 1. 智能驾驶的功能如何设计? 2. 智能驾驶的功能如何验证?

为解决以上两个问题,Pegasus从产品设计到工具链,生成了完整的Demo。整个项目可以被分成四个部分(此处没有引用原图,详见 [1] ):

  • Data Processing (数据处理)
  • Database(数据库)
  • Requirement Definition (需求定义)
  • Assessment of Highly Automated Driving Function (高级自动驾驶功能验证)
  • 结合以上Pegasus的整个实现链路中的四部分,在本文中将其总结为如 图1.Pegasus架构图

  • Source of Information (信息来源) :这一部分主要介绍实现智能驾驶需要采集的数据和收集的知识。其中数据可以来自NDS(自然驾驶测试),仿真测试,交通事故数据库等。 知识则代表了现行的法律法规,以及专家知识,例如RSS(责任敏感度模型) [2]
  • Data Processing (数据分析) :这部分是生成数据库的核心部分,对上一步搜集的知识和数据进行基础分析,从而生成结构化的,智驾功能开发需要的数据。 例如数据预处理,场景提取,指标提取等。
  • Data Storage & Data Model (数据存储与模型) :数据的标准协议,存储格式,存储内容的管理层
  • Verification & Validation (验证) :智能驾驶功能能的验证模型。
  • 本文中 图1. 中模型的下半部分主要回答第一个问题——智能驾驶如何设计。模型最上部分解决第二个问题——智能驾驶如何验证。

    二. Pegasus 中数据系统(不包含知识系统)

    图2. Pegasus中的数据系统

    图2.Pegasus的数据系统 展示了Pegasus四个阶段中的数据流程。整体数据系统建立的主要目的是:

    1. 标准化采集和信号定义
    2. 标准化不同数据源信息的数据分析流程
    3. 标准化存储
    4. 参数化场景的泛化,系统数据模型
    5. 标准化场景泛化产生的场景格式

    数据种类主要被分为 [3]

    1. Derived Vehicle Data: CAN,GPS,PIs,video and Annotations,PointCloud and Annotations
    2. Subjective Data: questionaires,simulator studies,interviewers
    3. External Data: weather,map,infrastructure,other traffic participant...
    4. Open Data: Aggregated Data

    本文今天主要围绕红线框中内容讲解,即主要回答智能驾驶如何设计来进行讨论。从原始数据到 逻辑场景和参数空间 (即L1-L4ODD J3016 2021版)可以大致的分成三个阶段:

    1. 数据采集 : 主要由仿真测试,场地测试和道路测试作为数据主要来源;
    2. 数据处理 :数据预处理,场景提取,场景聚类,参数提取等主要过程;
    3. 数据存储 :数据模型和存储共享方案;

    三. 数据采集

    图3. 原始数据来源

    数据来源主要有场地测试,道路测试和仿真测试三种( 图3. 原始数据来源 )。在智能驾驶设计中,不同的测试也提供了不同场景描述侧重点,见 表1. Pegasus中的数据来源及说明 。值得一提的是,Pegasus的采集设计中同样使用了无人机的使用。并且在实车测试(FOT 见 [4] )中考量了不同传感器配置以及智能驾驶功能是否装配。而交通事故的采集则是为了寻找到智能驾驶的参数设计边界。

    表1 Pegasus中的数据来源及说明

    实车数据采集是通过安装一套专业的硬件采集设备,将车辆总线以及搭载的传感器和后装设备中的数据流存储的过程。这个数据采集过程通常是连续的,但由于车载设备的存储限制,也可以通过车端搭载的算法将重要的场景数据进行保存或者通过通讯设备上传至「云」中以便后续继续分析。这种车端的存储和上传由于安全性和存储压缩问题,是需要以特定的协议进行存储的,例如:车载总线的CAN协议,Some/IP等。但为了在整条工具链上的灵活性,这些密文必须是可解析的。

    四. 数据分析

    图4. 数据分析过程

    本文主要集中在实车采集(包含道路及场地)的数据进行分析,如 图4. 数据分析过程 所示。途中步骤不固定,按照不同厂商以及场景略有区别。本章节将分成两小节进行讲解。数据预处理和数据后处理。

    1. 数据预处理

    1. 数据脱敏 : 车主信息脱敏,交通参与者脱敏等,在必要时需要对传感器级数据进行脱敏。数据脱敏和上传的步骤安排根据不同的应用场景, 图4. 中的顺序并不固定。
    2. 数据上传 :5G上传或者硬盘上传,参考数据量。
    3. 数据解析 :主要根据数据采集协议以及字典进行解析,比如L3Pilot 定义的CDF(Common Data Format)中对本车,定位,感知障碍物,感知车道线,外部信息(天气等)以及元数据(驾驶员类型,车辆外形)进行了定义。
    4. 数据模型转换 :对解析后的数据进行建模,以便存储至数据库中。
    5. 数据质检 :此步既需在车端采集时做,也需要上传后在数据预处理部分做。因为数据的错误或者不完整会在后续数据应用阶段造成重大的不便。比如,传感器标定数据误差,数据同步误差,传感器/通信故障等。在完整的智能驾驶数据处理工具链中,此步可以建立数据质检规则引擎,通过对故障数据的理解,析出模型,对数据进行自动化处理。

    2. 数据后处理

    第二个主要的步骤是数据后处理和丰富过程,此阶段的主要目的是用于析出逻辑场景以及其参数空间。这个阶段的主要步骤如 图5. 数据后处理步骤

    图5. 数据后处理
    1. 高阶参数生成(Derived Measures) :这个步骤主要完成对一些采集可直接获取的信号进行推导,生成新的高阶信号的过程。比如TTC,Time Headway,traffic density等。
    2. 场景提取(Scenario Detection and Annotation) : 此步骤主要包含场景提取和标注两个主要的方法。场景提取表示通过分析智能驾驶采集数据中的信号来识别驾驶过程中的一些「连续动作」。例如一个车辆切入场景( 图6. 切入场景 )可以用 公式1 对信号进行分析从而提取场景。 对于传感器原始数据如视频,点云的标注也是数据后处理中的一个非常重要的步骤,通过可视化分析工具,对于一些场景,比如驾驶员行为,交互,面部表情进行标注从而进行场景提取。 当然,目前关于场景提取部分也不止以上两种方法。
    图6. 切入场景

    d/dt(LeadVehicleID) ~= 0 & NewLeadVehicleDistance < ExclusionDistance & NewLeadVehicleVelocity < SpeedThreshold & NewLeadVehicleOrigin == {LeftLane, RightLane} 公式 1

    3. 参数指标生成(Perfomance Indicator): PI描述相关信号,场景,事件的统计值。此时不在针对一个场景,而是某一类场景的一个参数空间边界。PI包括:行程中切入场景的频率,平均车头时距,最大TTC等。PI也可以从知识中或者Accident数据中获得,从而用于边界确定。

    此处隐含了一个步骤为场景聚类。DM 和PI共同组成了聚类后的场景参数空间,这些具有一定相似性(此处描述不严谨,后续会再跟新一些内容)的聚类的场景即逻辑场景,Logical Scenarios。

    五.数据存储

    基于现在的云原生技术,生成的逻辑场景和参数空间以一定的规范和模型被保存在「云端」,通过数据共享Frame,OEM、供应商、试验场、验证单位可以对集合后的数据有统一的认识和管理。 结构化的场景可以按照文件模型以OpenDRIVE,OpenSCENARIO 或者UML模型 ASAM OSI 等各类规范的数据模型进行存储。 图7.6层场景模型 在Pegasus中用于对场景的结构化,作为数据模型的一种。

    图7. 6层场景模型

    六.总结

    在Pegasus长达3年半的研究中,整车厂、测试验证中心、供应商们共同实现了L3等级的智能驾驶功能,同样验证了方法论,实现了以场景和数据为基础的上云工具链。本文重在普及,细节描述的很不到位。 有些部分为个人理解。多数参考了Pegasus中的一些文档。

    本人在后续会在工作中继续实践此项目中的理论。欢迎大家共同讨论。 如本文有问题,请各位提点。谢谢!

    参考

    1. ^ Daniel Lipinski,(2019), Introduction and Overview of 3.5 Years of PEGASUS
    2. ^ Shalev-Shwartz, S., Shammah, S., & Shashua, A. (2017). On a formal model of safe and scalable self-driving cars.arXiv preprint arXiv:1708.06374.
    3. ^ Hiller, J., Koskinen, S., Berta, R., Osman, N., Nagy, B., Bellotti, F., ... & De Gloria, A. (2020). The L3Pilot data management toolchain for a level 3 vehicle automation pilot.Electronics,9(5), 809.
    4. ^ Burzio, G.; Mussino, G.; Tadei, R.; Perboli, G.; Dell’Amico, M.; Guidotti, L. A subjective field test on lane departure warning function in the framework of the euro FOT project. In Proceedings of the 2009 2nd Conference on Human System Interactions, Catania, Italy, 21–23 May 2009; pp. 608–610.