Threshold Matters in WSSS: Manipulating the Activation for the Robust and Accurate Segmentation Mode

文章探讨了在弱监督语义分割(WSSS)中,CAM激活的全局阈值如何影响性能,并提出了ActivationManipulationNetwork(AMN),包括Per-pixelClassificationLoss和LabelConditioningModule,旨在解决阈值不平衡和激活gap问题,提高模型的鲁棒性和准确性。
摘要由CSDN通过智能技术生成

Threshold Matters in WSSS: Manipulating the Activation for the Robust and Accurate Segmentation Model Against Thresholds讲解

代码地址:
https://github.com/gaviotas/AMN

Abstract

现有的方法大多都在讨论,CAM生成中的一些稀疏性的coverage,导致了WSSS的性能瓶颈。作者则认为CAM激活中的一些全局性的阈值也会也会影响其性能。作者认为CAM进行激活的阈值需要满足以下两个条件:

1.减弱在前景区域内CAM激活的不平衡的现象
2.增大前景区域和背景区域的激活的gap
针对此,作者提出了activation manipulation network(AMN),包含per-pixel classification loss(PCL)和label conditioning module(LC)。其中
per-pixel classification 表示二值化的激活过程,label conditioning用于控制输出的真实的标签 。

( 现有方法中的问题)CAM是WSSS任务中一种非常重要的方法。很多方法指出从CAM中获得的伪标签只能捕捉最有discriminative的部分,导致了性能瓶颈。作者认为该性能瓶颈主要来自于CAM激活中的全局阈值,主要原因是:

1.CAM激活时提供的全局阈值并不能适合每张图像的阈值(图1a),很多时候这个差距很大。
2.CAM的全局阈值并不总是会导致稀疏覆盖。
(造成这种阈值的进一步的原因)GAP具有平均效应,它将特征映射平均为一个单一的分类分数。相同的值可以来自于完全不同的激活。

(作者的思路)通过改变CAM激活的过程:

1.增大前景区域和背景区域的激活的阈值gap,如果阈值在gap内,阈值掩模相同。来提高生成的鲁棒性。
2.减弱在前景区域内CAM激活的不平衡来改善激活质量。
作者认为通过为整个前景像素和背景像素(例如,1和0)分配两级激活,可以满足上述两个条件。对应于文中的per-pixel classification 模块。除此以外,作者设计了label conditioning模块,通过从给定的K类(K是每幅图像的地面真实图像标签给出的类数)找出最佳预测。(CLIP模型类似的优点,不拘泥于固定的类别)

Preliminaries:

Class activation mapping (CAM):

常规的CAM的生成手段,对每个feature的通道按照类别的权重求和:

在这里插入图片描述

现有的WSSS方法都将 ∗ ∗ F c ( x ) **F_c(x) Fc(x)** 归一化到[0 1]的范围内,然后应用一个全局阈值来分离前景像素和背景像素。作者这里改变了激活阈值的方法。

Threshold matters in WSSS:
GAP允许将不同的激活映射到相同的分类分数。因此, F c ( x ) F_c(x) Fc(x) 可以有不同的激活分布。因此没有一个阈值可以获得最优解。作者列出来两个condition,作为改善激活方法的条件:

c1: reducing the activation imbalance within the foreground
c2: enforcing the large activation gap between the foreground and the background activation
通过共同满足c1和c2,一个激活可以通过一个全局阈值来很好地区分前景和背景。图2中给了举例(a是满足条件的,b是不满足条件的)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-i8UkDVp6-1675596053623)(https://s3-us-west-2.amazonaws.com/secure.notion-static.com/b0975464-a075-485b-9adf-3cb3890da8f7/Untitled.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tJTLeBym-1675596053624)(https://s3-us-west-2.amazonaws.com/secure.notion-static.com/5f8c68e8-3d1c-45ff-97ec-5edea7a1703a/Untitled.png)]

Activation Manipulation Network

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nFZpL31W-1675596053625)(https://s3-us-west-2.amazonaws.com/secure.notion-static.com/0180ca8e-5d6e-47de-994c-02fba850bc72/Untitled.png)]

4.1. Overall training procedure
整体流程主要包括四步:

1)seed generation 2) pseudo-mask generation with the proposed AMN 3) final segmentation
1)通过应用CAM获得像素级的伪粗标签,在伪粗标签上应用CRF算法,继续应用文献[1]的方法获得refined seed。
2)将图像和图像级标签作为输入,refined seed作为目标函数,训练AMN网络(通过PCL和LC模块)。AMN的网络架构与CAM的分类网络相同,只做了一点修改;用卷积层替换GAP层和最后一个分类层来预测像素级掩码。然后使用IRN方法进一步改进获得的伪mask。
3)训练常规的分割网路,获得结果。

4.2. Per-pixel classification
根据上面的两个条件c1和c2,作者提出了pixel classification losss,即在原来的像素级别的激活之前,加入一个强制的两级(0,1)的激活。这种两级的激活满足c1和c2的条件,同时,不需要GAP,可以有效地处理全局阈值问题。

第一个条件(c1)是减少前景内的激活不平衡,这也在[24]中指出。它引导激活值覆盖目标对象的整个范围,而不是集中在最具鉴别性的部分。第二个条件(c2)是加强前景和背景激活之间的大激活间隔。这有助于伪掩码的生成对阈值不那么敏感。通过同时满足c1和c2,我们认为激活是形成的,可以用一个全局阈值很好地区分前景和背景。图2(A)中的一个简单的玩具示例说明,满足这两个条件可以保证一致和准确的性能,而不管阈值τ;通过选择间隙内的任意τ,可以生成相同的伪掩码。图2(b)显示了相反的情况,其中它既不满足c1也不满足c2;这种性能对τ的选择极其敏感。这两种情况说明,同时满足c1和c2可以使我们获得准确和鲁棒的伪掩模。

基于第3节的案例研究,我们得出结论,联合实现这两个条件可以解决全局阈值引起的问题:减少前景激活内部的不平衡,使前景和背景激活之间有较大的差距。然后,我们设计了一个满足上述两个条件的激活操纵网络(AMN)。为了实现这一目标,我们引入了逐像素分类损失(PCL),因为它直接强制两级激活(例如,0或1),在像素级上对激活(阈值之前)进行控制。

具体来说,两级激活作为目标信号可以减少前景内部的激活不平衡,因为前景应该被赋予相同的激活值。同样,两级激活自然保留了前景和背景之间的较大激活间隙。PCL的另一个优点是它不依赖于GAP。由于GAP产生具有相同分类分数的不同激活映射,因此丢弃GAP可以有效地处理全局阈值问题。为了用逐像素分类训练模型,我们需要像素级的监督。在WSSS场景下,禁止直接访问像素级监督。我们利用改进的种子Si作为噪声监督来训练AMN。最后,采用平衡交叉熵损失[17]作为逐像素分类损失(PCL)。

4.3. Label conditioning
设数据集里面的类别有N+1个,但是一个图片上肯定同时出现这么类别。Label conditioning将每个像素应该映射到K + 1类中的一个,K是基础类,1是背景类。

(作者解释了一些原因):首先,小类别有助于区分外观相似的物体,除非所有的类别都同时出现在图像中。这样有助于防止图像类别一些误判。

为什么能work:

此外,我们提出标签条件作用来减少非目标类的激活。标签条件化的思想是通过从给定的K个类(K是每张图像的真实图像级标签给出的类的数量)和背景中找到最佳预测来重新制定标签预测问题,而不是n1个类(即总共N个前景类和一个背景类)。K总是比N小得多,因此可能答案的范围明显缩小了。这使问题更好地提出。更重要的是,非目标类的激活通过映射到0被严格抑制。它有助于加强前景激活。

原始的逐像素分类器将每个像素映射到n1个类中的一个(即,总共N个前景类和一个背景类)。同时,标签条件作用(LC)要求每个像素必须映射到k1个类中的一个,即每张图像的ground- truth图像级标签和1个背景类中有K个类。LC在两个方面是有效的。首先,它有助于区分具有相似外观的物体,除非它们确实在图像中同时出现。首先,它有助于区分具有相似外观的物体,除非它们确实在图像中同时出现。它通过只允许激活它的类对应于任何输入的真实图像级标签来防止由于混淆的纹理(例如,在马、牛或狗的皮肤之间)而导致的错误预测。其次,噪声伪掩模Si通常包含相当数量的未定义区域。由于缺乏监督信号,该模型缺乏数据。LC可作为辅助监督,提供丰富的学习信号。因此,采用LC会导致将非目标类激活重新分配给目标类激活,从而增加前景的整体激活。这对于提升前景中鉴别性较弱的区域特别有用。

在这里,我们为LC引入了一个额外的层,这样LC的效果只影响高级特性。这是因为在低级特性上限制类的选择可能会对表示增加不必要的偏见。

其次,训练用的伪标签比较粗糙,需要用大量的数据进行。这种Label conditioning类似于一种数据扩增,可以提供大量的监督信息。非目标类激活重新分配到目标类激活中,增加了前景的整体激活。这对于促进前景中不那么较差的区域特别有用。

(作者的具体做法):只在网络高层次维度上应用LC,因为低层次会影响到特征的选择。作者将图像级标签编码为特征向量,然后直接将这个向量乘以AMN网络中的特征图(如图2所示),最终的activation map的计算方法如下:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Zso4Iuhv-1675596053625)(https://s3-us-west-2.amazonaws.com/secure.notion-static.com/a116c25c-7ee2-4ba8-bcbf-e434198e11d1/Untitled.png)]

式子中,ff、gg、hh分别表示backbone、cnn、编码层

最终的结果: 是目前截止最高的性能了
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值