无需编码即可使用 ArcGIS Pro 中的深度学习进行基于像素的分类

本文提供了在 ArcGIS Pro 中使用深度学习执行基于像素的分类的简明指南,而不是编写代码来构建深度学习模型。

我们将介绍从数据准备和模型训练到分类和可视化的基本步骤。无论您是 GIS 专业人员还是遥感专家,本教程都将帮助您利用深度学习完成地理空间项目。

我的训练图像来自 2022 年 4 月,覆盖台湾整个 石门水库集水区。它使用具有 4 个波段(R、G、B、NIR)的 Spot-6 影像。我添加了一个 5m DEM 来计算坡度作为附加波段,使其总共有 5 个波段。图像经过预处理,单元大小为 1.5m,深度为 8 位。

由于测试影像为2024年3月拍摄,覆盖石门水库集水区部分区域,波段排列相同,已进行预处理,确保所有栅格信息与训练样本相符。

步骤 1.下载深度学习包

第一步,我们需要下载DL包。下载链接

选择与您的ArcGIS Pro版本匹配的版本,
然后双击**.msi**文件解压并安装。

步骤2.数据准备和预处理

确保图像正确预处理(例如,缩放像素值),以便训练和测试图像共享相同的参数,包括像素大小、像素深度、波段数和坐标系。

您可以将特征图层添加到训练样本中 ,然后合成它们。
只需确保测试样本具有相同的波段排列即可。

步骤3.将对象标记为训练样本。

成功安装该软件包后,"深度学习"功能将在"图像"选项卡中可用。

加载训练样本前,请确保同一类别的所有样本拥有相同的类别编码、类别名称、类别值(类别值不能为0)。(编辑完成后记得导出样本。)

单击"标注深度学习对象",然后选择现有影像图层。然后单击加载训练样本。
加载样本后,选择所有类别 并单击**"编辑类别属性"**。

单击**"标注深度学习对象"** 并选择现有影像图层,然后加载训练样本。
加载后,选择相同的类 并单击**"编辑类属性"**。

在"定义类"面板中,选择**"添加新类"** ,输入类NameValue(值不能为0),然后单击"确定"。

单击导出训练数据 ,将输出文件夹更改为您的位置,并将元数据格式 更改为基于像素的分类。Classified Tiles

其他参数可以调整,我保持默认**,** 然后点击运行。
输出文件夹将包含两个文件夹和四个文件

步骤 4.开始训练你的深度学习模型

打开训练深度学习模型工具。
(Image Analyst 工具/深度学习)

选择包含训练数据的文件夹(4 个文件和 2 个文件夹)。
设置输出模型位置。
将模型类型更改为U-Net (Pixel Classification)
在数据参数中,将"mixup"从 false 更改为True

保持其他所有参数为默认设置。

您可以访问网站查看每个论点的详细解释!!

训练深度学习模型 (影像分析师) --- ArcGIS Pro | 文档深度学习参数 --- ArcGIS Pro | 文档

训练完成后,输出文件夹将包含四个文件和一个文件夹。
该**.dlpk**文件是主模型,我们将使用它来测试样本。
我们可以打开 html 文件,它显示了模型的性能。

我使用的真实数据由于图像扭曲而存在一些问题;但是,我们可以看到该模型仍然可以检测到正确的滑坡覆盖区域。

在损失图 中,我们观察到两条线:蓝线表示训练损失 ,橙线表示验证损失
随着训练周期数的增加,两条曲线都呈现下降趋势,表明模型正在学习并逐渐提高其性能。当损失值稳定时,表明模型的训练已达到收敛并且没有过拟合。

至于Precision、RecallF1(F1-score),则来自于混淆矩阵的概念,都是用来评估模型性能的。

来源:性能指标 | Vaibhav Jayaswal 著 | Towards Data Science

Presion = TP / (TP + FP),
表示在所有预测的阳性结果中,有多少百分比是真正的阳性。

召回率 = TP / (TP + FN),
表示在全部阳性样本中,预测为阳性的占比。与 TPR(真实阳性率)相同。

F1-Score = (2 * 准确率 * 召回率) / (准确率 + 召回率)
它是准确率和召回率的调和平均值。它同时考虑了假阳性和假阴性。因此,它在不平衡的数据集上表现良好。

步骤 5. 现在是测试的时候了!

打开使用深度学习分类像素 工具。
(图像分析工具/深度学习)

输入预处理后的测试影像,确保其与训练样本的栅格信息相匹配。

设置输出位置并将**.dlpk上一步中的文件输入到模型定义中。
保留其他参数为
默认值** ,然后单击运行
(此外,如果可用,请转到环境并将处理类型设置为 GPU)

通过这样做,您将看到模型对测试样本的预测。

相关推荐
LDG_AGI1 小时前
【推荐系统】深度学习训练框架(八):PyTorch分布式采样器DistributedSampler原理详解
人工智能·pytorch·分布式·深度学习·算法·机器学习·推荐算法
泰迪智能科技3 小时前
图书推荐分享 | 堪称教材天花板,深度学习教材-TensorFlow 2 深度学习实战(第2版)(微课版)
人工智能·深度学习·tensorflow
小徐xxx9 小时前
Mamba架构讲解
深度学习·mamba·学习记录
koo36410 小时前
pytorch深度学习笔记
pytorch·笔记·深度学习
java1234_小锋12 小时前
基于Python深度学习的车辆车牌识别系统(PyTorch2卷积神经网络CNN+OpenCV4实现)视频教程 - 裁剪和矫正车牌
python·深度学习·cnn·车牌识别
koo36412 小时前
pytorch深度学习笔记1
pytorch·笔记·深度学习
慕ゞ笙13 小时前
2025年Ubuntu24.04系统安装以及深度学习环境配置
人工智能·深度学习
java1234_小锋13 小时前
基于Python深度学习的车辆车牌识别系统(PyTorch2卷积神经网络CNN+OpenCV4实现)视频教程 - 车牌矩阵定位
python·深度学习·cnn·车牌识别
_codemonster16 小时前
深度学习实战(基于pytroch)系列(三十六)循环神经网络的pytorch简洁实现
pytorch·rnn·深度学习
自然语16 小时前
人工智能之数字生命-学习的过程
数据结构·人工智能·深度学习·学习·算法