Press "Enter" to skip to content

一篇应用驱动定义自动驾驶感知Corner Case的文章

arXiv上传2021年3月的论文“An Application-Driven Conceptualization of Corner Cases for Perception in Highly Automated Driving“,发表在IEEEE IV‘21(2021年7月),作者来自德国几所大学和研究机构。

机器学习在自动驾驶的一项基本任务是可靠地检测和解释异常、新出现的、以及潜在危险的情况,即Corner Cases的检测。其中一个复杂问题是缺乏一致的定义、术语和描述,尤其是考虑到各种汽车传感器。这项工作提供了一种Corner Cases的应用驱动视角。

 

首先考虑现有来自异常值(outlier)、新颖性(novelty)、异常(anomaly)和OOD(out-of-distribution)检测的定义,体现出和极端情况(Corner Cases)的关系和差异。

 

此外,添加雷达和 激光雷达传感器,扩展现有的以相机为中心的corner cases,变得更加系统化。为此,给出一个用于数据采集和处理的示例性工具链,突出corner cases检测的接口。

 

作者还定义了一个新的corner cases级别,即方法层面的corner cases,它的出现是由于方法或数据分布中固有的不确定性造成的。

 

之前介绍过作者2021年2月份在arXiv的论文:

 

在上一篇文章,作者为视觉感知定义了系统化的Corner Cases,其中Corner Cases按级别进行分类。这些级别基于包含的情况类型,并按理论性检测的复杂性排序。

 

本文继续这种方法,并考虑 场景 、 目标 (例如,越野滑雪的人)和 域 (例如,下雪的冬天)等级别的Corner Cases,将其总结为 内容层 。此外,对于场景级的Corner Cases,定义了 时域层 ,例如,与行人相比,越野滑雪人的异常运动。根据目标是涉及单个图像帧和点云( 内容层 )还是多个连续帧( 时域层 )对Corner Cases做分组。

 

为了提供更全面的Corner Cases定义,考虑多模式传感器的输入,本文把像素级和点云级Corner Cases的最低理论性检测复杂度做区分,都称为 传感器层 。

 

如图是机器学习常见的术语:

Edge Cases :指很少发生但已经考虑到的情况或参数,也类似于extreme cases或boundary cases。 相比之下,Corner Cases是由几种正常情况或参数的组合碰巧一起产生的,因此代表了罕见或从未考虑过的情况或场景。

 

Outlier : 定义为“一个观察结果与其他观察结果相差很大,以至怀疑它是由不同的机制产生的”。对于Corner Cases,遵循类似的理解。

 

Anomalies : 有人作为噪声数据看待,这些数据会造成artifacts;一种定义是看成极低发生频率的事件。对于自动驾驶的Corner Cases,指不符合规范的行为,或模式中存在偏离常态的情况。anomaly 和 corner case几乎是同义词。

 

Novelties : 指以前未见过的实例或目标。 也有说是,异常的空间或时间聚集,或已知过程的分布变化。 新的情况、目标和运动模式的出现,是corner case的一个基本特征。

 

如图是数据处理工具链的流水线图:包括摄像头、激光雷达和雷达传感器,分别是数据获取(I)、数据预处理(II)、早期机器学习(III)、数据融合(IV)、晚期机器学习(V)和应用(VI)等步骤,corner case可能出现在工具链的多个环节。

摄像头分成CCD/CMOS、rolling shutter/global shutter、Rectilinear/wide-angle/fisheye等。

 

激光雷达分机械式和固态两种,还有2-D/3-D区别、不同线束(比如16-32-40-64-128)等。

 

雷达分成短距、中距和远距三种。

 

传感器融合分成早融合和晚融合。另外,cross fusion或者中期融合(middle fusion)直接在神经网络的中间表示层融合特征。

 

文章给出一个系统化的corner case分类,如表所示:

表格纵向是传感器的corner case种类,即激光雷达、摄像头和雷达;表格横向分成传感器层、内容层和时域层。

 

1) 传感器层 分成硬件级和物理级;

 

传感器的硬件级 问题包括:a)激光雷达错误有破碎的镜子和未校准的执行器;b)摄像头(像素)错误包括坏点和破碎的镜头;c)雷达错误(脉冲)包括低电压和低温。

 

传感器的物理级 问题包括:a)激光雷达错误(基于光束)包括黑车看不见;b)摄像头(像素)错误包括镜头污迹、过饱和/曝光;c)雷达(脉冲)错误包括干扰。

 

2) 内容层 分成域、目标和场景三个级;

 

域级 问题包括:a)激光雷达的点云域迁移中道路标记的形状;b)摄像头在单帧域迁移中的定位;c)雷达在域迁移的天气。

 

目标级 问题包括:a)激光雷达的点云异常(灰);b)摄像头的异常(动物出现);c)雷达的异常(丢失目标)。

 

场景级 问题包括:a)激光雷达的上下文异常(人行道清扫);b)摄像头的上下文异常(广告牌上的人照);c)雷达上下文的异常(街道的树木)。

 

3) 时域层 只有场景一个级别;

 

场景级 的问题(多个图像帧或者点云帧)包括:人违反交通规则、超越的自行车和车祸等等。

 

所谓方法层的corner case级别,比如机器学习方法的不确定性问题,认知不确定性(epistemic uncertainty);另外,对抗样本也是一种,对抗学习采用的方式。

 

corner case的检测方法在作者之前的文章讨论过摄像头数据,本文提到一些激光雷达和雷达的corner case检测方法,比如雷达数据采用的density-based clustering、open-set classification、SV-Means等,比如激光雷达数据的open-set instance segmentation network。

 

评估的数据:

 

摄像头:

 

数据有不少,比如Cityscapes, BDD100k, openDD, Mapillary Vistas;针对未知目标检测的数据有RoadAnomaly, Lost&Found, Fishyscapes;还有针对VRU的检测数据Eurocity Persons。

 

激光雷达:

 

早期工作就有数据KITTI,包括图像合激光雷达点云,其他类似的 Apolloscape, A2D2, Waymo Open, PandaSet, KAIST等等;数据 Canadian Adverse Driving Conditions 特别提供了冬天的图像和点云。

 

雷达:

 

数据很少,可以发现的有nuScenes, Astyx HiRes2019, Oxford RobotCar, RADIATE给出了摄像头、激光雷达和雷达的数据 (Oxford RobotCar 没有给雷达的GT)。

 

评估的方法:

 

摄像头:

 

一般是area under the receiver operator characteristic (AUC),area under the precision-recall curve (AUPRC)。

 

激光雷达:

 

average precision (AP),IoU (semantic segmentation),panoptic quality (PQ) 和 unknown quality (UQ)。

 

注: 雷达 没有提,估计是按照激光雷达的方法。

Be First to Comment

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注