自动驾驶中道路异常检测的方法解析

residual pattern learning: 在不影响模型闭集表现的情况下分割异常物体
out-of-distribution (ood) segmentation 是在原有的闭集分割器的基础上, 让模型进一步拥有识别异常物体的能力。现在的sota的方法都是基于重新fine-tuning/retraining整个闭集segmentation网络, 这样会导致对原本inlier object的性能下降。同时, 大多数ood的办法很难对多个不同的环境进行很好的拟合, 导致识别异常物体的性能在不同的场景会落差很大。
在这里和大家分享一波我们iccv 2023中稿的工作 residual pattern learning for pixel-wise out-of-distribution detection in semantic segmentation. 在本次工作中, 我们针对当前ood segmentation中的两个问题进行了优化, 并且用consistent checkpoint 在所有数据集上取得了非常好的性能。
背景:
语义分割模型用于将像素级别的sample分类到 in distribution (id) 类别中。然而,当在开放世界中部署时,这些模型的可靠性不仅取决于其对id像素的分类能力,还取决于其对out-of-distribution (ood) 像素的检测能力。比如在autonomous driving的任务中, 路上出现一些障碍物 (ood object, 比如说`路障`) 的时候, 传统的闭集semantic segmentation并不能很好的检测出这些物体。因为原本的segmentation 模型在训练的时候并没有定义这些种类, 导致这类物体会被判定成head categories (e.g., road), 会对驾驶造成潜在的危险。
ood segmentation方向概述:
1). 锁网络: 最straight forward的方法就是直接通过softmax 或者 energy的结果来把segmentation输出的mask里面潜在的low confidence pixel判断成ood。这种方法的好处是不会影响id的segmentation性能, 并且不需要训练网络, 但是在遇到复杂的inlier或者outlier的时候, 性能会下降的很明显, 如上图 (a) 所示。
2). 重新训练: 最近的办法主要是通过outlier exposure (oe) 将一个不相干的ood数据集加入到id数据集, 然后fine-tune已经训练好的close-set segmentation模型。在这个fine-tuning过程中, 利用新加入的ood object来强行增加原本segmentation模型对异常的敏感度, 使得其ood分割的性能得到了非常大的提升。但是这类方法的重新训练会导致原本id类别的分割的性能受到不可逆的干扰, 如图 (b) 所示。
由这两点为motivation, 我们想要在保留原本inlier的分类性能的情况下, 得到一个稳定有效的ood 分割器。
方法: 
1). residual pattern block (rpl):
与以往直接fine-tuning/retraining 分割网络不同, 我们在在原本的网络上外接了一个轻便的rpl block (frpl),然后原本的segmentation模型会全程锁住。基本思路是, frpl block对id的pixel不做任何影响, 但是对潜在的ood pixel做一个扰动, 让对应的confidence大幅下降, 进而通过最终map里的energy来判别是不是异常。
在训练过程中, 我们先用原本的网络生成 y_tilde (id pseudo label):
然后用rpl扰动后的原本网络的结果:
对id的pixel, 我们用cross-entropy来做penalty, 保证原本对oe的ood object, 我们用下面的energy cost function来约束他的能量
在训练的过程中, rpl不会导致原本segmentation模型的性能受到影响, 并且能高效的分割出潜在的ood pixel。
2). context-robust contrastive learning (corocl):
目前所有ood segmentation在不同场景下的表现都不稳定, 比如大多数分割器在城市场景下能够很好的检测到物体, 但是在以下乡村的环境 (context) 下就会直接失效。
为了应对这个问题, 增强网络对多个context的鲁棒性, 我们引用了supervised contrastive learning。我们在rpl的基础上多加了一层projection layer, 并且随机提取四种样本, 分别是
1). id 场景里的 inlier pixel, 2). id 场景里的ood pixel,             和
3). ood 场景里的inlier pixiel 4). ood 场景里的ood pixel           
我们通过infonce来将不同场景的inlier pixel聚合到一起, 并且推远ood pixel
实验:
1). test results (wandb visualisation: https://wandb.ai/yy/rpl?workspace=user-pyedog1976)
我们的结果在多个benchmark上获得了最稳定的结果, 超过了之前的sota超过10个点的fpr和20个点的auprc。
2). ablation study
在消融实验里, 我们可以先比较了用entropy和energy用来当loss的结果, 然后比较了使用rpl和直接使用一个binary ood 检测器 (最后一行), rpl与energy带来了稳定的提升。然而rpl在不同的context也有之前ood segmentation的通病: 在fs-staticl&f这种city环境下效果很好, 但是在其他的benchmark比如anomaly&roadanomaly表现却很差 (25.65 & 17.74), corocl很好的缓解了这个问题。
2.1). ablation of rpl
在上图, 我们比较了原本close-set 分割模型的 miou [39] 和 其他re-training based ood ([3], [9] and [31]) 在close-set的表现。我们的方法和freeze model 的方法 [13] 在id数据集没有改变, 但是我们的方法有更好的识别ood pixel的性能 (如section 1.) 所示)。
同时如上表, 我们rpl block可以对其他的ood的方法在所有benchmark带来进一步的提升。
2.2). ablation of corocl
我们在对anchor set 和 contrastive set的选择上, 测试了不同的组合。在最后我们发现当使用anchor set为inlier与oe, contrastive set为全部种类时效果最好。在这种组合下, infonce只会将           互相拉近, 推远           , 但不会把两种ood          拉近。
3). the learned rpl feature
我们用self-attention
torch.einsum(’abc,bca->bc’,r, r.permute(1,2,0))
来可视化rpl的输出学到的ood pattern (r)。在上图可以看到, rpl对潜在的ood object会输出扰动, 而id的pixel会拟合0输出。
3). final visualisation 
* 颜色越偏红 代表异常可能性越高


需要详细了解命令-GCC
流量计数采网关再重金属废水自动监测系统中的作用
74ls191中文资料汇总(74ls191引脚图及功能_逻辑功能及应用电路)
美国正在试图压制中国5G的发展
魅族PRO 5拆解,看看这款手机的内部结构如何?
自动驾驶中道路异常检测的方法解析
GOB微间距显示屏的发展终将扛起未来显示行业的大旗
如何有效避免RS422和RS485的高频瞬态干扰?
RA2快速设计指南 [5] 存储器
飞毛腿SC-537A充电器电路原理图分析
MAX9716,MAX9717低成本、单声道、1.4W BTL音频功率放大器
射频技术原理及应用方案集锦
安科瑞霍尔传感器AHKC在印度某公司的应用
PCI总线的热插拔技术及实现
苹果在Mini LED的应用上也全面发力
获新技能,波士顿动力机器人Atlas灵活穿越障碍
防水连接器由独特接口要求定义设计 适用于高压且低泄漏应用
数字晶体管的原理是怎样的
人工智能名片有什么神奇的地方
浅谈汽车连接器的基本性能