作物类型分类是农业中的一项常见任务。作物类型分类的主要目标是创建一个地图/图像,其中每个点都将有一类生长在那里的东西,如下图所示。有很多方法可以解决这个问题。然而,探索最多的方法之一是使用遥感数据。
图 1——作物类型分类图示例
有很多关于作物类型分类的文章——其中一些研究了使用多时相图像的可能性——这意味着拍摄图像的时间序列而不是一个日期的图像。其他人研究使用多光谱图像、组合来自不同卫星的图像以及改进模型本身的机会。
在我们的案例中,我们使用来自 Sentinel-1 和 Sentinel-2 卫星的多时相图像作为模型输入数据。至于模型,我们使用了一种更常见的分割任务模型架构——Unet,以及 Conv-LSTM。
数据集准备
用于训练模型的数据集包括:
1. 标签——来自CropScape的2019 年生长季数据。
2. 模型输入——Sentinel-1 和 Sentinel-2 卫星图像的时间序列。
作物景观
- 前 10 个最常见的类被用作目标,我们将所有其他类标记为背景。大豆和玉米类是这些前 10 类的一部分,也是我们审查的主要作物类。
- 一些不太频繁的类别必须合并为一个类别以实现更高的准确性,例如,必须将几种类型的森林(混合、落叶、常绿)合并为一个类别。对于不同强度级别的城市地区,遵循相同的程序。
- 训练、验证和测试期间使用的最后一组类别如下:玉米、大豆、休耕/闲置农田、城市地区、森林、草地/牧场和背景。
哨兵一号
- 我们只下载了 Sentinel-1 图像的 GRD 产品。
- 使用具有 VV 和 VH 极化的两个 S1 波段。
- 我们使用 ESA SNAP 工具箱对 Sentinel-1 图像进行预处理。此预处理的主要目的是运行 Sentinel-1 图像的地形校正以及噪声去除。
- 在 SNAP 预处理之后,Sentinel-1 图像被归一化,使值从 0 变为 1。
有关使用 Sentinel-1 图像的更多详细信息,您可以阅读我们关于 Sentinel-1 预处理的博客。
哨兵2
- 仅下载了 Sentinel-2 图像的 L2A 产品。
- 使用了十个 S2 波段(蓝色、绿色、红色、近红外 (NIR)、四个红边波段和两个短波红外 (SWIR) 波段),并计算了另外两个常用于遥感的波段 — NDVI 和 NDMI .
- 所有 12 个波段都被归一化,使值在 0 到 1 的范围内。
如果您对 Sentinel-2 图像感兴趣,可以阅读我们的博客,了解我们用于下载 Sentinel-2 图像的工具。
数据平铺
下载卫星图像并进行预处理以供训练期间使用。必须将大 Sentinel 图像拆分成更小的图像(图块)(图 1)。我们过滤掉了云百分比高于 20% 的 Sentinel-2 瓦片。Sentinel-1 瓦片保持原样。在训练循环期间,如果多个 Sentinel-2 图像重叠并且具有单一采集日期,则将仅拍摄其中一个图像以避免数据重复。
图 2——瓦片覆盖范围
造型
输入特征
如上所述,我们使用了来自 Sentinel-2 的十个波段、两个额外的索引波段和两个来自 Sentinel-1 的波段。我们在实验期间使用了它们,并且没有使用子集进行实验。图像块为 192x192 像素,在训练期间,对它们应用了一些基本的增强,例如裁剪、翻转、旋转和调整大小。数据集被分成训练集、验证集和测试集,比例为 70/20/10。必须实施采样策略来训练成批的图像时间序列。这将使我们能够将相似长度的序列分组为一批。
模型架构
使用了本文中描述的一种架构——2D U-Net + CLSTM。每颗卫星都有其编码器-解码器-CLSTM 模型,然后将每个卫星的输出连接起来并传递到最后的线性层。文章中模型的架构如图 3 所示。
图 3 — 模型架构
超参数
使用交叉熵损失和Dice 损失的加权组合训练模型。Adam 被用于参数优化,学习率的起始值为 0.003,经过 20 个 epoch 的训练后,它降低到 0.0003。所有模型总共训练了 40 个时期。
实验
F1 分数指标分别在每个类别的像素级别计算,以评估在进行的实验中训练的模型。我们只选择作物类的指标,因为它们是我们的主要类,而其他类是补充类,以提高模型在作物类上的性能。
使用不同的卫星图像组合
表 1 — 根据使用的卫星组合比较模型性能,使用 30 米分辨率的 5 个月卫星数据。
如您所见,Sentinel-1 和 Sentinel-2 的组合为我们的作物类别提供的结果比仅使用 Sentinel-2 稍微好一些。
使用不同的输入分辨率
表 2——基于输入分辨率的模型性能比较。使用了 Sentinel-1 和 Sentinel-2 图像。
我们比较了两个不同日期范围内的两个输入分辨率。在这两种情况下,1000 万分辨率的结果都优于 3000 万分辨率,而最好的是从 4 月初到 8 月底的 5 个月覆盖范围。
使用不同的时间框架
表 3 — 根据采集数据的月数比较模型性能,Sentinel-1 和 Sentinel-2 均以 10m 分辨率使用。
并进行了最终实验,以确认整个夏季生长季节都能提供最佳结果,并且如果时间间隔减少,则可以匹配模型性能。事实证明,4 个月的范围变化会降低准确性,但没有 3 个月范围的情况下那么差,这意味着植物实际上可以收获的月份远不如收获的月份重要。植物正在积极生长。
结论
因此,描述了我们的数据集准备和建模方法。以下来自我们得到的实验结果:
- 光学图像 (Sentinel-2) 和 SAR 图像 (Sentinel-1) 的组合比仅使用光学图像提供更好的结果。
- 较高分辨率的图像 (10m) 比 30m 分辨率提供更好的结果。
- 涵盖生长季节的日期范围比较短的日期范围要好得多。
希望您对我们解决作物类型分类的方法的描述感兴趣。如果您有任何问题或意见,请将它们留在下面的评论部分。