杜行奇
(1.三峡大学 湖北省水电工程智能视觉监测重点实验室,湖北 宜昌 443002;2.三峡大学 计算机与信息学院,湖北 宜昌 443002)
遥感变化检测是通过分析同一位置不同时相的遥感影像来获取地表变化信息的过程,是对地观测应用的关键技术,在环境监测、灾害评估、城市研究等领域有着广泛的应用[1-2]。随着遥感技术的不断发展,遥感影像的空间分辨率不断提高。高分辨率遥感影像能够提供更加丰富的地物信息和细节信息,地物的尺寸、形状和邻域关系得到更好地反映,极大地扩展了遥感变化检测的应用领域。
近年来,一些遥感学者尝试通过深度学习方法进行变化检测研究,并取得了一定的研究成果[3]。许多经典神经网络已被应用到遥感变化检测任务,并取得不错的检测效果。文献[4]采用Deeplab网络作为主干网,对比时序影像差异得到了变化检测范围,为自动化变化检测提供了解决方案。文献[5]利用时空融合模型重建遥感影像,并采用迭代加权多元变化检测算法对影像进行变化检测,得到了精度较高的变化检测精度。文献[6]提出了一种双注意力机制的全卷积暹罗网络,可以捕获特征间的依赖关系,获得更多特征表达。结合加权双边际对比损失函数解决样本不平衡问题,提高变化检测精度。文献[7]使用改进的双峰分裂阈值法对建筑物产生的阴影等做检测和去除,并结合随机森林方法对研究区域内地物进行分类,根据分类结果进行变化检测。
尽管许多深度学习方法的改进中使用了注意力机制[8]、多尺度特征融合[9-10]、改进特征提取网络结构[11-12]等操作来提高变化检测精度并降低参数量,但大多数方法是针对提取到的特征来进行分析和分类,许多特征已经在下采样过程中丢失。U型网络(Unet)[13]最早应用于医学影像分割中,近年来越来越多的研究人员将其运用到各种各样的图像处理任务中。以Unet为基础网络,增加多层次级联的增强U型网络(Unet++)[14]、上采样之前经过多尺度特征融合的特征金字塔网络[10]等都是以Unet为基本特征提取网络而改进的U型网络。本文基于Unet模型提出了一种多通道、多尺度融合的U型深度网络——MCFFNet。以Unet为基础结构,将其扩展为双通道网络结构。每次下采样时,都会使用双池化操作级联上层信息融合至本层。同时增加通道3以提取不同于通道1、2的全局特征。每次进行下采样时都会生成相应尺度的预分类影像来凸显变化区域,生成的多尺度预分类影像会将差异信息分为变化、非变化、不确定类并增强不确定类的比重进而增强网络辨别变化区域的能力。
在使用Unet模型进行训练时,5层下采样操作之间相对独立,下层的输入完全来自上层的输出,随着网络层数的不断增加,众多的中间过程会产生较多的累积误差。因此,本文使用双池化结构增加上下层的联系,并且每一次下采样都生成相应尺度的预分类特征图,以降低特征提取过程中的累积误差。另外,单独5个下采样层提取到的影像特征有限,所以本文将Unet扩展为双通道,用于分别提取两时期影像特征,然后又增加了第3通道提取不同于1、2通道的其他特征,深入挖掘影像多尺度特征。
图1为本实验方法MCFFNet的网络结构,是一种标准的编码器-解码器结构,其中主要包括三部分:① 多通道特征提取框架;② 预分类模块; ③ 多特征融合上采样部分。多个通道可以提取影像不同类型的特征,上采样时所融合的特征中包含比较丰富的变化部分的特征及浅层特征。另外,每层下采样时使用双池化操作可以减少特征丢失,增强变化部分的特征表达。增加预分类模块可以将浅层特征信息和每个尺度下的差异信息通过长连接复制到相应尺度的上采样部分,补偿下采样提取深度特征时的特征损失。下采样结束后,将提取到的特征融合然后不断反卷积,并在此过程中加入相应尺度的差异信息,最后一层上采样之后再经过一次卷积然后使用Sigmoid函数激活得到单次最终变化检测结果图。
图1 MCFFNet网络结构Fig.1 MCFFNet network structure
传统的Unet只有单个通道,一种特征提取模式,提取特征比较固定且容易丢失,而大多数双通道网络共享参数,提取到的特征多样化程度有限。为了解决这一问题,本文提出了由通道1、2、3以及双池化组成的多通道特征提取结构,其中通道1、2与Unet编码模块结构相同。
通道3注重提取与通道1、2不同的全局特征,使用不同的特征提取结构和激活方式。通道1、2使用连续的3×3卷积核扩大感受野,在通道3上本文加入了4×4卷积核对图像进行卷积,而后使用2次3×3卷积,与主通道相比扩大了感受野且卷积核数量从32开始,每次卷积时卷积核个数翻倍,一直到第5层卷积的512个通道。在此通道,本文用多层小卷积核取得了使用6×6卷积核一样的效果,但参数量大大降低并且增加了函数非线性程度,使判决函数更有判决性。同时每层卷积后使用Elu函数[15]激活,此函数不同于主通道使用ReLU函数,其激活范围更广并且不存在神经元失活问题,可以缩短训练时间并提高精度。使用双池化操作主要是解决单一模式的池化方法会丢失部分图像特征的问题。卷积提取特征时,在每一层的最后一次卷积之后会进行平均池化和最大池化双池化操作,然后将双池化后的特征融合作为下次下采样的输入,之后的每层都会有此操作。2种池化方式结合进行下采样会得到全局特征、细节特征、位置特征和空间特征融合的丰富特征影像。
通道1、2提取特征时,每次下采样得到的不同尺度特征图都会级联在一起,而上采样得到的信息是从深层特征反卷积而来,这时融合下采样过程中的浅层特征会丰富影像特征,可以赋予影像深浅层的特征信息。
增加差异特征信息可以强化变化区域,抑制伪变化,并可以有效地提高变化检测精度,所以在本实验中增加了差异特征提取模块。在第一层卷积后通道1、2分别得到大小为256 pixel×256 pixel×32 pixel的特征图,用式(1)进行运算后可以分出变化类、不变类,将其分别置为0和1而不确定类保持原值,置为0或1后的值对后续参数更新影响极小,促使网络更加关注于不易区分变化的数据、有较强的变化区域区分能力。
(1)
式中:i为1、2、3、4、5,Ai(out)为通道1第i个卷积模块的输出,Bi(out)为通道2第i个卷积模块的输出。
通道1、2每次下采样都使用预分类模块,下采样过程结束后可以生成5种尺度的差异特征图。当进行上采样操作时,反卷积操作会先将接收到的上层特征图恢复部分大小,然后将对应尺度的预分类信息融入其中进而凸显变化区域,抑制伪变化,以达到提高变化检测精度的目的。
本文中,使用基于二元交叉熵和Dice的混合损失函数[16](Loss),在上采样的最后得到变化概率后根据真实变化图计算损失,然后再通过反向传播来迭代训练网络中的参数直到满足迭代停止条件时停止迭代,保存迭代停止时参数用于生成变化检测图。损失函数如下:
Loss=Lbce+λLDice,
(2)
式中:Lbce为二元交叉熵损失函数,LDice为Dice损失函数,λ为平衡这2个损失函数的系数,在本实验中取0.5。
(3)
(4)
Lbce=Lbce1-Lbce2,
(5)
式中:β为未变像素在影像中所占比重,Y+、Y-分别为真实标签图像中变化像素和不变像素的数量,Pr(.)为像素j处经过Sigmoid层激活后的输出,yj为第j个像素的值。
(6)
为了检验所构建网络的特征提取能力及变化检测精度,本文使用CDD季节变化数据集和WHU建筑物变化数据集进行本次实验。
① CDD数据集在文献[17]中首次使用并公开,此数据集是变化检测领域最常用的数据集之一。数据集由谷歌地球获得7对分辨率为4 725 pixel×2 700 pixel的季节变化图像。根据实际情况手动分为4个季节的变化图像,分割获得了13 000幅大小为256 pixel×256 pixel×3 pixel的影像。每幅影像包括两时期的遥感影像及两时期遥感影像的真实变化图,空间分辨率为0.03~1 m,其中训练集为10 000幅,测试集为3 000幅。
② WHU建筑物数据集来源于文献[18],该数据集包含了近20万km2区域的12 796栋建筑,影像主要关注自2011年发生自然灾害重建后的区域。数据集包含2对高分辨率遥感影像,分辨率分别为21 243 pixel×15 354 pixel、11 265 pixel×15 354 pixel,并且该数据集只关注建筑物的变化部分,忽略了非建筑物变化部分。为了训练方便、快速,本文将2幅高分辨率遥感影像裁剪成256 pixel×256 pixel,裁剪后的数据集中包括训练集600对影像,测试集613对影像。
为评估MCFFNet变化检测方法的性能,在2组数据集上与7种近年来比较先进且有代表性的变化检测算法进行对比,包括:STANet、Unet++、Unet、DSIFN、Unet++MSOF、DASNet、DifUnet++。其中,Unet为U型网络的基础网络, Unet++MSOF、Unet++、DifUnet++则是基于Unet的变形与改进,其他对照方法改进来源非Unet。实验中使用Adam[19]优化器,学习率设置为1×10-5,训练批次为4,训练150轮后模型逐渐收敛。
对于实验评价指标,本文选用了变化检测领域常用的精度评价指标,包括准确率(Accuracy,Acc):分类正确的正样本个数占分类器分成的所有正样本个数的比例;精确率(Precision,Pre):以预测结果为依据,预测为正例的样本中正确的像素所占比例;召回率(Recall,Rec):实际样本为依据,正例样本中,被预测正确的正例占总实际正例样本的比例;F1值:平衡精确率和召回率。4种精度评价方法。
表1给出了8种不同方法在CDD数据集上的变化检测定量精度指标。图2给出了8种不同方法的部分实验结果,本文从每个方法中选取同样的3张变化检测结果,分别编号①~③,7种对照方法分别编号(a)~(g),(h)为本实验方法,(i)为影像真实标签。由表1可以看出,本文方法MCFFNet获得了4种评价指标最高值,其中综合评价指标F1值比精度最高的对照方法高出3.99%,比基础网络Unet高出13.08%。
表1 CDD数据变化检测定量指标
图2 各算法关于CDD数据的变化检测实验结果Fig.2 Change detection experiment results of various algorithms on CDD data
实验中的大多数方法可以将影像大致的变化区域与非变化区域区分开,STANet方法变化检测精度较低,只能检测出部分变化区域,并且变化区域相对模糊,缺失了较多的细节信息,其双注意力机制处理细微变化部分效率相对较低,所以其召回率和精确率都相对较低。Unet++和Unet方法可以恢复变化区域大致范围但特征提取能力不强,特征丢失较多。DSIFN可以检测出变化部分轮廓,但内部细节部分丢失较多,无法像DifUnet++方法在检出变化部分轮廓的同时对细节变化部分仍有较好效果。Unet++MSOF网络注重深浅层特征信息融合,可以将细节部分检测出来,但难以区分大面积变化区域间的非变化区域。DASNet方法可以比较清晰地区分变与不变类,但精细化程度不高,因丢失了较多细节信息导致召回率也相对较低。
图3给出了8种算法关于WHU建筑物数据集的变化检测结果。表2给出了各方法关于WHU建筑物数据集的变化检测定量指标。在此数据集中,所提出的MCFFNet明显优于其他7种对比网络。由图3可以看出,其能够检测出绝大部分变化区域,错检漏检相对较少,在表2中其F1值达到了91.00%,比DifUnet++要高出3.38%,比DASNet高出8.12%。4种评价指标均在此建筑物变化检测数据集中达到最高。
表2 WHU数据集变化检测定量指标
图3 各算法关于WHU数据的变化检测实验结果Fig.3 Change detection experiment results of various algorithms on WHU data
由图3和表2可以看出,DASNet在此数据集中表现不佳,其变化检测结果中出现了大量的错检区域,由于建筑物数据集只关注建筑物变化部分,所有在经过注意力机制后全部的变化区域将会被加强,所以错检、漏检区域相应较多。STANet使用的双注意力机制可以强化变化区域,所以错检相对较少但漏检较多。Unet++方法变化检测精度略有提升,错检比例相对DASNet方法减少了很多,并且其错检、漏检均限定在一定范围。DifUnet++和DSIFN在此数据集上仍然表现良好,在3幅实验影像中都能检测出绝大部分变化区域并且错检相对较少,无大面积错检、漏检区域。
本文提出了一种多通道、多尺度特征融合的深度U型网络MCFFNet应用于遥感影像变化检测任务中,使用遥感影像变化检测领域常用数据集——CDD数据集和WHU建筑物数据集验证了本方法的优异性,结论如下:
① 实验中扩展单通道Unet为双通道,然后加入通道3提取不同于通道1、2的特征,2种特征提取方式及双池化结构构成了多通道特征提取框架。在每次下采样过程中利用通道1、2来提取2幅影像的差异特征并将其分为变化、不变、不确定的3类预分类图用于凸显变化区域,并在上采样过程中级联至上采样部分补偿深层特征损失。多通道特征提取可以保证提取到的影像特征信息丰富,做到将绝大多数的变化部分特征提取出来。多种特征恢复措施使得网络可以区分较为精细的特征,做到大面积变化区域不错分、小变化区域不漏检。实验证明,此多通道特征提取框架可以有效提取图像全局和细节特征,有效提高了变化检测精度。
② 所提出的MCFFNet方法在CDD和WHU两个数据集上均取得了相对最优实验结果,在STANet、Unet++、Unet、DSIFN、Unet++MSOF、DASNet、DifUnet++这7种对照方法中获得了最高精度,4种精度评价指标均最高。
在基于深度学习的遥感影像变化检测方法中,影像深度特征的提取、深浅层特征融合以及变化区域的准确、完整提取是该领域中比较重要的研究方向。目前多数网络特征提取能力弱、无法做到多尺度特征融合,限制了变化检测精度的提高。本文提出的基于深度U型网络的遥感影像变化检测方法经过多种数据集验证表明,其可以有效提取影像深层特征;使用的预分类模块有力地提升了网络区分变与不变的能力;双池化结构加强了卷积层之间的联系,多次连续卷积产生的累积误差得以降低。经过上采样多尺度特征融合后,在多种数据集上得到了较优的变化检测结果。
在后续的研究中将针对如何降低训练集规模、自动选择少量重要样本并得到精度较高的变化检测结果进行一系列实验。