变化检测DSCN论文介绍

Change Detection Based on Deep Siamese Convolutional Network for Optical Aerial Images

该篇论文利用Siamese网络作为特征提取网络,为了利用像素点之间的信息关系添加了KNN算法用来提高变化检测性能。由于本篇论文提出时间较早,很多方法已经不适用,但其思想指的借鉴。
该篇论文提出的损失函数添加了频率用来解决数据不平衡(变化的像素点数量往往远小于未变化的像素点数量),在利用特征网络进行特征提取后添加了KNN和使用Transformer、CBAM都是为了更加精细的寻找变化点。

举个例子,一个地方一年前没有楼但现在有了一栋楼,在一年前和现在各拍一张照片,利用KNN、Transformer、CBAM等,如果成功标记了楼的一个像素点,那么便可以根据像素点之间的关系标记整栋楼。

在这里插入图片描述

一、变化检测

变化检测根据对同一物体或现象在不同时间的观测来确定其不同的处理过程。遥感影像变化检测的研究目的是找出感兴趣的变化信息,滤除作为干扰因素的不相干的变化信息。现有绝大多数变化检测应用中,常用的方法仍然是目视解译和人工手动勾画,需要耗费大量人力及时间,处理效率低下。变化检测的方法和理论模型有很多,如代数法、分类法、面向对象法、时间序列分析法和可视化法等。现有的检测方法没有哪一种是适合所有场景的。
变化检测没有通用的流程,但主要覆盖数据预处理、变化检测方法、阈值分割、精度评定等方面。

比如给定两张一年以前的卫星图像和一张一年后的卫星图像,一年前图像中的有些东西可能在一年后消失了,如被河水淹没的岛屿;也可能在一年后出现了新的东西,如新的建筑物。变化检测的目的就是找出这些发生了变化(消失或出现)的地方,并标注出来。标注图可以是一个二值图,1表示发生了变化,0表示没发生变化。最简单的方式就是两图做差,然后取绝对值。

我们要得到的是一个二值图,一个简单的方法是设置一个阈值,小于该阈值的,就认为没发生变化,即在两张图中是相同的东西。还有一个方法就是先对两张图像中的物品进行分类,比如分成草地、河流、建筑物等等,然后将得到的分类图做差。

二、预备知识

1.Siamese network

孪生神经网络用于处理两个输入"比较类似"的情况。伪孪生神经网络适用于处理两个输入"有一定差别"的情况。比如,我们要计算两个句子或者词汇的语义相似度,使用siamese network比较适合;如果验证标题与正文的描述是否一致(标题和正文长度差别很大),或者文字是否描述了一幅图片(一个是图片,一个是文字),就应该使用pseudo-siamese network。也就是说,要根据具体的应用,判断应该使用哪一种结构,哪一种Loss。
下图为本文采用的Siamese network的网络结构图,其中为了让得到的特征图和差异图尺寸一样,卷积层采用都是采用3x3的卷积核。
变化检测DSCN论文介绍_第1张图片

2.直方图匹配

该方法现在不常用了,故不具体介绍。

3.KNN

变化检测DSCN论文介绍_第2张图片变化检测DSCN论文介绍_第3张图片
简单的说,对于特征图上的每一个点已经得到了所属类别(0或1),接下来,每个点根据周围8个点的类别值根据投票机制进行投票。这样便充分利用了像素点之间的关系。

三、网络结构

变化检测DSCN论文介绍_第4张图片
网络结构比较简单,这里不过多介绍。近期阅读变化检测的相关论文发现这个框架和很多论文相似:利用神经网络(resnet、Siamese network等)作为backbone进行特征初步提取,接着利用某种方法(Transformer、CBAM等)进行进一步提取。

四、损失函数

变化检测DSCN论文介绍_第5张图片
变化检测DSCN论文介绍_第6张图片
损失函数引入了频率用来改善数据不平衡这一问题。

五、实验结果

变化检测DSCN论文介绍_第7张图片
变化检测DSCN论文介绍_第8张图片

你可能感兴趣的:(基于深度学习的变化检测,深度学习,人工智能,计算机视觉)