基于ResNet 的遥感图像场景识别及分类技术*

2023-06-04 06:24朱杰凡张明虎罗锦晖
计算机与数字工程 2023年2期
关键词:准确率神经网络分类

朱杰凡 张明虎 丁 超 罗锦晖 顾 翼

(武汉数字工程研究所 武汉 430205)

1 引言

随着遥感技术[15]的发展,如今获取的遥感图像数据已经具备了高空间分辨率和高时间分辨率的特征。虽然,获得遥感图像数据变得越来越容易,但是针对图像数据进行的标注依旧是一个费时费力的问题。同时,随着遥感图像清晰度越来越高,图像包含的内容也越来越丰富,针对遥感图像分类准确率的要求也变得越来越高,如何快速准确地对遥感图像进行分类引起了各界学者的广泛关注。而遥感图像场景分类作为理解遥感数据的重要一环,无论是在民用还是军用领域都有着非常重要的作用,也一直是遥感图像领域的研究热点和难点。基于场景的分类方法,通俗来说就是将数据集中不同的遥感图像按照具有一定相似场景特征的图片进行分类,并打上正确的标签。合适的语义标签可以实现对遥感图像数据的有效分析和管理。如何有效描述遥感图像内容并实现高效分类已经成为一个具有挑战性的课题[9]。

2 军事领域下的图像场景分类需求

在现代战争中,作为获取军事情报的重要手段之一,遥感技术在军事领域中的地位变得越来越重要。遥感技术在军事上广泛用于军事侦察、导弹预警、海洋监视、武器制导、军事测绘、目标识别及定位、地形分析和制图等方面[14]。而遥感图像作为遥感技术中最重要的信息载体,针对遥感图像的各种研究都十分有意义且必要。有关遥感图像的场景收稿日期:2022年8月13日,修回日期:2022年9月25日作者简介:朱杰凡,男,硕士研究生,研究方向:图像处理。分类问题的研究便是其中之一。高分辨率遥感图像可以提供地面特征的详细边缘度量和分布特征,为理解最终目标场景解释和信息提取认知提供基础。这使得它在地形分析和制图等军事测绘方面有极高的参考价值。通过对遥感图像场景的分类,帮助人们更好地理解图像,从而掌握遥感图像的关键信息和绘制更好的作战地图。

3 遥感图像场景分类算法

图像分类技术[4,13]发展历史悠久,最早的分类方法是利用浅层的机器学习方法进行分类,但随着科技的发展和技术的进步,目前使用最广的是人工神经网络模型。而遥感图像的场景分类问题[7~8,10]在本质上也是一种图像分类问题,因此也能通过寻找合适的神经网络模型解决问题[12]。

3.1 传统神经网络算法

传统的人工神经网络算法通过利用计算机模拟人类学习的过程,由存储在网络内部的大量神经元通过节点连接权组成的一种信息响应网状拓扑结构,建立输入与输出数据直接联系的一种方法。这种方法在图像领域效果十分突出,国内外众多研究者研究出了各种各样的神经网络模型和算法,例如:BP 神经网络、前馈神经网络、卷积神经网络等一系列神经网络算法。但是在遥感图像场景分类问题上这些网络模型都不是最优模型。

3.2 ResNet网络算法

传统的神经网络在发展过程中,随着样本数量和复杂度的不断增加,网络层次和网络深度也随之不断加大、加深。从而引发了网络的“退化”,此时的模型错误率不降反升,优化也变得异常困难,最终导致网络模型无法达到预期。而ResNet网络[1~2]则不同,它是一种基于卷积神经网络的结构,在拥有常规网络结构的同时,更近一步增添了恒等映射层[3],通过使用这样的残差结构,ResNet 网络能够很好地克服由于层数、深度增加所引起的网络“退化”问题。

残差网络学习单元如下图所示,在该学习单元中有两种映射方式,一种是残差映射(residual mapping),其的输出结果是F(x),另一种是身份映射(identity mapping)其输出结果是输入本身x。经过学习单元后的最终输出结果为F(x)+x(即H(x),网络的最优解映射)。这样的结构能够保证即使当残差映射的输出F(x)为0 时,余下的单元结构就等效于一个简单的身份映射,使得网络的输出结果不会为0,从而确保网络的性能不会降低。因此本文采用ResNet 网络作为遥感图像场景识别分类的网络模型[11]。

图1 残差学习单元

4 场景识别、分类方法实现及实验

4.1 实验流程

总的实验流程如图2 所示,首先,对数据样本进行划分,将遥感图像数据样本分成训练集,测试集和验证集3 类。其中,训练集用于模型的训练;验证集用于监控模型在训练过程中是否发生过拟合情况;测试集用于最终检验训练的模型性能好坏。依照经验训练集、验证集和测试集中的样本比例控制在8∶1∶1。选用华中科技大学和武汉大学发布的遥感图像数据集AID 为主要数据集来源[5],从该数据集中选取包含机场、学校、山脉、江河、森林等15种不同场景的遥感图像共计5330张用于训练和验证网络模型。

图2 实验步骤流程图

图3 不同学习速率下网络损失函数的变化情况

其次,通过迁移学习的方法对搭建好的ResNet网络进行权重系数的初始化操作,并将训练集和验证集样本分批次通过输入端传入网络进行计算,得到网络的损失函数值和准确率,并根据网络计算值对网络各层权重进行优化调整。

最后,将测试集样本输入进训练好的网络模型中,在准确率、有效性等方面对模型的输出结果进行分析,最终得到符合期望的场景分类模型。

4.2 模型参数整定

使用迁移学习方法[6],利用PyTorch 框架中的预训练模型进行初始化,通过对其全连接层进行调整使得最终的收敛类别与期望相一致。在之后的仿真实验过程中发现学习速率大小的设置对网络训练过程中损失函数收敛的情况影响十分巨大,经过比对最终选择0.001作为网络的学习速率。

4.3 实验验证

图4 是训练集和验证集的正确率变化情况,通过数据集在网络上训练的结果我们可以看出,使用ResNet网络来进行遥感图像场景分类是可行的,在采用迁移学习的方法后,网络很快便得以收敛,最终的训练成绩也很突出,训练集和验证集的准确率都超过了90%。

图4 训练集和验证集正确率变化情况

从实验的最终结果可以看出,经过训练的ResNet 网络可以出色地完成针对不同场景的遥感图像的分类问题,预测精度高,完全可以达到与人相近的辨识能力。

5 数据及结果分析

由4.3 可知,实验中网络的准确率(acc)很高,但是实际分类问题中由于分类类别的数量过多会导致网络模型大多数类别的判定上准确率很高但在少数类别上的准确率不足的情况发生。因此,我们采用一种带有可以惩罚模型“偏向性”的指标——Kappa 系数,来验证本文方法的有效性。基于混淆矩阵的Kappa系数计算方式如下:

其中,Acc为总精度(网络实际准确率),acc_num为测试集中被准确分类的图片个数,all_num为测试集总体图片个数。

Pe定义为

a1、a2、a3…表示测试集中每一类样本的真实个数,b1、b2、b3…表示测试集实验中每一类样本的预测个数。

经过计算该方法在测试集上的总体精度和Kappa 系数如表1 所示,Kappa 系数值与分类问题的一致性关系如表2 所示,系数值越高,一致性越强。

表1 总体精度和Kappa系数

表2 Kappa系数值与一致性的关系表

根据图6,可以看到该分类方法虽然在面对农田(Farmland)和山脉(Mountain)两种标签的分类上表现不佳,但是面对大多数类别都有着极高的辨别准确率,且总体的准确度也高达93%。另一方面,该方法的Kappa 系数超过了0.9,表明该方法针对遥感图像场景分类的效果与实际分类结果的有很高的一致性。同时,对比参考文献[8]中的实验,准确率0.86、Kappa 系数0.85 的AlexNet 算法,本文方法效果更优秀,更适合遥感图像分类应用。

图6 测试集实验结果的混淆矩阵

6 结语

本文通过使用ResNet 深度学习模型,从具有丰富地面对象信息的高分辨率遥感图像中提取相应的场景语义特征,通过迁移学习方法实现用少量样本完成针对遥感图像数据集的场景分类。在战场评估、地形分析,军事制图等方面有广泛的参考意义和使用价值。网络准确率高过90%,且网络模型的分类效果与实际分类结果一致性高。但是,有时候人们得到的遥感图像中可能含有多个场景,因此,对图像中场景分类的研究也很重要,关于遥感图像场景分类等相关问题还有待更进一步的研究。

猜你喜欢
准确率神经网络分类
分类算一算
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
2015—2017 年宁夏各天气预报参考产品质量检验分析
神经网络抑制无线通信干扰探究
分类讨论求坐标
高速公路车牌识别标识站准确率验证法
数据分析中的分类讨论
教你一招:数的分类
基于神经网络的拉矫机控制模型建立