APP下载

基于CBAM和Unet的遥感影像水体识别

2024-01-01孙逊祝美宁宋金玲刘勇张思萱

环境科学导刊 2024年5期
关键词:语义分割遥感影像水体

摘" 要:使用Unet深度学习技术,引入注意力机制CBAM(Convolutional Block Attention Module)动态捕捉图像的关键特征信息,并根据每个通道的重要性自适应地调整注意力权重,增强水体识别模型的表达能力和性能。通过实验验证,相比Unet水体识别模型,CBAM+Unet水体识别模型识别的河流在宽度、走向、轮廓上更接近真实河流,而且对河流的边线识别也更加精细,该模型的准确率、精确率、召回率、F1值、Kappa系数各项指标分别达到98.24%、98.73%、99.32%、99.02%、89.77%,Kappa系数和 Unet相比提高8.52%,说明CBAM+Unet水体识别模型具有更高的识别精度和水边线提取能力。

关键词:水体; 遥感影像;语义分割;Unet;CBAM

中图分类号:X87 文献标志码:A 文章编号:1673-9655(2024)05-00-06

0 引言

随着遥感技术的发展,利用遥感影像进行水体识别开始应用在环境保护、水资源管理等领域中,如何提高水体识别的精度和可靠性对于保护和管理水资源具有重要意义。

传统的水体识别方法有阈值分割法[1,2]、边缘检测算子法[3,4]、数据挖掘法[5,6]、面向对象法[7,8]等,但是这些方法在准确性和效率方面存在一定的局限性。深度学习技术具有特征自主学习、避免人工干预、效果显著等优点,目前已广泛应用于图像的语义分割领域[9,10],而对遥感影像进行水体识别也属于图像语义分割,因此可以借助深度学习技术构建水体识别模型,以提高水体识别的精度和效果。

在处理遥感影像水体识别问题时,由于水体的形状和颜色特征多样且复杂,存在水体识别精度低、水边线提取能力欠佳的问题。为了解决这些问题,本文结合CBAM和Unet构建水体识别模型,以提高水体识别模型的性能和准确性。具体而言,在Unet的编码器和解码器中引入CBAM模块,用于引导网络学习更有代表性的水体特征,并通过融合多层次的注意力信息,更好地捕捉不同尺度下的水体形状和纹理细节,从而提高水体识别的准确性。

1 网络模型理论基础

1.1 Unet神经网络

深度卷积神经网络Unet[12]是一种常用于图像分割任务的卷积神经网络架构,它的特点是采用编码器-解码器结构有效捕捉不同尺度和语义的特征,整个网络可以看作是一个对称的U形结构,因此命名为Unet。

Unet的网络结构包括主干特征提取网络、加强特征提取网络、预测网络共计三个部分,如图1所示。

主干特征提取网络是提取输入数据高级特征表示的核心,由卷积层和池化层组成;加强特征提取网络能够进一步提取更好的特征进行特征融合;预测网络接受输入数据并通过学习来预测相关输出,对于图像分类任务,在利用有效特征层后需要进行通道数的调整,可通过一次1*1卷积实现。

1.2 注意力机制CBAM

CBAM注意力机制是卷积神经网络中广泛应用的一种自适应学习特征重要性的机制,可以提高网络性能。它由通道注意力和空间注意力两个模块组成,通道注意力模块用于学习各个通道在特征提取中的重要性并加权平均处理,空间注意力模块用于学习各个位置在特征提取中的重要性并加权平均处理。具体来说,CBAM的作用包括以下几个方面:①加强特征表示:CBAM的通道注意力机制可以自适应地调整每个通道的权重,提高关键特征的表达能力,强化模型在特征表示方面的能力。②凸显目标区域:空间注意力机制可以自适应地对特征图在空间维度上进行加权,从而能够凸显与主要目标相关的区域,抑制噪声和无关信息。③减少计算量:CBAM中的注意力机制可以帮助模型在训练中自适应地选择重要的特征通道和空间位置,从而能够在一定程度上减少计算量,提升模型的运行速度和效率。

1.3 CBAM与Unet的融合

已有研究表明,注意力机制可以通过加权较低级别的信息来提高视觉信息处理的效率与准确性[13]。为了进一步提升Unet在水体识别任务中的表现,可以将CBAM注意力机制添加到Unet的加强特征提取网络内,使网络能更加细致地进行特征选择和重要性评估,从而增强模型对水体的感知能力。

在Unet加强特征提取网络中添加CBAM的方法如图2所示。在编码器部分,CBAM可以被添加在每个卷积块之后,用于学习通道注意力和空间注意力,使得网络更关注对水体识别具有显著影响的通道,通过对特征图进行高斯卷积、全局平均池化等预处理操作,帮助网络更加准确地确定每个位置的重要性权重。这样的设计使网络能够更好地理解和利用特征图中水体的空间分布特征。

2 数据集制备

本次实验选取福建省闽江及其支流的水域作为研究区域,图3是研究区域的影像,所标注的影像。

在遥感影像的水体提取研究中,使用最广泛的是多光谱遥感影像数据,最常用的是中等空间分辨率的卫星影像,通常为5~200 m,本文采用Landset8卫星的历史遥感影像为数据源(下载地址为https://www.gscloud.cn/),空间分辨率为30 m,本文实验使用R、G、B 3 个颜色通道。

原始的遥感影像需要进行一系列的处理,以消除噪声、改善数据质量和准确地定位图像像元,以便从中提取所需的地物信息。本文使用ENVI 5.3对遥感影像进行预处理,图4为原始遥感影像,对遥感影像进行辐射定标、大气校正,可以得到如图5所示的影像,再对遥感影像中水体的不同区域进行裁剪,即可得到具有不同特点的水体样本。按照此方法本次实验共制作了240个样本作为训练集。

利用深度学习技术进行水体识别时,还需要对原始样本制作水体标注样本,样本标注是构建水体识别训练集的重要环节。本文使用labelme软件[11]来标注图像中的水体信息,图6为一个样本的标注过程。

3 实验设置

由于原始样本为.jpg文件、标注样本为.json文件,对样本数据集进行训练之前,需要将标注样本转换成.png标签文件,标签文件为8位彩色图。生成标签文件后,则可以将样本数据集按照9:1比例划分为训练集和验证集。

训练模型的参数设置非常关键,合理的参数设置可以提高模型的性能和效果,实验需要的参数及设置如下:①Num_class表示分类类别的数量,水体识别中水体作为一类、其他地物为一类,因此Num_class设置为2;②Epoch表示神经网络的迭代次数,通过实验对比,将Epoch值设置为50;③Batchsize表示批处理大小,设置为2;④学习率是每次迭代中参数更新的幅度,设置为Le-4;⑤激活函数采用了ReLU函数,它可以增加模型的非线性特性、提高表达能力和避免梯度消失问题;⑥损失函数用于衡量预测分割结果与真实结果之间的相似度,选用Dice Loss和Focal Loss作为损失函数;⑦优化器选取了Adam,因为它可以根据当前参数的梯度和其历史梯度来更新模型参数;⑧输入图像大小统一为256*256。具体如表1所示。

4 水体识别模型训练

参数设置完成后,就可以对水体识别模型开始进行训练,图7展示了CBAM+Unet水体识别模型在50个Epoch中损失函数值(loss值)的变化曲线,train loss代表模型在训练集上的loss值,而val loss代表模型在验证集上的loss值,图8展示了50个Epoch中平均交并比(mIoU)的变化曲线。

从图7中可以看出,trainloss和valloss在前10个Epoch中下降迅速,到第10个Epoch就降到了较低的水平且之后的变化幅度非常小。同时从图8中可以看出,mIoU值在前10个Epoch中迅速上升,到第10个Epoch达到了较高水平且之后变化幅度很小。这表明水体识别模型在训练早期阶段能够快速学习水体特征并取得较好的识别结果,说明CBAM+Unet水体识别模型的学习能力很强。

另外,实验中对每经过10个Epoch的验证集mIoU、平均像素准确率(mPA)、准确率(Accuracy)指标值进行了记录,具体如表2所示。从表2可以看出,mIoU、mPA、Accuracy值在第10个Epoch时已经达到了很高,后面随着Epoch的增加指标值提升不多,表明CBAM+Unet水体识别模型的训练过程中在验证集上表现良好、具有较高的准确性和性能,这对模型训练是一个积极的信号,说明水体识别模型已经学习到了数据的规律,并且能够较好地推广到未见过的数据上。

CBAM+Unet水体识别模型经过50个Epoch的训练后,最终得到训练好的模型。将训练好的模型进行保存,可以在有新的水体识别任务时加载模型进行预测。保存模型时通常将模型的权重参数保存为一个文件,这样可以在之后的预测过程中加载这些权重,保存模型权重不仅有助于减少存储空间,并且加载速度比较快。

5 模型评估

为了对CBAM+Unet水体识别模型的性能进行评估,另外选取三幅影像作为测试集,用该模型和Unet水体识别模型分别对水体进行识别,并对两种模型的识别精度进行对比。图9给出了原始图像和识别后的图像,其中,a行显示的是原始图像,b行显示的是Unet水体识别模型的识别结果,c行显示的是CBAM+Unet水体识别模型的识别结果。

将图9中b行和a行对应图像进行对比可以看出,图(b-1)、(b-2)、(b-3)中水体与图(a-1)、(a-2)、(a-3)中水体在长度上基本一致,但在宽度上却明显变窄,尤其是河流转角处相差较大,水体面积相比真实水域也明显较小。原始河流轮廓蜿蜒曲折,图9b中识别出来的河流轮廓却很平滑,说明Unet水体识别模型的识别精度较低,对水体边线的提取能力较差。

对比图9中c行和a行的对应图像可以看出,图(c-1)、(c-2)、(c-3)中水体在长度和宽度上和图(a-1)、(a-2)、(a-3)中的真实水体都具有较高的相似度,河流转角处与真实水体相差也较小,而且识别出来的河流曲折程度与真实河流相似度很高、流轮廓基本一致,说明CBAM+Unet水体识别模型的识别精度较高、水体边线的提取能力较好。

对比c行和b行的图像可以看出,c行图像的水体面积明显增大,而且河流转角处的边线也更加精细,河流弯曲情况、轮廓上更接近真实河流,说明CBAM+Unet水体识别模型相对Unet水体识别模型具有更精细的识别能力,识别的水体边线也更加清晰。

对图9中的水体识别结果,进一步利用混淆矩阵计算出Unet水体识别模型和CBAM+Unet水体识别模型的精确率Accuracy、准确率Precision 、召回率、F1值和Kappa系数等指标,评估两种模型的分类准确性和综合性能。

混淆矩阵是一个二维矩阵,由真正例TP、假正例TN、真反例FP、假反例FN四个元素组成,根据水体提取图像的预测结果与实际结果进行对比,可以统计出每种情况下的像元数量。各个评教指标的意义和计算如下:①精确率表示被分类为正例的像元中真正例的比例,计算方法如公式(1)所示;②准确率是正确预测的像元数量占总像元数量的比例,计算方法如公式(2)所示;③召回率表示被分类为正例的像元中真正例的比例,计算公式如(3)所示;④F1值是精确率和召回率的调和平均值,用于综合评估模型的分类准确性,计算方法如公式(4)所示;⑤Kappa系数用于衡量分类的一致性,其中考虑了随机分类精度Pe,Pe的计算方法如公式(5)所示,Kappa系数计算如公式(6)所示。

(1)

(2)

(3)

(4)

(5)

(6)

根据图9中测试集的水体提取结果,构建二分类混淆矩阵后,进一步计算出精确率、Kappa系数、召回率和F1值如表3所示。

由表3的评估结果可以看出,CBAM+Unet水体识别模型的精确率、准确率、召回率、F1值和Kappa系数值相比Unet水体识别模型都有明显提高,说明CBAM注意力机制的引入明显改善了Unet在水体识别任务上的性能。具体来说,准确率的提高说明CBAM+Unet水体识别模型能更准确地识别水体区域、减少了错误的分类;精确率和召回率的提高,代表CBAM+Unet水体识别模型在识别正分类(水体)时更加准确;F1值提高表明CBAM+Unet水体识别模型的综合性能更好;Kappa系数的明显提高(提高8.52%),代表水体分类结果与实际情况之间的一致性得到了显著的提升。

6 结 论

针对水体识别模型在水体边线提取和水体判别准确性不佳的问题,通过在Unet中加入CBAM注意力机制,结合通道与空间特征分析,提高水体识别模型的整体精度。实验表明,CBAM+Unet水体识别模型与Unet水体识别模型相比,在遥感影像的水体提取任务上表现出了更好的精度和性能,能够更好地提取图像特征,提高水体分割精确度、分类准确性和一致性。说明CBAM+Unet水体识别模型具有较高的应用价值和优越性能,可以为水环境监测与保护、水资源管理等实际应用提供支持和参考。今后,将尝试使用其他深度学习技术构建水体识别模型,进一步提高水体识别模型的精度。

参考文献:

[1] 吴一全, 孟天亮, 吴诗婳. 图像阈值分割方法研究进展20年(1994–2014)[J]. 数据采集与处理, 2015, 30(1): 1-23.

[2] LU S L, WU B F, YAN N N, et al. Water body mapping method with HJ-1A/B satellite imagery[J]. International Journal of Applied Earth Observation and Geoinformation, 2011, 13(3): 428-434.

[3] 顾智, 贾培宏, 李功成, 等. 基于Canny算子的海南陵水双潟湖岸线提取技术[J]. 第四纪研究, 2016, 36(1): 113-120.

[4] 庄翠蓉. 厦门海岸线遥感动态监测研究[J]. 海洋地质动态,2009, 25(4): 13-17.

[5] 李秀梅, 袁承志, 李月洋. 渤海湾海岸带遥感监测及时空变化[J]. 国土资源遥感, 2013, 25(2): 156-163.

[6] QU G Z, YU Q Z, WANG Y F. An improved method for SAR image coastline detection based on despeckling and SVM[C]// IET International Radar Conference 2013. Xi’an: IET, 2013: 1-6.

[7] TOCHAMNANVIT T, MUTTITANON W. Investigation of coastline changes in three provinces of Thailand using remote sensing[C]//ISPRS Technical Commission VIII Mid-Term Symposium 2014. Hyderabad: ISPRS, 2014: 1079–1083.

[8] GE X Z, SUN X L, LIU Z Q. Object-oriented coastline classification and extraction from remote sensing imagery[C]// Remote sensing of the environment: 18th National Symposium on Remote Sensing of China. Wuhan: SPIE, 2014, 9158: 91580M.

[9] 许玥, 冯梦如, 皮家甜, 等. 基于深度学习模型的遥感图像分割方法[J]. 计算机应用, 2019, 39(10): 2905-2914.

[10] 李越帅, 郑宏伟, 罗格平, 等. 集成Unet方法的无人机影像胡杨树冠提取和计数[J]. 遥感技术与应用, 2019, 34(5): 939-949.

[11] 曹洁, 罗菊香, 李晓旭. 融入类别信息的图像标注概率主题模型[J]. 计算机工程与应用, 2017, 53(10): 187-192.

[12] CHEN J X, YANG L, ZHANG Y Z, et al. Combining fully convolutional and recurrent neural networks for 3D biomedical image segmentation[C]//Proceedings of the 30th International Conference on Neural Information Processing Systems. Red Hook: Curran Associates Inc., 2016: 3044-3052.

[13] 宋廷强, 李继旭, 张信耶. 基于深度学习的高分辨率遥感图像建筑物识别[J]. 计算机工程与应用, 2020, 56(8): 26-34.

Water Body Recognition by Remote Sensing Images based on CBAM and Unet

SUN Xun1, ZHU Mei-ning1, SONG Jin-ling1, LIUYong2, ZHANG Si-xuan2

(1. School of Mathematics and Information Technology of Hebei Normal University of Science amp; Technology, Hebei Agricultural Data Intelligent Perception and Application Technology Innovation Center, Qinhuangdao Hebei 066004,China)

Abstract: In order to solve these problems, this paper used Unet deep learning technology to introduce the attention mechanism CBAM (Convolutional Block Attention Module)to dynamically capture the key feature information of the image, and adaptively adjust the attention weight according to the importance of each channel to enhance the expressive ability and performance of the water body recognition model. Through experimental verification, compared with the Unet water body recognition model, the river recognized by the CBAM+Unet water body recognition model was closer to the real river in width and direction and contour. The river edge recognition was much better. The accuracy, precision, recall, F1 value and Kappa coefficient of the model reach 98.24%, 98.73%, 99.32%, 99.02% and 89.77%, respectively, and the Kappa coefficient was increased by 8.52% compared with Unet, indicating that the CBAM+Unet water body recognition model indicated higher recognition accuracy and water edge extraction ability.

Key words: coastline; remote sensing images; semantic segmentation; Unet; CBAM

基金项目:河北省省级科技计划资助(21370103D);2023年度河北省高等学校科学研究项目(ZC2023123);河北省软件工程重点实验室项目(22567637H);河北省软件工程重点实验室开放课题(KF2307);河北省农业数据智能感知与应用技术创新中心开放课题(ADIC2023Y006, ADIC2023Y004, ADIC2023Y005)。

作者简介:孙逊(2000-),男,河北沧州人,硕士研究生,研究方向为实体智能识别。

通信作者:宋金玲(1973-),女,河北滦州人,教授,博士,硕士研究生导师,研究方向为数据库安全与数据分析处理。

猜你喜欢

语义分割遥感影像水体
农村黑臭水体治理和污水处理浅探
生态修复理念在河道水体治理中的应用
基于积神经网络的图像着色方法研究
基于全卷积网络FCN的图像处理
基于语义分割的车道线检测算法研究
基于语义分割的增强现实图像配准技术
广元:治理黑臭水体 再还水清岸美
遥感影像资料在海图制图中的应用研究
遥感数字图像处理课程实验综述
卧龙湖湿地遥感调查和演变分析