如果您希望从数百万小时的驾驶数据中查找特定的相关驾驶事件和未遂事故,以确保您的所需功能正确运行,最好的方法就是创建一个系统性能的概览分析,实现在数据日志中快速检索关注点。为此,康谋在本文将为您详细介绍IVEX的智能概览功能,助力AD/ADAS的开发与验证!

一、AD/ADAS性能概览的重要性

为了开发、演进、测试和验证自动驾驶(AD)功能或自动驾驶辅助系统(ADAS),各大企业都在生成数千小时的包含仿真或真实世界的驾驶数据日志。那么,如何才能知道自身的AD/ADAS系统是否始终按要求运行?是否朝着更好的表现发展?

对“脱离”AD/ADAS模式的情况进行分析是一种常见的方法。这有助于了解系统失败的“原因”,而后可对表现不佳的地方进行分组,提供一个概览以确定纠正这些失败的优先顺序。然而,“脱离”分析仅涵盖“已知”的不当行为,对于边缘/极端情况该如何处理?更重要的是,对于险些发生的事故如何处理?

例如,由于一个错误检测或者说“幽灵检测”,白色的自车认为它将与车辆1发生碰撞,因此决定执行变道操作,如图1所示。幸运的是,由于自车的左车道是空的,该操作是可行的,否则就可能会由于自车的急刹车而导致与车辆4发生追尾事故。

图1 追尾未遂

这种更深入、更有成效的分析也与ISO 21448(SOTIF)所提出的过程相匹配,以识别在某些不利触发条件下系统可能会表现出的局限性、弱点与干扰,而这些都可能导致事故或相关意外事件的发生。

如果能够提供AD/ADAS系统性能的概览,工程师就可以迅速在结构化分析中定位所有相关的事件或条件,例如:

(1)数据日志中出现了哪些未遂事故?

(2)系统在哪一个操作域(OD)表现不佳,原因是什么?

(3)开发是否正朝着更好的表现方向发展?

(4)是否应该修改功能需求,以便流畅且充分地与现实世界交互?

(5)功能是否满足了指定的需求?

因此,为了开发和验证AD/ADAS系统,需要有效地识别、分析并了解所有可能的未遂事故、性能不足或触发条件,这些都对AD/ADAS系统构成了挑战。然而,当前高度依赖人工的技术手段如同“海底捞针”,在数百万小时的驾驶数据中几乎难以发现目标。

二、康谋IVEX智能概览

为了整理驾驶数据并找到那些重要的“针”,康谋IVEX通过使用特定的安全和关键绩效指标(SPIs,KPIs),即根据采集/模拟驾驶数据汇总的“指标(metrics)”,以创建系统性能的最佳概览。

1、利用指标整理驾驶数据

由于采集数据的非结构化特性和不断变化的动态交通环境,整理驾驶数据存在巨大挑战。我们设定了3个主要指标类型来整理数据:传感器与感知指标、行为指标、舒适度指标。

第一层是传感器与感知指标。它们是自动驾驶汽车与环境的初始接触点,表示系统对周围环境的感知程度,有助于在开发的早期阶段突出性能不佳的情况,例如误报对象检测、车道线提取失败等。

第二层指标关注AD/ADAS系统采取的控制和行为动作。例如,对于自动紧急制动(AEB)系统,需要检查制动信号是否在正确的时间触发,进而产生更好的减速。

第三层指标是指乘客可能体验到的舒适度。例如,为了验证自动车道保持辅助系统(ALKS),可以测量车辆产生的任何会给乘客带来不适的摆动行为。

根据待测的AD/ADAS功能确定了哪些指标是感兴趣的之后,就可以有效地开始整理数据。除了前面的例子,指标还可以是跟踪感知物体尺寸、检查检测到的车辆边界框是否分裂或合并、监测与其他交通元素的前后距离和横向距离、预测潜在碰撞以及评估检测到的车道标识质量。IVEX软件也允许工程师通过简单的编程API包含他们自己的定制指标。

2、创建合理且可观的概览

当使用选定的指标整理好记录的驾驶数据后,如何在所有的数据中找到所需的“针”?在IVEX中,我们创建了一个优化的流程来高效处理所有驾驶数据日志。

我们汇总了所有的测量结果,提供了一个基于指标的清晰组织。此外,由于当前的L2+ ADAS系统受限于运行设计域(ODD),例如ALKS仅适用于车速低于60公里/小时的高速公路场景。我们根据ODD对分析进行切分,以便于简化搜索空间。所有结果被汇总并呈现在一个简洁、可定制的界面中,只需单击三下即可“大海捞针”,详细检查特定的驾驶场景。

现在,我们可以观察整理得到的数据结果,如下图所示。这些结果是对所有数据日志的全面汇总,并以简单但具有指导性的方式展示。每个指标的结果显示在每一行上,而ODD则显示在列中。在每个单元格内呈现的是相应指标与ODD组合的违规率。

图2 聚合分析

举个例子,假设我们正在分析城市环境中驾驶系统的舒适性:

在一次点击中,我们选择了“低速”ODD(小于15公里/小时)下的“急刹车”指标。

接下来,我们看到的是在所选择的ODD内,所有分析的数据日志中施加的制动减速度分布情况。如果要求规定施加的制动减速度应小于4米/秒²,那么可以立即看到有0.06%的情况未能满足这一要求。通过第二次点击,就可以选择特定的制动范围(分布中的列)来分析特定的事件/情景。

图3 智能概览访问特定记录数据流程示意图

而后,工程师就可以直接访问确切时间戳的特定记录数据,观察完整情况并获得有关问题的额外见解。

三、结论

本文案例中,IVEX可以从69小时的驾驶日志中准确筛选出会令乘客非常不舒适的特定急刹车事件(减速度超过4米/秒²),展示了一种非常简单工作流程。除了能够帮助工程师在几秒钟内从大量数据中找到相关事件,IVEX还提供可用于根据SOTIF和UL4600进行安全论证的报告。

简而言之,IVEX可以助力于实现:

1、整理海量数据日志并从中识别特定事件

2、识别需要添加为SOTIF分析一部分的触发条件

3、跟踪AD/ADAS系统在不同迭代中的演变,以展示系统改进的论据,并为UL4600文档提供具体的支持。


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

康谋分享 | AD/ADAS的性能概览:在AD/ADAS的开发与验证中“大海捞针”!的更多相关文章

  1. 【腾讯Bugly干货分享】跨平台 ListView 性能优化

    本文来自于腾讯Bugly公众号(weixinBugly),未经作者同意,请勿转载,原文地址:https://mp.weixin.qq.com/s/FbiSLPxFdGqJ00WgpJ94yw 导语 精 ...

  2. 实现 AD 采样,使用 LCD1602 显示 AD 数值

    实现 AD 采样,使用 LCD1602 显示 AD 数值 写在前面 单片机内集成的A/D转换,一般都有相应的特殊功能寄存器来设置A/D的使能标志,参考电压,转换频率,通道选择,A/D输入口的属性(模拟 ...

  3. 恒天云技术分享系列3 – KVM性能调优

    恒天云技术分享:http://www.hengtianyun.com/download-show-id-11.html KVM是什么 KVM 是 kernel-based Virtual Machin ...

  4. 淘宝内部分享:MySQL & MariaDB性能优化

    发表于2015-01-20 16:26| 28875次阅读| 来源mysql.taobao.org| 22 条评论| 作者淘宝数据库团队 MySQL性能优化淘宝数据库 摘要:MySQL是目前使用最多的 ...

  5. 分享10条PHP性能优化的小技巧,帮助你更好的用PHP开发:

    1. foreach效率更高,尽量用foreach代替while和for循环. 2. 循环内部不要声明变量,尤其是对象这样的变量. 3. 在多重嵌套循环中,如有可能,应当将最长的循环放在内层,最短循环 ...

  6. 淘宝内部分享:MySQL & MariaDB性能优化 【转】

    MySQL· 5.7优化·Metadata Lock子系统的优化 背景 引入MDL锁的目的,最初是为了解决著名的bug#989,在MySQL 5.1及之前的版本,事务执行过程中并不维护涉及到的所有表的 ...

  7. 转: 腾讯Bugly干货分享:Android应用性能评测调优

    转:http://www.kuqin.com/shuoit/20150618/346693.html?utm_source=www.race604.com 前言 在智能手机App竞争越来越激烈的今天, ...

  8. SharePoint 2013 直接给AD 组赋权限后,AD组里的用户还是登陆不了SharePoint,提示没有权限

    直接给一个all person的AD组赋了个read权限,然后将一个名为“all beijing”的组加到all person组里,但是all beijing组里的人却不能登录sharepoint,提 ...

  9. ThinkPHP 3.2 性能优化,实现高性能API开发

    需求分析 目前的业务全站使用ThinkPHP 3.2.3,前台.后台.Cli.Api等.目前的业务API访问量数千万,后端7台PHP 5.6,平均CPU使用率20%. 测试数据 真实业务 php5.6 ...

  10. IOS性能调优系列:使用Zombies动态分析内存中的僵尸对象

    硬广:<IOS性能调优系列>第四篇,预计会有二十多篇,持续更新,欢迎关注. 前两篇<IOS性能调优系列:Analyze静态分析>.<IOS性能调优系列:使用Instrum ...

随机推荐

  1. Oracle如何查找指定字符串所出现的表

    declare v_sql varchar2(2000); v_count number; begin for cur in(select t.owner, t.table_name, t.colum ...

  2. Delphi中的变体Variant数组相关函数

    转自:Delphi中的变体Variant数组相关函数 1.VarArrayCreate procedure TForm1.Button1Click(Sender: TObject); var   V, ...

  3. 云主机(操作系统:CentOS7版本)安装nfs客户端,挂载文件系统

    本文分享自天翼云开发者社区<云主机(操作系统:CentOS7版本)安装nfs客户端,挂载文件系统>,作者:c****n 1.保证宿主机上有nfs-utils 1.1若宿主机yum源不可以用 ...

  4. 支付宝AES如何加密

    继之前给大家介绍了 V3 加密解密的方法之后,今天给大家介绍下支付宝的 AES 加密. 注意:以下说明均在使用支付宝 SDK 集成的基础上,未使用支付宝 SDK 的小伙伴要使用的话老老实实从 AES ...

  5. Vue3 数据响应式原理与高效数据操作全解析

    一.Vue3 数据响应式原理 (一)Proxy 替代 Object.defineProperty 在 Vue2 中,数据响应式是通过 Object.defineProperty 实现的.这种方法虽然能 ...

  6. 如何修改JSONObject 的值

    问 题 { "result": { "total": "3", "shops": [ { "shopId&qu ...

  7. 清华大学推出的5册免费的 DeepSeek 学习使用指南!

    前言 在当今这个信息洪流.技术飞速迭代的时代,DeepSeek的横空出世极大地降低了普通人利用人工智能技术的门槛.然而,尽管机遇就在眼前,仍有不少朋友面对DeepSeek感到无从下手,不知如何利用它来 ...

  8. deepseek-llamafactory模型微调并转为gguf

    模型微调测试 基础设施配置 使用云计算平台 使用vscode进行配置 打开系统盘文件夹 llamafactory基础配置 git clone --depth 1 https://github.com/ ...

  9. new vue 实例发生了什么呢?

    前言 最近全面栽进vue源码解析中,将出一系列的学习笔记 以及个人的一些总结 第一步准备工作 到GitHub上下载vue的源码(巧妇难为无米之炊) 用自己喜欢的编辑器打开源码 vue主要源码資源在sr ...

  10. 什么是nginx的强缓存和协商缓存

    一.强缓存(Strong Cache) 1. 定义 • 强缓存直接告诉浏览器:在缓存过期前,无需与服务器通信,直接使用本地缓存. • 由服务器通过响应头 Cache-Control 和 Expires ...