基于深度学习的卫星影像耕地变化检测方法及系统应用

2023-12-01 03:43魏汝兰王洪飞江一帆余亚芳
软件导刊 2023年11期
关键词:矢量图变化检测图斑

魏汝兰,王洪飞,盛 森,江一帆,余亚芳

(广东南方数码科技股份有限公司,广东 广州 510665)

0 引言

《中华人民共和国国民经济和社会发展第十四个五年规划和2035 年远景目标纲要》(简称“十四五”规划)指出要坚持最严格的耕地保护制度。快速发现耕地变化是耕地保护工作的关键一步,传统人工判读方式不能满足大批量影像实时监测的应用需求。近年来,深度学习尤其是卷积神经网络的快速发展,为遥感自动化监测提供了有力的工具[1-5]。

目前,基于深度学习的耕地变化检测已得到较为广泛的研究,主流方式是基于多时相的变化检测,即利用覆盖同一区域前后两个时期的遥感影像识别此区域内的耕地变化,具体可分为直接变化检测法和分类后比较法。直接变化检测方法是当前的热门研究课题[6-8],如:Zhang 等[9]采用孪生卷积神经网络,实现了更优对象轮廓保持的变化检测结果;王志有等[10]在孪生网络结构基础上进行改进,提出基于分支卷积神经网络的变化检测方法;梁哲恒等[11]采用多尺度特征注意力融合的变化检测方法,解决变化检测的多尺度问题。上述直接检测法在实验环境中均取得了较好效果,然而在现实场景中,直接变化检测方法面临两个问题:一是该方法要求前后两期影像需进行高精度配准和辐射校正[12],而且两期影像需尽量来自相同的传感器、相似的气候条件与气象条件,这在实际业务场景中很难满足;二是由于实际场景中耕地发生变化的图斑往往较少,正样本难以获取,导致以直接变化检测方式进行耕地变化提取将产生正负样本不均衡问题。分类后比较法[13]首先基于语义分割方法分别提取前后两期影像的耕地图斑,再通过叠加分析得出变化区域范围。此类方法检测的准确性很大程度依赖于分类准确性,而且叠加分析会累积两期影像的分类误差,因此距离落地应用还存在一定差距。

综合考虑上述问题,本文以耕地变化发现的工程化落地为目标,结合项目数据特点,提出了一种更贴合实际场景的耕地变化检测技术路线与方法。该方法对分类后比较法加以改进:首先使用耕地语义分割模型对后一期影像进行耕地提取,然后进行叠加分析,由于客户重点关注耕地减少图斑,因此提取的耕地图斑经后处理与前一期耕地矢量图斑做网格化的擦除处理得到耕地疑似减少图斑。本文贡献在于:①耕地语义分割模型研究方面,提出RABD模型:采用编解码结构,以ResNet101 作为模型骨干;加入空洞空间金字塔池化模块(Atrous Spatial Pyramid Pooling,ASPP)[14],提高模型感受野;引入双向加权特征金字塔模块(Bidirectional Feature Pyramid Network,BiFPN)[15],融合多尺度局部和全局特征,有效提升模型对边界的分割效果;②在与矢量图斑做擦除处理时,使用基于网格的变化区域分析算法替代传统矢量的叠加分析算法,解决了变化图斑细碎和计算效率低下等问题;③研制出一款适用于大规模工程落地的耕地变化发现系统,提升人工查找耕地减少图斑效率约70%,对基于AI的耕地保护项目落地具有重要意义。

1 方法技术

1.1 耕地语义分割模型

耕地语义分割模型是本文核心技术,目前语义分割的网络结构优化可分为两个方面:①提升提取特征效果,如早期的语义分割模型FCN[16]、DeepLabv2[17]、PSPNet[18]、DANet[19],采取了不同骨干模型作为特征提取器;②融合不同层次的特征,如Unet[20]、RefineNet[21]、SFNet[22]等模型,融合底层和高层特征,确保模型学习到更全面的语义信息。

本文提出耕地语义分割模型RABD(ResNet101+ASPP+BiFPN+Decoder),借鉴经典的语义分割模型Deeplabv3+编解码结构,以ResNet101 作为模型骨干,并且使用扩张卷积空间金字塔池化模块(ASPP),获取图像丰富的上下文语义信息,适用于遥感图像处理。同时,借鉴了EfficientDet 模型中加权双向特征金字塔模块(BiFPN),它允许简单快速地融合不同的层次特征,加强多尺度特征学习,有效改善了分割边界结果。模型结构如图1所示。

Fig.1 A semantic segmentation model for cultivated land图1 耕地语义分割模型

(1)ResNet101(骨干网络)。ResNet(Residual Networks)是深度学习中的一种重要网络结构,其核心思想是引入“残差连接”(Residual Connections),以便更有效地训练深度网络。本文选择ResNet101 作为骨干网络,它是ResNet 家族中的一个版本,具有101 层,它除能避免梯度消失/爆炸问题这种残差网络通用特性外,还有更深的网络但无需增加复杂性,也有更好的特征表示和更强的泛化能力等优越性能,已广泛应用于图像分割任务。

(2)ASPP 模块。本文在骨干网络最后一个卷积层连接了一个ASPP 模块,通过增大感受野获取语义上下文信息。在深度卷积网络中,感受野的大小能够大致体现出获取上下文信息的能力,但实际上模型深层的感受野范围很小,导致模型学习到的特征范围有限。而ASPP 模块可以增加感受野范围,提高模型分割精度,但不会增加模型的参数量。

(3)BiFPN 模块。本文采用双向加权特征金字塔网络聚合不同层次的特征表示,从骨干网络中提取2-4 级特征{L2,L3,L4},并采用自顶向下和自底向上的双向特征融合。

(4)Decoder 模块。对BiFPN 模块得到的不同层特征进行卷积和上采样至相同大小,再将不同层的特征连接起来,形成最终特征表示。最后,特征表示在经过卷积层卷积后,得到影像所有像素的预测值。

1.2 两期耕地图斑擦除处理方法

此处定义,获取到的用于擦除处理的前一期耕地图斑(一般为上一年度变更调查成果数据)为前期矢量图斑,基于最新一期影像,通过耕地语义分割模型提取并经过后处理的图斑为后期矢量图斑。

进行两期耕地图斑擦除处理时,针对未发生变化的耕地图斑,由于两期耕地图斑采集方式不同、配准精度问题等原因导致耕地边界存在对不齐的问题(如图2 所示,蓝色为前期耕地矢量边界,红色为后期耕地提取边界,彩图扫OSID 码可见,下同),直接叠加分析会带来大量细碎的伪变化图斑。

Fig.2 Comparison of the results of semantic segmentation reasoning for cultivated land between the previous and later periods图2 前后两期耕地矢量边界对不齐示意图

为解决上述问题,本文提出一种基于网格方式的两期耕地图斑擦除处理方法,具体流程如图3所示。

Fig.3 Two phase speckle erasure processing flow based on grid图3 基于网格的两期图斑擦除处理流程

(1)两期耕地矢量图斑分别网格化。将原有矢量空间划分为1 m×1 m 的网格,整个空间用长m、宽n的矩阵表示为A[m][n],计算每个网格是否在矢量区域内,如果位置为(i,j)网格的50%面积都被含在矢量区域内,则将矩阵A[i][j]的值设置为1,否则将此值设置为0。

(2)前期网格腐蚀处理。为解决边界误差,使用腐蚀算法处理前期网格,经过数据分析,耕地边界误差一般在15 m 以内,因此设置半径为15 m 的圆形核。

(3)后期网格碎图斑过滤。根据实际项目需求,利用联通区过滤,将小于50 m2的细碎图斑过滤掉。

(4)两期网格求差。先对两期网格的矩阵对应位置相乘,得到耕地不变区域网格,再使用腐蚀后的前期耕地网格A2 与不变区域网格做对应位置求差得到腐蚀后的变化区域D0,其过程计算公式为D0[i][j]=A2[i][j]-A2[i][j]*B2[i][j]。

(5)膨胀还原变化区。步骤(4)得到的为腐蚀后的变化区域,先通过联通区过滤掉面积小于20 m2的变化区域,再使用半径为15 m 的圆形核进行膨胀还原。

(6)最终变化区域求解。步骤(5)还原的变化区域会与后期耕地网格有一定重叠,去除这些重叠可得到最终变化区域,计算公式为D2[i][j]=D1[i][j]-D1[i][j]*B2[i][j]。

基于网格方式的两期耕地图斑擦除处理方法不仅有效解决两期耕地图斑边界对不齐导致的大量伪变化,而且计算效率比传统矢量计算方式更优。

2 实验与结果分析

2.1 实验区与数据集

本文以西南某省份3 个试点区为实验区,面积共18 279 km²,该地区以旱地为主,水田、水浇地有少量分布。数据采用在耕地保护中常用的0.8 m 分辨率的GF-2、BJ-2等高分辨率卫星最新正射影像以及上一年度变更调查成果中的耕地矢量图斑,两期数据已完成配准。

采集耕地语义分割模型样本,基于配套的土地利用变更调查耕地矢量图斑和影像数据,人工对耕地图斑进行修整,具体要求包括:①剔除耕地图斑内所有非耕地纹理的图斑(包括其他地物、云雾、阴影等与耕地无关的遮挡物);②在影像上呈现相同颜色与纹理特征的地块要保持分类一致,不可出现相同特征但一半为耕地一半非耕地的情况;③图斑矢量无覆盖、自相交、伪节点和多部件等问题;④边界误差控制在5 个像元以内;⑤最终成果保留所有200 m2以上的耕地图斑。

采集样本约230 424个图斑,如表1所示,覆盖了旱地、水田、水浇地3 种耕地类型,由于耕地的影像特征受季节影响明显,因此样本还覆盖各季度的影像数据。

Table 1 Sample collection for semantic segmentation of cultivated land表1 耕地语义分割样本采集

基于以上影像及标签数据制作了512×512 的样本共 49 176张,样本按照9∶1随机分成训练集与测试集。

2.2 评价指标

本文采用图像分割中的常用评价指标:准确率、召回率和F1分数,三者的数学定义分别如下:

其中,TP 表示正确分类的正类别数,FP 表示错误分类的正类别数,TN 表示正确分类的负类别数,FN 表示错误分类的负类别数。在本实验中,正类别代表耕地像素,负类别代表非耕地像素。

2.3 模型训练

采用CentOS 操作系统,基于Pytorch 框架结合Python语言完成环境搭建。模型训练的初始学习率、动量分别设置为0.01 和0.9,分别迭代1 万次、3 万次、5 万次后,学习率依次降低为0.001、0.000 1 和0.000 01,损失函数得到进一步收敛。

2.4 不同分割网络比较

为了证明RABD 网络有更好的分割效果,本文将其与SegFormer、Deeplabv3plus 进行对比实验,而为了选择更好的骨干网络,又对比了ResNet50、ResNet101,形成4 个网络在相同环境和数据集下进行训练。实验表明,ResNet101+Aspp+BiFpn 效果最优,具体比较结果如表2、图4 所示。图4 中,(a)为后期影像,(b)为耕地真值,(c)为SegFormer 耕地提取结果,(d)为Deeplabv3plus 提取结果,(e)为ResNet50+Aspp+BiFpn 提取结果,(f)为ResNet101+Aspp+BiFpn 提取结果。实验结果表明,在实际项目的数据集中,ResNet101+Aspp+BiFpn 分割结果比其他3 种模型结构拥有更完整的对象轮廓和更好的内部一致性,且准确率、召回率、F1分数均超过90%,具有落地应用价值。

Table 2 Evaluation indicators for semantic segmentation model of cultivated land表2 耕地语义分割模型评估指标(%)

Fig.4 Comparison of inference results for semantic segmentation of cultivated land图4 耕地语义分割推理结果比较

2.5 不同擦除分析比较

为验证基于网格的两期图斑擦除方法的有效性,将其与传统矢量叠加方法进行了比较。测试数据选择研究区1景40 000×40 000 像素的影像进行对比分析,结果如表3、图5 所示(其中,红色图斑为栅格擦除处理结果,其他为矢量擦除处理结果,彩图扫OSID 码可见)。可以看出,基于网格的叠加分析一方面大幅降低了伪变化图斑数量,另一方面性能也有了大幅提升。

Table 3 Overlay analysis results comparison of two methods表3 两种方式叠加分析结果比较

Fig.5 Comparison of two erasure processing results图5 两种擦除处理结果比较

3 软件实现及应用

3.1 软件实现

将耕地语义分割模型与两期耕地图斑擦除处理算法封装成耕地变化发现系统产品,其技术架构如图6 所示,主要包括推理与擦除服务和模型服务推理引擎。

Fig.6 Technical architecture图6 技术架构

系统的推理与擦除服务是基于Flask 框架构建,它使用了RabbitMQ 队列作为任务调度方式,确保了分布式推理和任务的并行处理。为保证数据的稳定性和完整性,选择Mysql 作为数据库,所有通信均基于Http 进行。该服务涵盖多个关键环节:预处理服务、Triton 推理、后处理服务和擦除处理服务。

模型服务推理引擎是基于Triton 构建。为确保快速和高效的数据处理,系统采用GPU 的分布式部署,并选择GRPC 作为通信方式。

关于数据存储,系统使用Mysql 数据库存储与任务相关的所有记录,包括但不限于任务的中间过程文件路径、最终推理结果路径和进度信息。更进一步,系统采用了Cephfs 和Nfs 分布式文件存储系统,以确保中间过程文件和最终推理结果的稳定存储。

为了充分利用可用的硬件资源并提高模型推理效率,影像的滑窗切片通过负载均衡模块被分发到各服务端节点加以处理。推理服务引擎进一步优化,采用了多核CPU、多GPU 以及容器之间的共享内存等硬件资源,以实现推理性能的整体提升。

在部署方面,系统配置了两个计算节点,每个节点都装载了3 块Tesla V100。实验数据显示,推理20 景大约30 000×30 000 的影像只需36 min 3 s。这意味着在3 天内可以完成全省约2 000 景的影像推理任务,完全能够满足省级用户需求。

3.2 应用情况

为测试软件的价值,选择某县2022 年一景GF-2 影像数据作为测试数据,比较人工判图、AI+人工审核两种方式的耗时与正确图斑个数,结果如表4所示。

Table 4 Comparison of indicators between two methods for detecting changes in cultivated land表4 两种耕地变化发现方式指标比较

人工智能提取的作用有两点:①缩短作业时间约70%(提升模型准确率还可进一步降低人工审核时间);②可发现人工容易漏检的小型建筑、道路等,如图7 所示(其中,红色图斑为AI 提取,黄色图斑为人工提取,箭头所指位置表示AI提取到而人工漏标的变化图斑)。

Fig.7 Comparison of two methods for extracting cultivated land图7 两种占耕提取方式比较

4 结语

本文以AI 耕地保护的工程化应用为目标,基于前期耕地矢量图斑与后期卫星遥感影像,利用深度学习语义分割模型和栅格化擦除处理算法,实现了耕地减少的精准智能化检测,为耕地的用途管制提供了新的思路,具有重要应用价值。不足之处在于,耕地语义分割模型由于水田、大棚、地膜等样本不足导致漏检,漏检的耕地图斑在叠加分析后误判为占耕,后续需有针对性地补充此类样本以降低占耕误检率,进一步提升耕地变化发现准确率。

猜你喜欢
矢量图变化检测图斑
地理国情监测中异形图斑的处理方法
用于遥感图像变化检测的全尺度特征聚合网络
Analysis of the line current differential protection considering inverter-interfaced generation station and countermeasures
基于C#编程的按位置及属性值自动合并图斑方法探究
基于多尺度纹理特征的SAR影像变化检测
土地利用图斑自动检测算法研究
基于稀疏表示的视网膜图像对变化检测
基于Landsat影像的黄丰桥林场森林变化检测研究
基于ArcGIS 10的土地利用总体规划图斑自动化综合
邻域平均法对矢量图平滑处理