张成才,郭少华,罗蔚然,杨 峰
(1. 郑州大学水利科学与工程学院,河南 郑州 450001; 2. 河南省出山店水库建设管理局,河南 信阳 464000)
及时精确地获取水库流域地表覆盖空间分布信息,对于流域水土保持、生态环境评估及水库优化调度等具有重要现实意义。地表覆盖分类从早期侧重于影像光谱特征的统计学分类方法[1-4]到近些年注重影像空间上下文信息的深度学习分类方法[5-8],分类精度有了较大提升。近年来,图神经网络因其对任意结构数据的处理能力而受到越来越多的关注。与常规卷积神经网络(Convolutional Neural Networks ,CNN)中的参数共享和固定形状的卷积核不同,GNN 可以根据土地覆盖的具体分布学习自适应核参数,并对任意不规则的土地覆盖区域进行灵活卷积。因此,GNN 被用于学习不同土地覆盖类型之间的相关性,并在图上对其空间拓扑进行建模。GNN 最早由Gori 等人[9]提出, Bruna 等人[10]根据谱域特性将卷积从欧式空间迁移到频域中进行,在每个图节点的邻域上卷积并产生节点输出。Defferrard等人[11]在光谱图论的背景下提出了使用K阶近似的切比雪夫多项式计算拉普拉斯矩阵的基。左溪冰等人[12]通过K 近邻构图,利用图卷积网络聚合不同样本点的特征, 提高影像在小样本条件下的分类精度。上述方法均为谱域中的图卷积运算,谱域卷积中的邻域节点是固定,增加或者删除节点会导致模型失效,空域卷积能够直接在空间定义卷积操作,领域节点的选取更加灵活。Hamilton 等人[13]提出了“图形空间”的归纳框架,Petar 等[14]提出使用注意力机制动态更新邻居节点的聚合权重,Kipf 和Welling[15]提出了一种快速近似局部卷积,使得图卷积神经网络模型能够编码图形结构和节点特征。Chen[16]等人改进层级聚合关系,增加了邻接矩阵自节点的权重。Liu[17]等人提出选择一条对图中目标节点最有贡献路径,通过对这条路径上的节点信息有选择的聚合获得节点的最终表示。Lu[18]等人提出“空间对齐图卷积网络”,将任意大小的图通过传递对齐,转化为固定大小的图结构。Wan[19]等人提出利用图卷积过程动态变化的图结构替代固定的节点关系。
GNN 不受固定卷积核限制,可以对影像内任意空间位置光谱特征进行聚合,对于复杂且不规则地表覆盖类型更有优势[20]。稠密网络通过稠密连接加强网络特征传递[21],它能够有效获取影像的高阶空间上下文信息。Huang等[22]人最早提出了稠密网络,通过特征复用减少图像局部信息的损失,使得DenseNet 在目标分类中取得较好的分类效果。林志伟等[23]人提出了FC-DenseNet,利用稠密块提取遥感图像特征,有效提高了低空航拍光学图像对树种的识别率。Sha等[24]人通过将稠密网络进行改进,将SET 块嵌入到稠密块中,实验表明该方法可以有效提高建筑物得提取效率与精度。陈毛毛等[25]人提出一种将稠密网络与残差网络融合的新网络,通过建立多个密集卷积块最大程度对特征进行极致利用并提取丰富特征,从而实现光谱信息的高保真并提高空间细节分辨能力。为了充分融合影像的光谱和空间特征,提出了一种双分支的图卷积融合网络,它能够利用图的拓扑结构对节点信息进行融合表达,其中图的节点为影像中的像元,图的边为相邻节点之间的关系。在构建邻域节点之间逻辑关系时,GNN 根据权重实现对目标像元多阶邻居光谱信息的有效聚合;DenseNet 通过稠密块组合提取空间信息与高阶语义信息;然后在维度上Add 操作融合光谱信息和空间信息,最后利用Softmax线性分类器实现分类。以河南省出山店水库区域为研究区,使用2019 年2 景sentinel-2 影像和DEM 数据进行实验,与RF、GNN、DenseNet 分类结果相比,Dual-GCFN 模型将地物之间的光谱差异和像元间的空间关系结合,大幅减少了地物的错分现象和分类图中的点状噪声。本文所提出的方法能够获取更具鉴别力的特征表达,提高地表覆盖分类精度。
河南省出山店水库是一座大型防洪控制工程,位于河南省与湖北省接壤处。研究区范围为出山店水库坝址以上2.86 km的主河槽及两侧支流组成的子汇水区域,面积为628.95 km2,具体地理位置为东经113°65'~114°06'、北纬32°12'~32°48',海拔范围51~1 122 m。研究区内西南高,植被覆盖度较好,中部地区多为丘陵山地,西部存在少量平原耕地,坡度范围在1°~5°之间。研究区内的地表类型主要有耕地、园地、林地、草地、湿地、建设用地及水体等,在研究区内均匀选择4个矩形区域进行样本制作,研究区概况如图1所示。
图1 研究区概况Fig.1 Overview of the study area
使用的Sentinel-2 卫星遥感数据从哥白尼网站(https:∕∕scihub.copernicus.eu∕)获取。遥感数据的成像时间分别为2019 年9 月30 日和2019 年6 月19 日,两景遥感影像质量较好、云量低于1%且能够覆盖整个研究区,Sentinel-2 的Level-2 级产品已经过了几何精校正和大气校正,用SNAP 软件将空间分辨率为10 m的波段2、3、4、8进行合成并裁剪。研究区内的林地和耕地具有相似的光谱特征,使用高程数据增加不同地物之间相似光谱的区分度,使用的高程数据(Digital Evelevation Model,DEM),来源于阿拉斯加卫星设备(Alaska Satellite Facility,ASF):https:∕∕search.asf.alaska.edu∕#∕,ALOS PALSAR 是高级陆地观测卫星,DEM 影像为空间分辨率12.5 m 的数字高程产品,通过ENVI对DEM数据重采样为10 m。具有相同空间分辨率的两景Sentinel-2 影像与DEM 数据,作为本文研究区分类使用的基础数据。
根据我国《土地利用现状分类》GB∕T21010-2007 规范(标准),结合研究区的实际情况,将研究区地表覆盖类型分为五类:建设用地、耕地、林地、水体和草地。以高精度Google Earth影像(下载自软件91卫图助手)和实地调查为参考,在研究区内随机选择四个子区域进行精细化标注,以高精度谷歌影像作为底图,在ArcGIS中进行全标注的矢量绘制。样本所在位置如图1中所示,样本数量共计10万个,标注结果如图2所示。为了更好的检验方法的性能,本实验随机采用10%的样本作为模型的训练、10%的样本作为测试。
图2 样本库Fig.2 The sample library
传统卷积神经网络以像元空间邻域作为输入,无法充分学习样本的高阶语义特征,并且未考虑样本间的拓扑结构信息。以DenseNet模型为基础提取高阶语义特征,利用GNN聚合样本间邻域节点的光谱特征信息,Dual-GCFN 网络结构如图3所示,其中BN指批归一化处理,Relu指激活函数。网络主要由3部分组成:①基于GNN 的光谱聚合模块,依据光谱值构造邻接矩阵表征遥感影像的全局信息。k=1表示与目标节点(红色节点)直接相连的一阶邻域进行聚合,k=2 表示在一阶邻域节点聚合的基础上进行的二次聚合,k=3 表示在二次聚合的基础上进行的第三次聚合。利用节点与节点的邻域信息不断聚合,得到节点的多阶邻域信息的聚合表达;②基于DenseNet 的空间特征提取模块,DensNet 层通过稠密块将不同尺度的特征信息Add 连接,提取高阶语义信息;③特征融合模块,分别将GNN 提取的光谱特征和DenseNet 提取的空间特征进行Flatten 展开,并在维度特征上进行Add 操作,从而实现空谱特征的融合,最后输出节点关于每类地物的概率,最大概率为样本节点的地物类别。
图3 Dual-GCFN网络结构Fig.3 Dual-GCFN Network Architecture
GNN 是一种基于图域分析的深度学习方法,主要用于非规则数据的特征提取。定义G=(V,E),其中V和E分别表示顶点集和边集。其中,顶点集V由遥感影像的像素点组成,边集E由任意两个顶点(Vi与Vj)之间的相似性Vij组成。利用KNN[26]遍历所有的样本点,取与目标样本最近的k个点作为近邻,只有和目标样本距离最近的k个点才能相连,A∈RNXN为图G的邻接矩阵,表示顶点之间的关系,N指样本节点的数量,邻接矩阵中的元素由径向基函数计算,本文采用自连接的邻接矩阵表示节点之间的关系,表达式如式(2):
式中:向量xi、xj为顶点Vi、Vj相关联的光谱;σ为控制RBF 宽度的超参数;I为单位矩阵。
GNN 训练构造邻接矩阵,需要同时输入影像的所有像素,导致网络梯度下降缓慢。本文以小批量miniGCN[27]进行邻域节点采样,构造一个批次大小为M(M≪N)的随机节点采样器,利用小批量样本训练网络改善梯度更新缓慢的问题。使用标准化的邻接矩阵作为邻域节点的聚合权重,这种标准化的策略所提供的是一种加权平均,所实现的效果是会给予那些具有低度的结点更大的权重从而降低高度结点的影响。为了提高网络的非线性学习能力,采用全连接的方式进行GNN 的构建,将每一层的输出节点重新聚合作为下一隐含层的输入,其中GNN模型的第l+ 1层更新规则如式(3):
DenseNet 由稠密块和转换层组成。稠密块包含稠密层和瓶颈层,瓶颈由1 × 1 卷积核组成,作用是调整输入特征通道数量及融合通道方向特征;稠密层由多层密集连接的卷积层组成,目的是提取影像的高阶语义信息,图4 为卷积层数为4、每层卷积的通道数(增长率)为4 的稠密块。其中,X0的输入为像元的空间邻域,X1的输入为经过第一层卷积输出,X2的输入为前面二层卷积的输出,X3的输入为前面三层卷积的输出。转换层位于两个稠密块之间,由卷积层和池化层组成,其中卷积层是用来控制稠密块之间的通道数量,池化操作降低特征图的尺寸。
图4 稠密块Fig.4 Dense block
稠密块通过稠密连接将前面层与当前层特征叠加映射,传递给所有后续层,实现特征高效复用。DenseNet 网络中稠密块表示如式(5):
式中:Xl为第l层的输出特征图;Conl为第l层中卷积的复杂线性变换,[X1,X2,…,Xl-1]为l层前面所有层的特征映射拼接。
将GNN 最后一层隐含层节点数目调整为同稠密网络特征输出节点数目一致,再将GNN与DenseNet的输出特征信息一维展开,在通道维度上进行Add操作如式(6):
式中:α表示超参数,用于平衡全局的光谱信息及空间信息之间的比重关系;为GNN 第l层的输出为DenseNet 第l层的输出。将融合的空谱特征输入到两层全连接网络,首先将变形为Hl∈RN×C',再将矩阵输入到两层的全连接网络中,进行式(7)运算:
式中:Pi∈RC表示影像中第i个节点的输出值;W i1∈RN×C',表示这两个全连接层的网络参数;C为类别数。对节点进行预测使用交叉熵损失函数,网络反向传播调节所有参数,优化函数使用SGD,损失函数最小模型训练达到最优。损失函数如式(8)所示:
式中:N是子图中像元的个数为200;yL是样本像素点的索引集合;C是输出特征图的个数即遥感影像土地利用类别数;Yik是指真实样本标签的索引;Pik是指预测样本标签的索引。
网络模型实验参数设置如下:RF 选择200 棵决策树;Dual-GCFN中GNN按照miniBatch采样,批次大小M设置为200,邻居数量k取10,邻居权重的径向基核函数参数σ根据经验选择0.05,图卷积层数为3;DenseNet 中像元邻域大小为7×7,网络包括3 个稠密模块,稠密块中设置6 个卷积层为BN +ReLU+Conv(3 × 3),3个稠密块的通道增长率分别设置为(12,12,24) ,每个稠密块后有一个转换层,转换层为1×1×(64,128,256)卷积;全连接层神经元的个数分别为256、128。为了保证实验结果的公平性,GNN 和DenseNet 网络结构和参数设置与Dual-GCFN 中分支模型相同;网络的迭代次数设置为1 000,网络以20 个epoch 为周期应用指数衰减动态更新学习率,初始学习率设置为0.005,使用动能SGD算法对模型参数进行优化。
使用2019 年Sentinel-2 影像数据和DEM 数据进行地表覆盖分类。为了评估Dual-GCFN 的分类性能,与RF、GNN 及DenseNet 分类模型进行对比实验,四种方法的地表覆盖分类结果如图5所示。
图5 4种方法的地表覆盖分类结果图Fig.5 Classification of land cover results for 4 methods
图5 可以看出RF 和DenseNet 存在较多点状噪声,而Dual-GCFN 的分类结果则较为平滑。因为RF 是基于单个像元的光谱特征进行分类,并未考虑像元空间关系;DenseNet 主要是两方面原因,一是窗口捕获的感受野有限;二是DenseNet 未考虑地物之间的光谱关系,当地物光谱重叠度较高时,分类也会出现点状噪声的现象;Dual-GCFN 模型将地物之间的光谱差异和像元间的空间关系结合,大幅减少了地物的错分现象和分类图中的点状噪声。为了进一步比较各个模型的分类效果,图6 列出了两个局部区域分类结果的放大图,图6(a)位于研究区中西部,椭圆框中RF、GNN、DenseNet分类结果中建设用地出现其他地物类型,矩形框中建设用地左边的水体只有Dual-GCFN 正确划分。图6(b)位于研究区的东南部,RF 将林地误分为建设用地,GNN 将耕地误分为林地,DenseNet 中存在少量林地误分为耕地的情况。综上,Dual-GCFN 对地物的区分度较高,分类效果优于其他3种方法。
图6 局部分类结果比较Fig.6 Comparison of local classification results
采用总体分类精度(Overall Accuracy, OA)、Kappa 系数、生产者精度(Producer's Accuracy,PA)和用户精度(User's Accuracy,UA)作为评价标准,利用混淆矩阵计算的分类精度结果如表1所示。
表1 不同方法分类精度%Tab.1 Comparison of classification accuracy of different methods
从表1 看出, RF 的分类精度和Kappa 系数都是最低,分别为74.66%和为0.61,DenseNet 的分类指标优于RF 与GNN,其中,OA和Kappa 系数分别增大了11.32%、6.21%和0.18、0.16,说明局部特征能够大幅度的提高地物分类正确率;Dual-GCFN 的总体分类精度和Kappa 系数最高,分别为90.63%和0.87,相较于DenseNet 分类其OA和Kappa 系数分别提高了4.65%和0.08,说明全局光谱特征信息对于分类精度提升有重要作用。Dual-GCFN 结合地物光谱差异和像元空间关系的优势,增强了影像的表达能力,能有效区分地表覆盖类型,提高影像分类精度。
(1) 收敛性分析。为了检验Dual-GCFN 模型的收敛性,将网络的迭代次数设置为1 000,在每次迭代过程中记录对应的损失及精度变化情况,结果如图7所示。从图7(a)中可以看出,随着迭代次数的增加,网络损失在最开始急剧下降后逐渐稳定,稳定后训练损失始终低于模型的验证损失,从图7(b)中同样可以看出,随着迭代次数的增加,模型的精度逐渐增加,直至趋于稳定,稳定后验证精度始终低于训练精度。随着迭代次数的增加,学习率不断衰减,精度曲线的变化速率逐渐降低,虽然在后期模型产生轻微的震荡,但模型收敛时精度及损失变化相对稳定,说明指数衰减的学习率策略在一定程度上能够保证模型的稳定性。同时,通过观察损失和精度变化曲线能够发现Dual-GCFN网络设置为1 000次能够满足影像的分类要求。
图7 网络损失函数曲线图Fig.7 Network loss function curve
(2)特征分析。为了进一步验证GNN 的表征学习能力,在训练过程中对每一层网络输出进行高维特征可视化,本文采用t-SNE 算法[28]对高维空间特征点进行降维可视化,计算得到不同地物之间的二维空间特征,结果如图8 所示:图中5 种颜色分别代表5 种地物类型,从左到右依次为原始特征空间下样本的二维分布图情况,经过一层、二层、三层GNN的样本分布情况,5种颜色分别代表5 种地物类型。图8 中可以发现在原始特征空间下不同类别地物特征易于混淆,随着网络层数的不断增加,混合在一起的五种地物逐渐分开到不同簇将进行聚类。即同种地物之间类内差异逐渐降低,不同地物类间差异逐渐增加,当网络达到收敛条件时,相同地物特征聚集,不同地物特征分离,从而增加网络的判别能力,提高影像的分类精度。
图8 GNN隐含层样本分布Fig.8 Determination of the number of GNN layers
(3)模块性能分析。Dual-GCFN 主要由GNN 和DenseNet两个模块组成,为研究不同模块对网络性能的影响,对不同模块分别进行了精度验证实验。在研究区样本数据集中随机选取每种类别的5%、10%、15%、20%、25%及30%作为训练集,等比例的数据作为测试集。从图9 可以看出Dual-GCFN 算法的分类精度和Kappa 系数始终高于单一网络模型,主要因为DenseNet网络可以提取更加抽象的语义信息,而GNN 仅考虑光谱特征聚合,并未考虑像元空间关系,导致GNN 分类性能低于DenseNet。Dual-GCFN 能够有效提取并融合遥感影像的全局信息和空间上下文信息,使得特征表达能力增强,提升了遥感影像的分类精度。
图9 Dual-GCFN算法的消融实验Fig.9 Ablation experiment of Dual-GCFN algorithm
以河南省出山店水库区域为研究区,采用2019 年9 月30日、6月19日的Sentinel-2影像和DEM 数据作为基础数据,利用提出的双分支图卷积神经网络(Dual-GCFN)方法对研究区进行地表覆盖分类。首先,基于KNN利用光谱值构建标准化邻接矩阵,GNN 聚合邻域特征更新目标节点信息;DenseNet 对影像局部块进行卷积提取抽象语义信息,将GNN提取的全局特征与DenseNet 提取的抽象特征进行Add 融合,经过全连接层后输入Softmax分类器进行分类。得到如下结论:
(1)通过图卷积聚合节点之间拓扑关系提取光谱间的全局相关性,DenseNet 提取高阶语义信息,使得Dual-GCFN 在地表覆盖分类中提供了更有鉴别能力的特征表示。相比于RF、GNN、DenseNet,Dual-GCFN 分类效果最好,其总体精度OA为90.63%、Kappa 系数为0.87,证明了该方法用于遥感影像分类的有效性,遥感影像光谱信息与空间信息的互补性能够有效改善遥感分类结果。
(2)在模型训练前不同类别地物特征易于混淆,随着网络层数的不断增加,同种地物之间类内差异降低,不同地物类间分离度增加。并通过每类地物5%、10%、15%、20%、25%及30%的训练集数据进行训练,Dual-GCFN 算法的分类精度均优于单一网络模型DenseNet和GNN。
双分支图卷积神经网络(Dual-GCFN)方法能够有效融合遥感影像的空间信息和光谱信息,对水库区域的地表覆盖分类取得了较好的分类效果,但影像的构图方式决定了图卷积的聚合信息,进一步将继续研究如何更加灵活的定义邻居节点的聚合方式,实现地表覆盖的精确分类。