论文阅读(五):Active fire detection in Landsat-8 imagery: A large-scale dataset and a deep-learning study


  论文标题:Active fire detection in Landsat-8 imagery: A large-scale dataset and a deep-learning study(Landsat-8图像中的主动火灾探测: 大规模数据集和深度学习研究)
  论文链接:点击跳转
  论文代码:Github
  论文目的:本文引入了一个主动火灾探测的新的大规模数据集来弥补火灾探测领域缺乏用于评估的数据集问题,该数据集从2020年8月和9月在世界各地捕获的 Landsat-8图像中提取了超过150,000个图像块(patches,大小为256x256)。该数据集分为两部分,包含10波段光谱图像和相关输出:

  • 1.由三种著名的火灾检测算法(Schroeder、Murphy及Kumar)制作而成。
  • 2.由手工注释的掩码生成。

除此数据集外,还研究了如何使用不同的卷积神经网络来近似Schroeder、Murphy、Kumar及它们组合算法对火灾像素的分割能力。

1.Introduction

  主动火灾探测领域的研究重点在于提供适当的方法来确定多光谱图像中给定像素是否包含火灾。由于不同的卫星相关参数不同(包括轨道高度、传感器种类等),因此必须为每个卫星系统专门设计相应的火灾检测算法。如,Landsat8卫星的主动火灾识别方法就应用了Schroeder、Murphy及Kumar提出的火灾检测算法。

  利用深度学习技术进行主动火灾识别是一个相对较新的领域,目前还缺乏大规模的数据集和评估体系结构。本文的目的在于:

  • 1.引入遥感火灾检测的公共数据集,由全球8194张 Landsat-8图像构建,包含亚马逊地区、非洲、澳大利亚、美国等地区的火灾事件。该数据集包含了10 波段光谱图像和由三种成熟的火灾检测算法(Schroeder、Murphy及Kumar)生成的相关输出。
  • 2.引入了辅助数据集,其包含从Landsat-8火灾图像中提取的9,044个图像块(patches,大小为256x256) ,以及手动注释的火灾像素(用于评估模型分割的性能)。
  • 3.提出了使用卷积神经网络实现火灾检测的算法,包括通过减少分析的光谱波段数量来节省带宽资源的可能性,以及结合多个火灾探测输出来产生更强大的探测结果的方法。
  • 4.将上述的火灾检测算法与使用CNN的探测算法、人工手动标注方式进行比较。

2.Materials

  本研究共处理了8194张Landsat-8图像(像素大小为7600x7600),使用Schroeder、Murphy及Kumar三种检测算法自动生成了火灾像素的分割掩码。在下文介绍三种算法时,中设 ρ i ρ_i ρi为通道 c i c_i ci的反射率,对于Murphy、Kumar两种检测算法,反射率根据太阳天顶角进行了修正(Schroeder的并未修正)。

2.1Schroedef et al. conditions

  Schroeder等人提出了一组条件,使用7个Landsat-8通道( c 1 − c 7 c_1-c_7 c1c7)来识别活跃的火灾像素,若满足以下所有条件,则像素被分类为true (fire),否则被分类为false (nonfire):

  • 1.第一组条件:

在这里插入图片描述
其中, R i j R_{ij} Rij为通道 i i i与通道 j j j的反射率之比( ρ i / ρ j ρ_i /ρ_j ρi/ρj)。

  • 2.第二组条件:以每个候选像素为中心,使用61 × 61像素的邻域,放宽上述条件以考虑区域上下文,提出第二组条件:

在这里插入图片描述
其中, μ μ μ σ σ σ表示61 × 61窗口像素邻域中像素的均值和标准差。计算这些标准差时不包括火和水像素,后者按如下方式进行分类:
在这里插入图片描述

2.2Murphy et al. conditions

  Murphy提出了一种不依赖上下文区域像素的方法,即,不依赖于从每个像素的邻域计算的统计数据,而是基于通道 c 5 、 c 6 、 c 7 c_5、c_6、c_7 c5c6c7。明确的活火像素需先满足:
在这里插入图片描述
其中, R i j R_{ij} Rij为通道 i i i与通道 j j j的反射率之比( ρ i / ρ j ρ_i /ρ_j ρi/ρj)。而在明确的火灾附近(3 × 3邻域内)的潜在火灾也被归类为火灾像素。潜在火灾是指满足以下条件的火灾像素:
在这里插入图片描述

2.3Kumar-Roy conditions

  Kumar和Roy(2018)提出的条件基于通道c2−c7,明确的火像素应当满足:
在这里插入图片描述
并将符合上述条件分类的火灾像素附近紧邻8个像素且满足更宽松条件的火灾像素作为明确的火灾像素,该条件如下:
在这里插入图片描述
  潜在火灾像素则需满足:
在这里插入图片描述
并且只有在满足上下文测试的情况下才能保留:
在这里插入图片描述
其中。 R 75 R_{75} R75为通道 7 7 7与通道 5 5 5的反射率之比( ρ 7 / ρ 5 ρ_7 /ρ_5 ρ7/ρ5),而 μ μ μ σ σ σ为候选火焰像元周围领邻域像素的均值和标准差。此上下文测试与Schroeder有两个不同条件:

  • 1.用于检测水像素的条件不同

在这里插入图片描述

  • 2.区域大小并不固定。邻域可逐渐增大(5 × 5、7 × 7、9 × 9等,最大可达61 × 61像素),但当区域包含至少25%未被分类为明确或潜在火灾或水的像素时停止,这些像素在计算平均值和标准差时也会被排除在外。

  但在原始论文中没有解决的一点是,当方程检测到包含大面积潜在火灾像素时,假设邻域大小为61 × 61,由于候选火灾像素大多被排除的像素包围,也会使得因包含25%的未明确像素而停止,这就使得上下文测试变得不可靠。一般情况下,我们将这种情况视为非火灾,否则会使算法非常容易产生错误检测。

2.4Segmentation masks

  • Segmentation masks:分割掩码,一种用于将图像中的某些特定区域与其他区域分开的图像处理技术。

  使用了三种阈值算法在原始图像(7600x7600)生成了火灾掩码。之后将该数据集裁剪为256x256大小的图像块(patches),并将这些数据集公开。其中,共包含146214个被裁剪图像(256 × 256像),大约180GB(未压缩),以及由上面讨论的三组条件产生的相应分割掩码(大约28GB)。这些图像都是10波段( c 1 、 c 2 、 . . . 、 c 7 c_1、c_2、...、c_7 c1c2...c7 c 9 、 c 10 、 c 11 c_9、c_{10}、c_{11} c9c10c11,不包括空间分辨率为15m的全色通道 c 8 c_8 c8)、16位的tif图像。
  下图中给出了具有活火的图像样本在三组条件下对应的分割掩码,可见三种算法在一定程度上对火焰的存在大致一致,但是在像素分割上存在一定差异。可观察出,Murphy所设置的算法条件对低强度的火焰更加敏感。
在这里插入图片描述

2.5Manually annotated dataset

  本研究选择了13幅Landsat-8图像(约为7600x7600像素)并将其分割为大小为256 × 256像素的图像块(patches),对每一张图像中的火灾像素均进行手工标注,以验证训练的模型。这些图像中有10张含有活跃的火灾,并且具有不同的云层和火灾属性(强度、范围等),其余三张图像没有火灾信息,但每一幅都至少会在其中一组条件下产生过误报信息:一幅来自撒哈拉沙漠,Schroeder算法发生误报,一幅来自格陵兰岛,Murphy算法和Kumar算法发生误报,还有一幅来自城市(米兰),三种算法均会在大型城市居住区内发生误报。
  下图中,左侧为2020 年 9 月 8 日拍摄的美国加利福尼亚州 Landsat-8 图像,共别出55386个活动火灾像素。其中主要野火之一使用红框在左上角标出(面积为22x22千米,约10000个活动火灾像素),右下角即为人工标注的掩模:
在这里插入图片描述

3.Methods

3.1Convolutional neural networks for active fire detection

  本研究的目的并非为主动火灾探测设计稳健且高度优化的 CNN 架构,但需要证明在所提出的数据集上训练的CNN能产生类似传统算法的效果(证明卷积神经网络在遥感火点检测问题上的可行性),故采用了UNet网络作为训练模型。U-Net 是一种全卷积网络,有两个对称的半部分,第一部分是池化操作,用于降低数据分辨率,第二部分是上采样操作,用于将数据恢复到原始分辨率。 前半部分提取基本特征和上下文,后半部分允许对每个特征进行精确的像素级定位,两部分之间的跳转连接用于将某一层的特征与更深层的抽象特征相结合。
  本研究使用的网络架构如下:
在这里插入图片描述

其与U-Net结构基本相同,但本研究在每个卷积层之后增加了批量归一化,并包含额外的dropout层,这有助于避免过拟合问题,并与误差在训练过程中的传播方式有关。

  除此之外,本研究还考虑了UNet结构的三种变体:

  • 【1】:U-Net(10c):基本的U-Net结构,输入为包含 Landsat-8 图像所有波段的 10 通道图像。
  • 【2】:U-Net(3c):基本的U-Net结构,但输入替换为仅包含 c 7 、 c 6 、 c 2 c_7、c_6、c_2 c7c6c2波段的三通道图像,以检查是否在依赖较少波段数的情况下获得足够好的近似结果。下图中展示了使用Landsat不同波段数据时产生的差异:
    • 左侧中使用 c 2 、 c 3 、 c 4 c_2、c_3、c_4 c2c3c4通道,右侧使用 c 2 、 c 6 、 c 7 c_2、c_6、c_7 c2c6c7通道,。可见,左侧图像中只能看到烟雾,而在右侧图像中火光清晰可见。
      在这里插入图片描述
  • 【3】:U-Net-Light (3c):三通道U-Net 的缩小版,每层滤波器数量除以 4(即第一层 16 个滤波器,第二层 32 个,等等),是原始U-Net网络的轻量级版本。

  上述三种结构的参数信息如下(输入通道数、可训练参数数、模型大小、每一图像块训练所需时间):
在这里插入图片描述
  模型输出是 256 × 256 大小的单通道二值图像,其中 1 和 0 分别代表火灾和非火灾位置。 为了获得这些二进制输出,CNN 的输出被设置了阈值,任何输出超过0.25的像素都会被设置为1(这一阈值是在对数据集的一小部分进行初步测试后根据经验确定的)。

  本研究中使用了五种条件下生成的数据集训练三种UNet模型:三种算法考虑的条件各作为一组,以及它们的交集和“投票”集合(即,至少两组条件同意掩码中的像素是火灾像素,则将其设置为火灾像素):
在这里插入图片描述

3.2Implementation and experimental setup

  将数据集patches分为训练、测试、验证集,比例为0.4、0.5、0.1,使用Adam优化器、批次大小设为16、二进制交叉熵函数作为损失函数,每一模型训练50轮或验证集上的损失在5个周期内都没有改善时停止训练。下图为UNet(3c)模型使用交集掩模训练的结果,可见,10轮次后损失值趋于稳定:
在这里插入图片描述

4.Results and Discussion

4.1Performance on the automatically segmented patches

  将50%的图像patches(包括三种阈值算法数据集、投票掩模数据集、交集掩模数据集)用于训练模型,其余图像patches用作模型测试,以此来验证模型在多大程度上能近似这些阈值算法及其组合的输出。一共训练了UNet(10c)、UNet(3c)、UNet-Light(3C)三种模型架构,并在对应的测试集上进行了验证:
在这里插入图片描述
可见,三种架构均能很好再现不同算法的行为,且大型网络(U-Net (10c))并不一定优于使用较少通道数的网络(U-Net (3c)),也不一定优于使用较少通道数的复杂网络(U-Net-Light (3c))。且也可发现,通道 c 7 、 c 6 、 c 2 c_7、c_6、c_2 c7c6c2确实包含了检测活跃火灾所需的大部分信息。
  下图为使用Schroeder数据集训练得到的三种架构在测试图像上的表现:
在这里插入图片描述
  下图为使用Murphy数据集训练得到的三种架构在测试图像上的表现:
在这里插入图片描述
  下图为使用Kumar-Roy数据集训练得到的三种架构在测试图像上的表现:

在这里插入图片描述
  下图为三种算法、交集算法、UNet(3c)模型在城市米兰的检测结果(三种算法均会在大型城市居住区内发生误报),可见,交集算法以及使用交集掩模数据集训练的UNet(3c)模型均不会产生错误检测:
在这里插入图片描述
  下图为三种算法、投票算法、UNet(3c)模型在测试图像上的检测结果。可见,经过投票掩模数据集训练得到的UNet(3c)模型同样得到了投票算法的近似结果:

在这里插入图片描述

4.2Performance on the manually annotated images

  本轮实验中向4.1节中使用五种方法训练好的CNN模型中输入了人工标注数据集的图像patches进行测试(而非用于模型训练),并将结果与手工标注的掩模进行比较,作为参考,也加入了直接使用五种算法在测试图像上生成的掩模结果。见过见下表:
在这里插入图片描述

  下图为使用三种阈值算法生成的数据集、投票掩模数据集、交集掩模数据集训练的模型UNet(10c)、UNet(3c)、UNet-Light(3c),以及直接使用阈值算法及其组合在测试图像上的输出,第一行右图给出了手工标记的结果:
在这里插入图片描述
  从上表中可见,直接使用Murphy阈值算法生成的掩模在R、IoU、F指标上最优,但精度较低,这是因为它比其他条件更倾向于检测到更多的火灾像素(火灾像素门槛低)。对于模型,它们在指数上大多优于原始算法的预测结果。并且,由交集掩模数据集训练的模型在精度方面最优,召回率一般,这是因为交集算法设置的火灾像素门槛最高。
  在研究还分析了一些特别情况,例如,在上图中Kumar算法原始条件下的分割丢失了大量火灾像素,这些像素开始被成功检测为火像素,而后却因被视为水像素而丢弃,这是因为在 ρ 2 、 ρ 5 ρ_2、ρ_5 ρ2ρ5波段有像素的值导致。例如,下图展示了每组条件下错误检测的案例:
在这里插入图片描述
第一行中,Schroeder算法原始条件下在撒哈拉沙漠出现误检;第二、三行中,Murph、Kumar算法原始条件下在格陵兰部门地区出现误检。在第四行中,三种算法及UNet(10c)均发生误检,地点为米兰城镇(由明亮/反光的城市元素引起)。

4.3Dicussion

  从本节内容可见,CNN模型确实可以近似手工算法生成火灾像素掩模(即使简化架构,使之仅依赖三个传感器数据通道)。且,通过组合多个CNN的输出,与原始条件集相比可获得更好的性能。

5.Conclusion

  略。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值