一句话总结: 认为前景和背景feature天然相似度较低,且相同纹理的前/背景feature相似度高,因此直接在feature后接分割头预测前背景分数,与feature相乘取出前/背景feature。在一个batch内降低前-背景pair的相似度,提高前景-前景和背景-背景相似度,但根据相似度排名降低该pair的loss权重。
详细来说,通过对特征降维可以发现
(1)纹理类似的前景的feature的相似度高,
(2)前景与背景相似度低
(3)纹理相似的背景相似度高
因此,在预训练的encoder提取出feature后,直接预测前/背景分数,并用对比损失强化上面的结论,以使得前/背景预测更准确
如上图所示,
h
(
⋅
)
h(\cdot)
h(⋅)是预训练的encoder,
z
j
z_j
zj是提取的特征图,通过随机初始化的二分类分割头
φ
(
⋅
)
\varphi{(\cdot)}
φ(⋅)得到随机的(开始时)分割结果,如分数P
注:此时并不知道P是代表前景还是背景,暂时也不用管
此时通过P or (1-P)与feature相乘,可取出随机的(开始时)前/背景feature。
在一个batch内,计算前景-背景pair的相似度,并最小化该相似度:
对于同类(同为前景、背景类)feature,先计算相似度,排名,根据排名分配权重:
排名越靠前(越小)的pair的权重越大,反之越小。这是因为并不是所有背景/前景都相似,只有那些纹理相近的才相似。
这里意思其实是希望最开始的feature就满足前述假设,这样直接通过相似度就能找到纹理接近的region,然后通过对比损失使得分割头预测的前景-背景pair相似度小(这样实际上就要求分割头准确分割前景/背景region?),同时要求前景-前景相似度大,实际上是要求batch内cross-image纹理相近的物体相似度大。
举个反例
(1)假设一个batch内所有前景/背景纹理都不相似
(2)假设一个batch内只有个别sample的前/背景纹理相似
(3)假设前/背景有多个物体,比较复杂,多个物体的混合纹理仍满足假设?
当然,最终这个只是完成了二分类分割,对于多类目标,只能辅助CAM来做: