[ECCV 2020] Synthesize then Compare: Detecting Failures and Anomalies for Semantic Segmentation

在这里插入图片描述
主要解决的问题:语义分割中的失败和异常检测;
解决方法:提出一个统一的框架,包含两个模型来处理以上两个问题;
模型1:图像合成模型,从分割输出map合成图像;
模型2:比较模型,计算合成图像和输入图像之间的差异。

引言

深度学习在计算机视觉的众多任务中都取得较为成功的结果。但是,在实际应用中,例如自动驾驶、医学诊断和核电站监测,安全问题引起了极大的关注,尤其是在故障案例会导致严重后果的情况下。因此,机器学习系统能够检测到故障(即错误的预测)以及识别可能导致这些故障的异常,即out-of-distribution(OOD)情况。
现有的失败检测和异常检测主要关注小图像的分类。语义分割中的失败和异常检测目前得到了些许关注,它们与安全型应用(例如自动驾驶和医学图像分析)紧密相关。语义分割中的失败检测不仅仅是要做到检测分割结果是否失败,更要对失败位置进行定位。语义分割中的异常检测,例如异常分割与失败检测相关,其目标是从图像中分割出异常目标或区域。
本文目标: 建立一个可靠的警报系统,以解决语义分割(图1(i))和异常分割(图1(ii))的失败检测。该系统需要提供比图像分类更加精细的分析,如像素级的error/confidence map,与图像分类只输出一个标签不同,语义分割输出的是结构化的语义输出。也有一些工作直接应用失败/异常检测策略进行像素级的图像分类(将图像分类转化成像素级分类,预测像素级error map),预测像素级的error map,但是这种做法缺乏对分割结果中结构化语义输出的考虑。
在这里插入图片描述
本文:
提出一个统一的框架解决语义分割中的失败检测和异常检测问题。该框架有两部分组成,图像合成模型,从分割结果中合成图像重构对应的输入图像,即语义分割的逆过程;比较模型,计算输入图像和合成图像之间的差异。
本文框架的动机:
语义图像合成的质量可以通过分割网络的表现进行评估。假定相反也成立,则分割结果越好,从分割结果生成的合成图像越接近输入图像。如果分割中出现失败,例如,如果“人”被误分为“杆”,从分割结果生成的图像看起来就不会像“人”,合成图像和输入图像间也会出现较为明显的差异。类似的,当测试图像中出现异常目标时,在分割结果中,异常目标会被分为任何可能的in-distribution目标,然后在由分割结果合成的图像中作为in-distribution目标出现。异常目标可通过寻找测试图像和合成图像间的差异找到。
合成策略:通过一个语义-to-图像的条件GAN(conditional GAN-cGAN),cGAN可以对分割输出空间到图像空间的映射进行建模。cGAN的训练数据是标签-图像对。给定输入图像通过语义分割模型获得的分割结果,对分割结果应用训练好的cGAN,生成重构图像。然后,重构图像和输入图像输入比较模型识别失败/异常。
比较模型是基于特定任务设计的,对于失败检测,通过Siamese network对比较模型建模,同时输出图像级别的confidence和像素级的confidence;对于异常分割,通过计算语义分割模型获得的中间特征定义的距离实现比较模型。
模型验证:
1)数据集:cityscapes;pancreatic tumor segmentation dataset in the Medical Segmentation Decathlon (MSD) challenge–胰腺肿瘤分割;StreetHazards dataset
2)结果优于其他失败检测和异常分割方法的结果。
achieved improvements over the state-of-the-arts by approximately 6% AUPR-Error on Cityscapes
pixel-level error prediction, 10% correlation coefficient on pancreatic tumor DSC prediction and 20% AUPR on StreetHazards anomaly segmentation.
贡献:
1)第一个系统性地研究语义分割中失败检测和异常检测的工作;
2)提出了一个统一的框架,semantic-to-image conditional GAN,可以同时进行以上两个任务;
3)在三个挑战赛数据库上都获得了state-of-the-art的结果。

相关工作

1)uncertainty/confidence estimation
2)Segmentation quality assessment
3)OOD detection
4)Generative adversarial networks

方法

在这里插入图片描述
1)general framework
x x x:输入图像,大小为 w × h w\times h w×h;
L = { 1 , 2 , . . . , L } L=\lbrace1,2,...,L \rbrace L={ 1,2,...,L}:语义标签;
x x x输入分割模型 M M M,得到分割结果,即像素级语义标签map y ^ = M ( x ) ∈ L w × h \hat{y}=M(x)\in L^{w\times h} y^=M(x)Lw×h。本文的目标是识别并定位 y ^ \hat y y^中的失败部分或者基于 y ^ \hat y y^检测 x x x中的异常。

A. 图像合成模型:
通过一个pixel-to-pixel translation conditional GAN(cGAN)对图像生成模型建模,cGAN有出色的semantic-to-image映射的能力。由两部分组成,一是生成器G,一是判别器D。
a)训练
在label-image pairs ( y , x ) (y,x) (y,x)上训练cGAN。其中, y y y为像素级语义标签map的ground truth, x x x是对应的图像。生成器G的目标是将语义标签map translate为实际的图像,判别器D的目标是从合成的图像中区分出真实图像。cGAN通过公式(1)佛如min-max game最小化真实图像的条件分布:
在这里插入图片描述
b)测试
训练后,固定G,给定图像 x x x和分割模型 M M M,将预测的分割结果 y ^ = M ( x ) \hat y=M(x) y^=M(x)输入到G中,得到合成图像(也就是重构图像) x ^ \hat x x^:
x ^ = G ( y ^ ) \hat x=G(\hat y) x^=G(y^) (3)
然后, x x x x ^ \hat x x^作为比较模型的输入。

B. 比较模型
本文通过比较 x x x x ^ \hat x x^检查测 y ^ \hat y y^中的失败和异常。假设,如果 x ^ \hat x x^ x x x很相似,那么 y ^ \hat y y^ y y y也就很相似。然而,由于G的优化不能保证合成图像 x ^ \hat x x^和原始图像 x x x具有相似的风格,简单的相似性度量,例如 x ^ \hat x x^ x x x l 1 l_1 l1距离是不够准确的。为了解决这个问题,本文通过一个task-specific 函数 F F

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值