〇、Abstract
异常情况包括三种:
- 将异常实例错误的分类为已知类
- 将异常实例被错误的分类为许多已知类
- 异常实例被分类为背景实例
目前语义分割技术在标准数据集上能达到很好的效果,但是无法识别异常物体(不在训练集中的类),从而无法部署在实际应用中。针对该问题,最近研究提出两种方法:估计不确定度确定异常区域或根据语义标签图重新生成图像并与原输入图像比对。本篇论文提出该两种方法能够提供互补的信息,在上述两种方法上提出一种像素集的异常检测框架(pixel-wise anomaly detection framework),使用不确定度图(uncertainty maps)改进图像生成方法(re-synthesis methods),找到生成后的图像与原图不匹配的地方。该方法基于训练好的分割网络,因此其异常检测不会影响原有语义分割算法性能。并在异常检测数据集上达到了Top-2的结果。
一、Introduction
本篇论文聚焦的是语义分割模型中异常实例检测问题。当训练好的模型部署在实际应用中,比如自动驾驶汽车上,非常有可能遇到训练集之外的物体(比如一只袋鼠),此时若将该未知物体识别为公路,则会带来极大的安全隐患。因此语义分割若要走向实际应用,必须解决为未知物体识别问题。
目前解决该问题有两种主流方法:
-
不确定度估计(uncertainty estimation)
若对于某个物体识别出的置信度较低,例如对某个物体识别结果为1/3概率为苹果、1/3概率为香蕉、1/3概率为橘子,则倾向于认为该物体为异常物体。该方法噪声较大、准确度低。分割网络很容易对某个未知物体给出较高的置信度。
-
图像生成(re-synthesis methods)
根据语义标签图试图还原图像,并比较原有图像和生成后图像。根据两者差距找到异常位置。在分割结果噪声较大的情况下,很难生成高质量图像,从而容易导致失败。
本篇论文认为,重生成图像与原图像不同的地方存在未知类,并在以往研究框架上,集合了不确定度衡量方法,包括softmax entropy、softmax difference 和 perceptual differences,帮助模型更好的发现与定位未知类。
本篇论文贡献如下:
- 提出了新的基于像素的异常检测框架,结合了两种主流方法
- 对不同的异常场景具有鲁棒性,在Fishyscapes上达到SOTA的异常检测结果,并保证了原有SOTA分割结果
- 提出的框架适用于不同的语义分割和图像合成网络
二、Related Work
异常实例定位任务与 OoD(out-of-distribution)识别和异常分割(anomaly segmentation)有关。
1、通过不确定度的异常分割(Anomaly Segmentation via Uncertainty Estimation)
若输入噪声较大,该方法可能对正常实例给出较高的不确定度。早期方法在预测出的softmax 分布上使用简单的统计方法来判断 OoD。随后,人们结合了不同的发散度量(dispersion measurements)(熵、softmax 概率的差)进行预测。
- 缺点:仅适用于图像分类(Classification)级别的 OoD分类,不适用于分割领域。在物体边缘可能具有较高的不确定度,但不能将物体边缘判别为未知类
也有使用带有MC dropout层的贝叶斯神经网络的方法去估计像素不确定度。
-
优点:能够区分偶然的噪点和异常情况,解决了物体边界问题。
-
缺点:无法在像素精度上正确的检测异常。
2、通过异常值暴露进行异常分割(Anomaly Segmentation via Outlier Exposure)
使用包含异常值的数据集(dataset of outliers)训练网络,使得网络能够区分正常类与未知类。有文献使用ImageNet作为OoD数据集进行异常值曝光,进而修改分割网络来预测语义图和异常值图。
- 缺点:需要使用多任务模型(multi-task model)来重新训练分割网络,会降低性能,并对于 OoD 数据集之外的异常类效果较差。
3、通过图像生成的异常分割(Anomaly Segmentation via ImageRe-synthesis)
该方法认为原图像中的异常实例,会使得生成的图像与原图像在异常实例的像素点中造成差异,因为生成的图像缺乏异常实例的相关知识。早期工作使用自编码器去重新生成原始图像,但是生成图像质量较低。近期工作使用生成对抗网络从与预提生成图像。
-
优点:不需要重新训练分割网络,也不需要OoD数据集。
-
缺点:性能受到差异比较模块的限制。本篇论文将不确定度信息传递给差异比较模块,改进了模型探测异常实例的性能。
三、Methodology
1、Pixel-wise Anomaly Detection Framework
主要框架:分割输入图像、根据分割图重建图像、比较重建后图像与原图像差别。本篇论文在每个模块中加入不确定度量改进最终异常预测性能。
a. 分割模块
除了通常的语义map之外,计算了两个指标来确定不确定性,softmax entropy
H
H
H 和 softmax distance
D
D
D
H
x
=
−
∑
c
∈
classes
p
(
c
)
log
2
p
(
c
)
D
x
=
1
−
max
c
∈
classes
p
(
c
)
+
max
c
′
∈
classes
(
arg
max
c
p
(
c
)
)
p
(
c
′
)
H_x=-\sum_{c\in\text{classes}}p(c)\log_2p(c)\\ D_x=1-\max_{c\in\text{classes}}p(c)+\max_{c'\in\text{classes}\text{\\}(\arg\max_cp(c))}p(c')
Hx=−c∈classes∑p(c)log2p(c)Dx=1−c∈classesmaxp(c)+c′∈classes(argmaxcp(c))maxp(c′)
其中的
x
x
x 为每个像素点,
p
(
c
)
p(c)
p(c) 表示该像素点属于类
c
c
c 的概率。softmax distance 表示两个最大 softmax 值之差。这两个值大小都应归一化到区间
[
0
,
1
]
[0,1]
[0,1]
b. 生成模块
生成模型的缺点在于无法生成细粒度的信息,例如颜色或外观,进而难以与原图像进行逐像素的比较。论文计算了原图与生成图之间的感知差异(perceptual difference)
V
V
V。
V
(
x
,
r
)
=
∑
i
=
1
N
1
M
i
∣
∣
F
(
i
)
(
x
)
−
F
(
i
)
(
r
)
∣
∣
1
V(x,r)=\sum_{i=1}^N\frac{1}{M_i}||F^{(i)}(x)-F^{(i)}(r)||_1
V(x,r)=i=1∑NMi1∣∣F(i)(x)−F(i)(r)∣∣1
其中
F
(
i
)
F^{(i)}
F(i) 表示
N
N
N 层 VGG 网络的第
i
i
i 层,该层具有
M
i
M_i
Mi 个元素。该度量同样被归一化到
[
0
,
1
]
[0,1]
[0,1]。
x
x
x 表示原始原始图像像素点,
r
r
r 表示生成图像的像素点。
该方法使用预训练的 V G G VGG VGG 网络作为特征提取器,找到具有最大特征表达差异的像素点集。使用这些差异可以根据图像内容和空间结构比较图像差异,而无需考虑低级特征包括颜色以及纹路。
c. 差异模块
该模块的输入有:原始图像、生成图像、语义图、不确定图(softmax entropy、softmax distance、perceptual difference)。随后网络根据上述特征图预测出宜昌分割图。该模块包括三个部分:编码器、融合模块和解码模块。
- 编码器:使用预训练 V G G VGG VGG 网络提取原始图像、生成图像特征。使用两个独立的 C N N CNN CNN 提取语义图、不确定图来提取特征。
- 融合模块:在特征金字塔的各个层级上,拼接各个特征图,并通过 1 × 1 1\times 1 1×1 卷积。
- 解码器:对每个特征图进行解码,并将其和在特征金字塔中更高一级的特征进行合并,直到得到异常实例预测。需要使用 spatial-aware normalization 的技术。
2、Training Procedure
分割和生成模块只需要在原有分割数据集上进行训练。
训练差异模块时,由于常用的差异数据集上没有异常物体,因此需要额外的方法进行训练。
- 方法1:随机选择一个类,来随机替代ground truth语义图中的一个实例。使用替换后语义图生成的图像会和真实的原始图像产生差距,从而对差异模块进行训练。
- 缺点:该方法缺乏鲁邦性,训练数据生成器仅包含异常情况的第一种。使用 gt 语义标签图训练网络,但是使用预测的语义标签图来进行推断。同时更替后实例不确定度较弱(因为在训练集中),无法使用不确定图。
- 方法2:增加了额外的数据集进行训练。将 gt 语义图中的 void 类中的对象标记为异常。
3、Predictions Ensemble
本篇论文已经使用不确定图作为差异模块的输入通过注意力机制。然而不确定图本身就可以表征异常实例。因此可以使用不确定估计来完善差异网络的输出,从而可以缓解深度学习模型的 overconfidence 问题。
论文使用加权平均来综合结果,通过对差异网络的训练来学习到权重。
四、Experiment
1、配置
a. 模型实现
分割和合成模型使用在 Cityscapes 上训练好的模型。其中分割模块使用 Improving Semantic Segmentation via Video Propagation and Label Relaxation 中的模型,生成模块使用 Learning to predict layout-to-image conditional convolutions for semantic image synthesis 中的模型。其中分割模块使用原有分辨率 2048 × 1024 2048\times 1024 2048×1024 作为输入,合成模型采用 2 倍的下采样,差异比较模型使用 4 倍的下采样。
b. 数据集
在 Fishyscapes benchmark 上衡量模型的性能。
c. 衡量指标
- average precision(AP)
- false positive rate(FPR95)