论文
https://arxiv.org/pdf/2103.00208.pdf
代码
https://github.com/justchenhao/BIT_CD
- 算法简介
双时态图像Transformer(BIT)分别对两张图像中的全局信息建模,使用语义标签来突出细化变化区域,文章主要内容为:
1)提出一种基于Transformer的遥感图像变化检测方法,将Transformer结合到CD(变化检测)任务中。
2)没有在像素空间对元素之间的密集关系建模,而是用语义标签表示输入图像特征,基于这些标签进行建模。
3)在3个CD数据集实验(LEVIR-CD、WHU-CD、DSIFN-CD)与多种方法比较,效果显著。
- 详细过程
将BIT合并到基于深度特征差分的CD框架中。流程如下:
1、利用CNN主干网(ResNet)用于从输入图像对中提取高级语义特征。
2、利用空间注意将两个不同时间特征图转换为一组紧凑的语义标签。
3、再使用transformer编码器在两个标签集中对全局信息进行建模。
4、生成的含有全局信息丰富的标签由连体transformer解码器重新投影到像素空间,以增强原始像素级特征,特征重提取。
5、最后,从两个细化的特征图中计算特征差异图像(Feature Difference Images,FDI),然后将它们输入到浅层CNN中,以生成像素级的变化预测。
BIT有三个主要组件:
Semantic Tokenizer 连体语义标记器,它将像素分组为概念,为两个不同时间输入图像生成一组紧凑的语义标记;
Transformer Encoder 转换器编码器,它在基于标签的时空中对语义概念的全局信息建模;
Siamese Transformer Decoder 连体转换器解码器,它将对应的语义标签投射回像素空间,以获得两个不同时间图像的细化特征图。
在NLP的tokenizer里,会将输入的句子分成若干个元素,并用token去表达每个元素。作者借鉴这种思想,将得到的特征图也分为若干个子图,并每一个都去映射成token,而为了去汇聚空间层面上的信息,作者则用了spatial_attention来提取空间信息,这样使得得到的token紧凑,语义信息丰富。
根据这个semantic tokenizer的过程,我们就将backbone得到的特征图,转换为了具有高维语义信息的token,就可以送入transformer进行处理了。
在从孪生型的tokenizer网络得到两个token后,我们将两个token concact起来送到transformer的encoder进行特征提取。但其实作者还设计了代表位置信息的pos_token,其实这个position的token,在VIT中就有设计,因为transform把图片转成patch后,就丢失了patch和patch直接的空间联系了,所以需要加一个position token来表达这个先验知识(只不过在原版VIT中,作者做了实验,加和不加没有什么区别是了),但在BIT中,作者也做了实验,加了确实有效果,所以到底加不加这个position token,感觉还是和具体任务有关。
transformer解码器由MA(Multi-head Cross-Attention)和MLP组成。移除MSA模块(query、key、value从相同的输入序列取得),用MA模块取代(query来自图像原始特征,key和value来自token标签Ti_new)。
一些其他细节:
CNN骨干网:ResNet18。
BIT:transformer encoder(1个)和decoder(8个)的数量,MSA和MA中的head数是8。语义标签长度L是4。
Prediction head(预测头):先计算两个细化后的特征图Xi_new和X2_new的特征差分,再绝对值化,再用FCN进行融合生成预测的变化概率图。
Loss函数:交叉熵损失。
- 应用场景
遥感图像CD方法有两个主流:
- 两阶段: 先分别对两个不同时间的图像进行分类,再将分类结果进行对比。
- 单阶段: 直接将两个不同时间的图像进行融合,生成一个变化图。
本文的主要目的是以高效的方式学习和利用双时态图像中的全局语义信息,以提高CD的性能。
- 评估
4.1 评价指标
4.2 数据集
3个数据集:LEVIR-CD、WHU-CD、DSIFN-CD。
4.3 BIT模型
4.4 和其他方法的比较
- 增加BIT的增益大于卷积。
- 计算的复杂度和参数量都远低于以往的方法。
4.5 消融实验
对BIT中的3个主要组件(TE(transformer encoder)、T(tokenizer)、TD(transformer decoder))进行实验,分别验证了其有效性。
实验一将学习到的位置嵌入(PE)添加到transformer中,encoder和decoder,观察其性能。
实验二是语义标签的长度L,设置为4(最优)。
实验三是Transformer encoder和decoder的深度:Transformer encoder depth(E.D.)和 Transformer decoder depth(D.D.)
最优:E.D.=1,D.D.=8 。
- 结论
本文提出了一种基于Transformer的遥感图像变化检测模型:
1、BIT学习一组紧凑的标记来表示高级概念,这些概念揭示了双时态图像中存在的兴趣变化。
2、利用transformer在基于token的时空中关联语义概念,大量实验验证了该方法的有效性。
3、用BIT替换ResNet18的最后一个卷积阶段,获得了显著的精度改进(LEVIR-CD/WHU-CD/DSIFN-CD测试集F1分数的1.7/2.4/10.8分),计算复杂度降低了3倍,模型参数减小了3倍。实验证据表明BIT比单纯的卷积模更有效。
4、仅使用一个简单的CNN主干(ResNet18),方法就优于其他几种采用更复杂结构的CD方法,如FPN和UNet。
5、在三个CD数据集上,显示比最近四种基于注意力的方法在效率和准确性方面更好的性能。
- 附图
6.1 Token可视化
6.2 网络过程可视化