首页 > 其他分享 >康谋分享 | 直面AD/ADAS快速开发挑战:IVEX自动驾驶场景管理及分析平台!

康谋分享 | 直面AD/ADAS快速开发挑战:IVEX自动驾驶场景管理及分析平台!

时间:2024-09-25 09:53:58浏览次数:9  
标签:场景 AD ADAS 康谋 视图 事件 IVEX

过去十年,自动驾驶和高级驾驶辅助系统 (AD/ADAS) 软件和硬件的开发成为了各大汽车公司的主要投资目标之一。各大汽车公司对 AD/ADAS 持续不断的投资加快了 AD/ADAS 组件的开发周期,但也揭示了目前需要解决的重大挑战——如何快速了解开发 AD/ADAS 组件中的车辆行为,以便进行改进!

一、方案背景

由于 AD/ADAS 的运行环境很复杂,从仿真到真实驾驶,任何 AD/ADAS 组件的每次更改都需要根据大量场景进行验证。然而,场景数量庞大且每天都在增长,传统的机器人开发支持工具(如 RVIZ)无法满足我们的需求。例如,RVIZ只允许我们实时检查车辆的行为,很难快速跳转到任何特定事件。

为此,康谋推出IVEX自动驾驶场景管理及分析平台来克服这一难题。IVEX是一个基于云的平台,包含许多功能来支持 AD/ADAS 的验证和开发。

下文康谋将为您分享在AD/ADAS开发中使用IVEX的经验。

二、康谋方案——IVEX自动驾驶场景管理及分析平台

康谋分享 | 直面AD/ADAS快速开发挑战:IVEX自动驾驶场景管理及分析平台!_AD

图1 IVEX页面

1、数据输入

我们通过将原始数据转换为所需的格式,然后将转换后的数据上传到基于云的服务器来与安全分析平台进行交互。平台的输入数据以 Protobuf 消息格式定义,包括执行期间有关环境和AD/ADAS 行为的信息,例如:

a.自车状态变量,例如位姿、速度、加速度和转向角;

b. 自我车辆规划轨迹;

c.障碍物信息,如位姿、边界框、速度和类型;

d.上下文图像;

e.标记事件,其中每个事件由一个标签和相应的时间戳组成;

2、场景执行结果

(1)格式

IVEX清晰且定义良好的输入格式有助于无缝处理不同的数据格式。由于场景来自不同的来源,因此场景执行结果具有不同的格式,例如 Autoware ROS2 Bags、Apollo Cyber Records、Carla Simulator 日志格式和其他商业模拟器日志格式。

对于每种数据格式,我们都有一个适配器(通常只是一个 Python 脚本),用于将数据转换为安全分析的 Protobuf 输入格式。Protobuf 是大多数工程师都熟悉的格式。通常只需几个小时即可开发一个适配器,将新的数据格式转换为安全分析的 Protobuf 输入格式。

(2)上传

康谋分享 | 直面AD/ADAS快速开发挑战:IVEX自动驾驶场景管理及分析平台!_自动驾驶_02

图2 将数据上传到IVEX的命令行界面

通过命令行界面将场景执行结果上传到IVEX 平台。数据转换和数据上传都集成到 CI/CD 流程中。同时每位工程师都可以执行任何特定场景并将结果上传到 IVEX 平台。这种灵活性使我们能够快速试验AD/ADAS开发中的每项更改。

(3)检查

在 IVEX 的 Web 界面上检查场景执行结果。我们可以根据不同的元数据(例如执行日期、软件版本或场景名称)搜索、过滤和选择相关场景。

康谋分享 | 直面AD/ADAS快速开发挑战:IVEX自动驾驶场景管理及分析平台!_AD_03

图3 IVEX的搜索功能示例

a.快速概览

由于场景验证通常是大量的,因此快速概览结果十分重要。使用 IVEX 的聚合视图可以实现快速概览。在筛选和选择感兴趣的场景后,可以访问聚合视图,该视图可快速提供有关所有标记事件的信息,这些事件按不同的操作设计域进行分类。标记的事件可以包含在要上传到 IVEX 的输入数据中,从而能够标记与验证任务相关的任何类型的事件。IVEX 还会自动标记几个标准事件,例如紧急刹车、关键碰撞时间等。

例如,当在IVEX中开发一项新功能并想要比较自主车辆以不同速度行驶时的结果时,启用聚合视图来显示按不同速度范围分类的信息,如下图所示。

康谋分享 | 直面AD/ADAS快速开发挑战:IVEX自动驾驶场景管理及分析平台!_自动驾驶_04

图4 IVEX的聚合视图

b.快速导航

除了概览场景执行结果中发生的事件之外,我们还需要能够快速导航到特定事件以检查车辆的行为。从聚合视图可以直接跳转到任何感兴趣的事件。

例如,如果想检查当自车行驶速度超过 30 公里/小时时发生的紧急刹车事件,可以点击与该事件和速度相对应的框。事件的分布和特定时间戳的列表与上下文图像一起显示。点击任何一张卡片都会来到数据日志视图,该视图提供在特定时间戳发生的详细信息。

康谋分享 | 直面AD/ADAS快速开发挑战:IVEX自动驾驶场景管理及分析平台!_数据分析_05

图5 聚合视图中事件选择示例

康谋分享 | 直面AD/ADAS快速开发挑战:IVEX自动驾驶场景管理及分析平台!_数据分析_06

图6 在数据日志视图中检查急刹车事件

在数据日志视图中,可以详细检查事件。该视图具有详细的可视化功能,可显示当时的所有信息,包括自车的状态、地图、障碍物及其相关信息,例如速度、类型和与自车的距离。我们还可以从场景列表直接跳转到数据日志视图。

康谋分享 | 直面AD/ADAS快速开发挑战:IVEX自动驾驶场景管理及分析平台!_数据分析_07

图7 数据日志视图的可视化

数据日志视图还帮助我们重播并查看场景中发生的情况。只需点击几下,我们就可以在每个时间戳之间来回切换。我们还可以看到所有标记的事件并导航到其中任何一个。使用此视图,可以快速评估和了解任何情况。

康谋分享 | 直面AD/ADAS快速开发挑战:IVEX自动驾驶场景管理及分析平台!_仿真_08

图8 跨时间观察障碍物

康谋分享 | 直面AD/ADAS快速开发挑战:IVEX自动驾驶场景管理及分析平台!_数据分析_09

图9 快速导航至特定事件或时间戳

c. 团队共享

一旦发现需要进一步检查的事件,我们就可以与其他同事分享完全相同的视图,然后同事就可以随时检查该事件。在团队工作时,共享此类信息可以大大促进我们的沟通,并帮助我们专注于正确的方向。

三、结论

IVEX大大推动了AD/ADAS的开发工作:

a.轻松集成驾驶数据到平台

b.快速了解车辆行为

c.快速导航感兴趣事件

d.访问所有有价值的可视化信息了解情况

e.团队共享信息


我是分享自动驾驶技术的康谋,关注我,了解更多信息!

标签:场景,AD,ADAS,康谋,视图,事件,IVEX
From: https://blog.51cto.com/u_16504314/12107218

相关文章

  • Multi-threading - Token Bucket Emulation in C
    Multi-threading-TokenBucketEmulationinCYouwillemulate/simulateatrafficshaperthattransmits/servicespacketscontrolledbyatokenbucketfilterdepictedbelowusingmulti-threadingwithinasingleprocess.Ifyouarenotamiliarwithpthrea......
  • Android studio 新建项目gradle依赖下载超时
    版本信息:android-studio-2024.1.2.12gradle-8.7&使用groovy配置项目配置:修改settings.gradle文件,将阿里云镜像仓库添加到google{}和mavenCentral()上方,不要随意改变仓库位置,仓库列出顺序决定 Gradle在这些仓库中搜索各个项目依赖项的顺序。pluginManagement{......
  • 解决荣耀手机使用adb报错“no devices/emulators found”
    一、下载安装suite荣耀手机助理 二、手机不要连接电脑,打开手机助理,选择常规设置菜单,取消勾选[设备连接时自动启动] 三、关闭手机助理,后续不再使用(安装手机助理仅是为了电脑安装正确的手机驱动)四、进入手机『开发人员选项』,打开『USB调试』和『“仅充电”模式下允许A......
  • 【信息安全数学基础】二次剩余(Quadratic residue)
    什么是二次剩余呢?小小定义设m是大于1的整数,a是与m互素的整数,若x2≡a......
  • 论文研读——《RF-Diffusion: Radio Signal Generation via Time-Frequency Diffusion
    本文的是有关无线电信号生成的一篇文章。目录论文简介名词补充现有RF数据生成模型论文贡献RF-Diffusion时频扩散时频扩散——正向销毁过程时频扩散——正向销毁过程时频扩散——逆向恢复过程  时频扩散——条件生成分层扩散Transformer分层扩散Transformer——......
  • JavaEE——多线程Thread 类及常见方法
    目录 一、Thread(Stringname)二、是否后台线程isDeamon()三、是否存活isAlive()四、run()方法和start()方法的区别五、中断线程法一:法二:六、线程等待join()七、线程休眠sleep()一、Thread(Stringname)定义:这个东西是给线程(thread对象)起一个名字。起一个......
  • [Paper Reading] CAPE: Camera View Position Embedding for Multi-View 3D Object De
    目录名称TL;DRMethodKeyPositionEmbeddingConstructionQueryPositionEmbeddingConstructionKey/QueryPositionEmbedding两者结合关系参考下图temporalmodelingExperiment总结与发散相关链接资料查询名称link时间:23.03机构:Baidu/华科TL;DR提出CAPE(CAmeraviewPosi......
  • kubeadm 更换证书
    在Kubernetes集群中,由kubeadm生成的证书默认有效期为1年。如果证书到期,需要进行续订或者更换。以下是更换kubeadmin证书的步骤:检查证书到期时间:使用以下命令来检查证书何时过期:shellkubeadmcertscheck-expiration这将显示所有证书的到期时间和剩余时间。......
  • 存算分离+双集群容灾丨云和恩墨与华为共同发布 MogDB × OceanStor Dorado 联合解决方
    引言为期三天的第九届华为全联接大会(HUAWEICONNECT2024)于9月19日在上海世博中心&展览馆盛大召开。本次大会以“共赢行业智能化”为主题,邀请思想领袖、商业精英、技术专家、合作伙伴、开发者等业界同仁,从战略、产业、生态等方面探讨如何通过智能化、数字化技术,赋能千行万业,把握新......
  • C# 线程(Thread)
    一、基本概念1、进程首先打开任务管理器,查看当前运行的进程:从任务管理器里面可以看到当前所有正在运行的进程。那么究竟什么是进程呢?进程(Process)是Windows系统中的一个基本概念,它包含着一个运行程序所需要的资源。一个正在运行的应用程序在操作系统中被视为一个进程,进程可......