随着自动驾驶技术的发展,仿真测试对于自动驾驶安全落地的重要程度在开发与验证领域越发明显,由ASAM组织起草的OpenDRIVE、OpenSCENARIO、OSI等标准是自动驾驶仿真模拟系统集成、测试评估领域中的重要基石,得到了全球广泛的关注,并逐渐成为各整车厂、供应商以及仿真工具商使用的数据格式统一标准。
近期,由C-ASAM组织、亮道智能翻译的中文版ASAM OpenDRIVE 1.6和OpenSCENARIO1.0标准文件正式上线ASAM官网(https://www.asam.net/)。此次上线的中文版OpenDRIVE和OpenSCENARIO标准文件,是ASAM首次对外发布除英文外的其他语言版本标准,对ASAM和C-ASAM都具有里程碑式的意义。
OpenDRIVE1.6中文全文链接:
https://www.asam.net/standards/detail/opendrive/
OpenSCENARIO 1.0中文全文链接:
https://www.asam.net/standards/detail/openscenario/
(注:请从指定官方渠道下载 禁止擅自发布传播相关ASAM标准。)
本文将为大家带来详细的中文版ASAM OpenSCENARIO 1.0标准解读。
一、中文版OpenSCENARIO 1.0亮点
首次在国际上用中文准确定义部分场景内容,如Action, Trigger等,解决了中文场景语言描述不统一、词汇翻译不够清晰的问题。针对中文词汇表中,超过100个重点词汇内容,覆盖场景,计算机语言,数据描述语言的重点定义。针对同样词汇在不同语境下的合理搭配进行了优化,实现全文及单个词语的完美匹配,为今后中文使用相应词汇给出了对应的建议。
二、OpenSCENARIO 1.0标准解读
Part I:场景组成概念
OpenSCENARIO 数据格式主要描述自动驾驶仿真测试中动态信息。此标准主要试图解决客观场景信息问题。场景主要的要素为,是谁(目标物体),在哪里(与道路或参照物关系),发生了什么(场景的动作描述),持续了多久(场景运行的时间)。这些客观信息的组合,可以有效覆盖所有的测试用例建立,实现高覆盖场景测试,提升场景的价值。在当前阶段,此标准主要关注这些信息的标准化描述方式,为众多企业提供数据交互的机制与基础。
OpenSCENARIO 1.0 每个场景中都包含三个必要组成概念
1. 道路网络RoadNetwork
2. 场景剧本Storyboard
3. 动作Action
除此之外,场景还被赋予了两个附加概念,即4. 目录 (Catalogs) 与5.参数声明 (ParameterDeclaration),目的是允许多个场景重复使用场景元素。
1、道路网络RoadNetwork
道路网络RoadNetwork由实体Entity实例组成,此处的实体指:
这些不同的实体Entity实例通过场景剧本Storyboard中包含的指令进行互动。
2、场景剧本Storyboard
场景剧本Storyboard涵盖了完整的场景描述。场景剧本这个概念的结构和命名与戏剧之类的剧本中的叙事方式有异曲同工之妙。每个Storyboard场景剧本包含一个初始化要素 (Init), 和一个或多个场景内容Story。
场景剧本Storyboard将场景构建为虚拟世界动态内容的剧本:
▲场景剧本的结构展示
▲Storyboard元素结构
3、动作Action
行动者Actor最终采取的动作Action是由条件Condition来触发的,此处的行动者Actor指的是参与动作的实体Entity实例。更通俗的来讲,触发器Trigger会使用条件Condition来启动动作集Act和事件Event,或停止动作集Act和场景剧本Storyboard。因此,条件Condition可被认为是用来定义动态行为和交互的基本模块。
PartⅡ:场景创建示例
此场景适用于靠左行车国家。该场景讲述的是:由外部控制的本车 Ego vehicle (Ego)行驶在城市道路上并驶向一个路口(车辆右侧朝向路口),跟随其后的是 c1 和 c2 两辆会对之产生影响的车辆(两辆车的运动由场景来控制)。第三辆会产生影响的车辆(c3)则在路口等待右转。当本车 Ego vehicle (Ego)接近路口时,c1 和 c2 开始超车。c3 紧接着开始右转,从而迫使 c1 和 c2 进行紧急刹车。下图标识了车辆的初始位置。
示例:车辆的初始位置
1、Init初始段
以下 XML 示例展示了行动 Action 如何利用全局坐标系来定位本车 Ego vehicle (Ego) 。类似的行动 Action(未做展示)则用于说明其他车辆的速度和位置。
init XML代码
2、Stories场景内容
使用两个场景内容Story实例来描述该场景:
描述超车和紧急刹车的Story,命名为AbortedOvertake
包含两个动作集Act:
Ø 控制超车行为AbortedOvertakeAct1
Ø 控制紧急刹车AbortedOvertakeAct2
描述右转的Story,命名为RightTurn
包含单一动作集Act:
Ø 控制右转RightTurnAct
Story XML代码
3、Act动作集
本车Ego vehicle接近路口时触发车辆c3右转动作集Act(RightTurnAct)
Act XML代码
4、Maneuver Groups操作组
每个操作组 ManeuverGroup 分别从目录 Catalog 中给一辆车分配一个操作 Maneuver。该操作 Maneuver 将指挥该车辆变道、加速,继而让该车辆回到原先车道上并行驶在本车 Ego vehicle (Ego) 前面。
ManeuverGroup XML 代码
5、Maneuver操作
操作Maneuver可以被重复引用,因此可通过定义目录操作 Catalog Maneuver生成超车目录Overtake——操作Overtake Ego Vehicle来定义对本车ego vehicle的超车动作。
Maneuver XML 代码
完成目录Catalog及操作Maneuver定义后,可在本例中的车辆c1、c2的操作组中分别引用该操作。
Maneuver2 XML 代码
6、Events事件
此示例中,变道动作 Action 应该在其父级动作集 Act 被触发时立即启动。由于事件 Events 需要将触发器 Trigger 应用到动作 Actions 上,因此将用一个小条件 Condition 来触发立即的执行。
Event XML 代码
综上所述,我们可以应用OpenSCENARIO来构建预期的测试场景。那么如何应用 OpenSCENARIO如何来支持仿真测试呢?如何与静态场景,设计运行域,数据场景标注等配合使用?ASAM OpenX系列标准为自动驾驶仿真测试提供了完整的标准规划。下面让我们来了解一下ASAM OpenX的标准体系。
三、ASAM OpenX仿真标准
为解决智能网联汽车基于场景的仿真测试、实际开发和应用中主机厂、供应商与仿真平台的接口不统一,数据格式种类繁多等问题,ASAM推出了仿真领域的OpenX系列标准,并承诺将其作为一项长期标准以促进未来产业发展,并获得了全球的关注。
ASAM 仿真格式标准整体包括以下七个方面:
▲ ASAM OpenX系列标准体系
ASAM OpenX标准为业界提供了整套的统一接口和数据格式标准,使得仿真开发事半功倍。ASAM官方提供了OpenSCENARIO1.0标准文档和案例,并提供验证工具,用户可使用ASAM提供的API(内测阶段)来验证第三方仿真软件生成的OSC 1.0场景文件是否符合标准规范。
四、加入C-ASAM参与标准制定
中国的驾驶场景极具特色,不仅道路结构、交通标志、交通信号灯等形态各异,人车混流的交通状况也为动态场景增加了许多难度。为了更有针对性地解决与中国特色场景相关的诸多问题,C-ASAM积极参与OpenX系列标准的制定工作。
如果您想更广泛、深入的参与到OpenX系列标准的制修订工作中,推动国内仿真场景格式研究进程,推动我国仿真场景技术与国际前沿接轨,欢迎加入C-ASAM。请与C-ASAM联络员获得联系:王赟芝, wangyunzhi@catarc.ac.cn
▲目前已经加入C-ASAM工作组的成员单位
C-ASAM
C-ASAM工作组是中汽数据联合ASAM共同成立,作为ASAM协会在中国的唯一代表单位,负责统筹管理中国区ASAM成员、举办C-ASAM相关会议和培训,定期向成员更新ASAM标准研究进展、促进国际合作等相关事务。涉及的标准领域有仿真、数据管理与分析、测量自动化、软件开发、测量与校准、诊断、ECU网络七大领域。
亮道智能
亮道智能是一家感知开发和测试验证服务商,核心技术是激光雷达及多传感器融合的应用开发,在中德两地均有研发团队。亮道智能是ASAM和C-ASAM的成员单位,自2019年起参与推动了ASAM OpenX系列标准的制定工作,并承担了官方中文版ASAM OpenSCENARIO与OpenDRIVE标准的翻译工作。
发现前所未见,点亮未来出行。
成为全球激光雷达智能应用领导者。
待人真诚,待物客观,待己坦然。
开放包容,拥抱变化,快速敏捷。
专注创新,持之以恒,坚持做有价值的事情,直至成功。
关注亮道公众号
版权所有 亮道智能 备案号:京ICP备2021014353号-13 京公网安备:11010502050280号