You are on page 1of 36

2022/12/4 19:34 连续退化检测 CODED - openMRV

家 资源 搜索 关于

1背景
1.1 森林退化

2 学习目标

2.1 先决条件

3 教程:连续退化检测(CODED)

3.1 动机

3.2 土地变化监测

3.3 算法概述

3.4 光谱混合分析

3.5 时间轨迹

3.6 变化检测

3.7 改变属性

4 教程:使用图形用户界面运行 CODED

5 教程:参数化

5.1 森林面具

5.2 定义研究区域和时间段

5.3 输入

5.4 变化检测

5.5 改变属性

5.6 后处理

5.7 可视化

5.8 导出

5.9 解释结果

6 其他例子:哥伦比亚、柬埔寨、莫桑比克

6.1 哥伦比亚

6.2 柬埔寨(全国)

6.3 莫桑比克 (Sentinel-2)

7 个常见问题 (FAQ)

7.1 调试指南

8 参考文献

连续退化检测 (CODED)
1 背景
1.1 森林退化
森林退化没有国际公认的定义,但通常可以将其定义为森林中的干扰,这种干扰会减少生物量、生态生产力和/或树冠覆盖,但不会导致土地覆盖
转变。
在国家温室气体清单的背景下,森林退化是碳损失的一个来源,其方式与森林砍伐类似。导致森林退化的活动示例包括选择性伐木、非天然森林火
灾和为家庭收集薪材。
https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 1/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

虽然森林砍伐一直是全球范围内激烈争论的主题,但森林退化也大大增加了温室气体排放,并降低了森林提供基本产品和服务以及减缓气候变化的
能力。然而,事实证明,在国家到区域范围内监测森林退化具有挑战性。因此,它经常被国家温室气体清单遗漏,并且代表了碳排放和生态破坏的
严重低估来源。
本教程将介绍一种监测森林退化的方法,称为连续退化检测 (CODED)。CODED 是为检测森林退化的特定目标而创建的,正如以下部分所述,事
实证明使用传统方法进行变化检测具有挑战性。CODED 的应用在 Google Earth Engine 上执行,并在哥伦比亚、莫桑比克和柬埔寨的案例研
究中进行了演示。

2 学习目标
在本教程结束时,您将能够:
在中高分辨率卫星图像中识别森林退化的常见驱动因素
使用光学图像进行光谱混合分析并计算归一化差异分数指数 (NDFI)
参数化 CODED 以针对不同的干扰动态、森林类型和日期可用性
使用 CODED 创建退化和毁林地图
高级用法还包括:
对来自 CODED 的结果进行后处理以提高变化检测的准确性
应用 CODED 的修改版本以使用 Sentinel-1 雷达图像
2.1 先决条件
Google 地球引擎 (GEE) 概念
获取用户帐户
GEE 中的图像处理

函数的基本语法
基本图像处理,包括图像选择、云筛选、镶嵌和合成

注意:有关在 Google Earth Engine 中工作的更多信息和资源,请参阅 OpenMRV 上的过程“预处理”和工具“GEE”

3 教程:连续退化检测(CODED)
3.1 动机
在缺乏可靠的实地调查的情况下,唯一可行的方法是使用地球观测图像,但景观上发生的形态退化带来了必须解决的技术问题。首先,任何自动分
类卫星图像的方法都不可避免地会出现错误。这些错误可能来自许多因素,包括未遮盖的云层和云影、数据丢失(例如,由于 Landsat 7 的扫描
线校正器问题)和分类错误(例如土地覆盖的错误分类或变化类别)。我们还知道,潮湿的热带地区特别容易因云而丢失或污染数据。
虽然这个问题并不是映射森林退化所独有的,但在尝试自动化大面积监测方法时考虑这一背景很重要。下面,我们可以看到中非共和国砍伐森林中
几年的陆地卫星图像。这里的目标是提取有关森林变化的有意义信息,尽管几乎每张图像都部分或全部被云覆盖或丢失数据。任何有效绘制此景观
干扰的方法都必须适应嘈杂的观察结果,同时还要对森林冠层的细微变化敏感。

https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 2/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

有许多方法可以处理噪声观测,例如过滤、合成和大气校正。然而,基于过滤或平滑输入数据的方法不太适合检测退化,因为退化通常在短时间内
和小范围内可见。请注意以下巴西亚马逊地区火灾的示例。以红色突出显示的像素位于 2008 年左右烧毁的森林中。由于再生,此次火灾的迹象
在事件发生后不太明显。

再看看中非共和国的例子,我们可以进一步了解退化带来的短暂破坏。在这里,我们可以看到从 Planet 获取高分辨率图像的迹象。然而,仅仅几


个月后,森林就恢复了生机。退化的短暂性意味着持续监测是必要的,而不是单一数据分析或合成。

此外,森林退化通常发生在低于卫星图像标称尺度的空间尺度上,这意味着为了降噪而进行的空间平滑可以进一步混合稳定和受干扰的森林信号。
例如,下面是斐济选择性伐木的一个例子。虽然在高分辨率图像中可以看到明显的伐木道路,但在中等分辨率图像中,大部分景观仍然是森林。

https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 3/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

这些例子表明,森林退化的本质如何对使用传统遥感分析方法进行制图构成重大挑战。
3.2 土地变化监测
近年来,土地变化监测界越来越多地采用时间序列分析可以缓解单日期分析中出现的许多问题的观念。时间序列方法能够通过时间监测趋势,这有
助于区分微妙的土地变化和嘈杂的变化,并表征突然和渐进的变化。虽然变化监测在计量经济学、信号处理、模式识别以及环境建模和预测等领域
有着悠久的历史,但在遥感领域的应用相对较新。
变化监测的时间序列方法极大地受益于遥感社区的一些发展,包括:
来自 USGS、NASA、ESA 和 JAXA 等机构的免费开放数据访问
跨越多年或几十年的一致且重复的数据存档
高性能云计算环境,例如 Google Earth Engine 和 Amazon Web Services
基于密集时间序列数据的新型变化检测方法
支持数据收集的标准化预处理
土地变化监测时间序列分析的早期应用包括 LandTrendr(Kennedy 等人,2010 年)、BFAST(Verbesselt 等人,2010 年)、植被变化追踪
器(Huang 等人,2010 年)和连续变化检测与分类(朱和伍德科克,2014 年)。这些方法有其独特的优势,并有助于为 CODED 奠定基础。
3.3 算法概述
CODED 方法包含三个主要组成部分(有关更多信息,请参见 Bullock 等人,2020 年):
1. 光学图像的预处理以掩盖云并将反射率转换为光谱端元分数图像
2. 使用基于回归的中断检测进行变化检测
3. 使用训练数据和机器学习分类器将归因更改为森林砍伐或退化

https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 4/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

3.4 光谱混合分析
在预处理过程中,使用光谱混合分析 (SMA) 将输入数据转换为端元分数图像。光谱分解已在各种环境中显示出对亚像素土地变化敏感,使其成为
检测小规模退化事件的理想选择。在 Carlos Souza Jr. 博士(例如 Souza 等人,2005 年)的工作中,巴西亚马逊展示了 SMA 在映射退化方面
的应用,该工作引入了 CODED 中默认使用的混合模型。
CODED 中使用的 SMA 模型将反射率转换为绿色植被 (GV)、土壤、非光合植被 (NPV)、阴影和云的像素比例。然后可以使用这些层来计算归一
化差异分数指数 (NDFI),这是 Souza 等人首次引入的分数图像变换。(2005) 并证明对伐木或火灾造成的亚像素损坏很敏感。

自己试试
https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 5/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

在深入了解 CODED 的更复杂用法之前,有必要查看 SMA 在单个图像上的分数图像结果。以下 Javascript 代码可用于 Google Earth


Engine。SMA 的完整代码可以在文件“CODED/Unmix”中的OpenMRV 存储库中找到。您还可以在补充的YouTube 视频说明中找到有关解释
在此步骤中创建的图层的更多信息。
首先,加载哥伦比亚研究区域的 Landsat 8 图像并将其添加到地图中。研究区域被定义为“studyArea”变量中的要素集合。
var studyArea = ee.FeatureCollection('users/openmrv/MRV/ColombiaRectangle')
Map.addLayer(studyArea)
Map.centerObject(studyArea)

接下来我们可以加载 Landsat 8 集合并使用定义的函数“maskL8sr”应用云掩膜。


var landsat8 = ee.ImageCollection("LANDSAT/LC08/C01/T1_SR").filterBounds(studyArea)

function maskL8sr(image) {
var bandList = ['B2', 'B3', 'B4', 'B5', 'B6', 'B7']
var nameList = ['BLUE', 'GREEN', 'RED', 'NIR', 'SWIR1', 'SWIR2']
var cloudShadowBitMask = 1 << 3;
var cloudsBitMask = 1 << 5;
var qa = image.select('pixel_qa');
var mask = qa.bitwiseAnd(cloudShadowBitMask).eq(0)
.and(qa.bitwiseAnd(cloudsBitMask).eq(0));
return image.updateMask(mask).divide(10000)
.select(bandList).rename(nameList)
.copyProperties(image, ["system:time_start",'CLOUD_COVER']);
}
var l8Masked = landsat8.map(maskL8sr)

要找到相对无云的图像来应用 SMA,我们可以按“CLOUD_COVER”元数据属性对集合进行排序,并使用集合中的第一张图像(即
“CLOUD_COVER”值最低的图像)。

var l8Image = l8Masked.sort('CLOUD_COVER',true).first()


Map.addLayer(l8Image.select(['RED','GREEN','BLUE']), {min: 0, max: .14}, 'RGB Image')

请注意,该图像仅与我们的研究区域部分重叠。对于这个练习来说没问题,因为目的只是查看任何单个分数图像。为此,我们可以使用 Souza 等
人在 2005 年定义的光谱端元来计算分数图像,并将每个分数图像添加到地图中。

https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 6/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

// Define the spectral endmembers in units of reflectance


var endmembers = {
gv: [.0500, .0900, .0400, .6100, .3000, .1000],
shade: [0, 0, 0, 0, 0, 0],
npv: [.1400, .1700, .2200, .3000, .5500, .3000],
soil: [.2000, .3000, .3400, .5800, .6000, .5800],
cloud: [.9000, .9600, .8000, .7800, .7200, .6500],
}
// Define color palettes for visualization
var palettes = {
gv: ['#ffffcc','#c2e699','#78c679','#31a354','#006837'],
shade: ['#f7f7f7','#cccccc','#969696','#636363','#252525'],
npv: ['#ffffb2','#fecc5c','#fd8d3c','#f03b20','#bd0026'],
soil: ['#ffffd4','#fed98e','#fe9929','#d95f0e','#993404'],
cloud: ['#ffffcc','#a1dab4','#41b6c4','#2c7fb8','#253494'],
ndfi: ['#d73027','#fc8d59','#fee08b','#ffffbf','#d9ef8b','#91cf60','#1a9850']
}
// Perform unmixing on Landsat 8 image.
var unmixedImage = ee.Image(l8Image).unmix({
endmembers: [endmembers.gv, endmembers.shade, endmembers.npv, endmembers.soil, endmembers.cloud],
sumToOne: true,
nonNegative: true
}).rename(['GV', 'Shade', 'NPV','Soil','Cloud'])
// Add each fractional image to the map
Map.addLayer(unmixedImage.select('GV'), {min: 0, max: .6, palette: palettes.gv}, 'GV')
Map.addLayer(unmixedImage.select('Shade'), {min: 0, max: .6, palette: palettes.shade}, 'Shade')
Map.addLayer(unmixedImage.select('NPV'), {min: 0, max: .6, palette: palettes.npv}, 'NPV')
Map.addLayer(unmixedImage.select('Soil'), {min: 0, max: .6, palette: palettes.soil}, 'Soil')
//Finally, we can calculate NDFI on the endmember fraction images and add the NDFI data to the map.
var ndfi = unmixedImage.expression(
'((GV / (1 - SHADE)) - (NPV + SOIL)) / ((GV / (1 - SHADE)) + NPV + SOIL)',
{'GV': unmixedImage.select('GV'),
'SHADE': unmixedImage.select('Shade'),
'NPV': unmixedImage.select('NPV'),
'SOIL': unmixedImage.select('Soil')}
)
Map.addLayer(ndfi, {min: 0, max: 1, palette: palettes.ndfi}, 'NDFI')
//The example below is a zoom-in the results that can be navigated to by defining the image boundary as a geometry:
var geo = ee.Geometry.Polygon(
[[[-73.84809238658222, 2.093131559229626],
[-73.84809238658222, 2.047928319636153],
[-73.8027737830666, 2.047928319636153],
[-73.8027737830666, 2.093131559229626]]])
Map.centerObject(geo)

请注意几何图形中间受干扰的土地。明显非森林像素具有高 NDFI(红色)、低阴影(白色)、高 NPV(红色)和中等 GV(浅绿色),而右侧


受损的森林像素具有中等 NDFI(黄色),和茂密的森林具有高 NDFI(绿色)、高 GV(绿色)和高阴影(黑色)。

https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 7/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

3.5 时间轨迹
CODED 对研究区域中的每个可用 Landsat 图像执行 SMA。然后它使用时间序列 NDFI 轨迹执行变化检测。让我们看几个例子,看看退化和森
林砍伐的 NDFI 时间序列是什么样的。请注意,在这些图中,y 轴按 10,000 缩放。
NDFI 对于茂密的森林来说很高 (~1),对于开阔或退化的森林来说较低 (0-1),对于非植被景观来说最低 (-1 - 0)。下图显示了森林砍伐事件的
NDFI 轨迹。在以下每个示例中,图中的红色和绿色垂直线分别代表森林砍伐或退化事件的年份。请注意,在森林砍伐事件之前,NDFI 约为 1,
因为它是一片茂密而稳定的森林。森林转为牧场后,NDFI 突然下降,季节性在-1 和 1 之间振荡。

现在将此与由于选择性日志记录而导致的退化示例进行对比。注意NDFI因扰动引起的变化相对较小,有明显的森林更新恢复信号。

https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 8/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

最后,我们在下图中看到了受火灾影响的森林示例。请注意,这里的冠层损坏相当显着,干扰后 NDFI 的大幅减少就证明了这一点。然而,再次


出现明显的再生信号,并且从时间序列可以清楚地看出没有土地覆被转化。

自己试试
在 Google Earth Engine 上绘制 NDFI 的时间轨迹相对简单。除了对景观变化的光谱响应之外,这对于了解某个位置的土地使用历史也是一个
有用的练习。为此,需要首先计算整个图像集合的 NDFI,然后定义一个函数用于在地图上选定的位置绘制 NDFI。
注意:此代码可以在脚本“CODED/Unmix Time Series”的Open MRV存储库中找到。可以在YouTube 上找到演示此过程的补充视频。
https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 9/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

// Define a function for SMA and calculate or NDFI


var unmixAndNDFI = function(image) {
var unmixedImage = ee.Image(image).unmix({
endmembers: [endmembers.gv, endmembers.shade, endmembers.npv, endmembers.soil, endmembers.cloud],
sumToOne: true,
nonNegative: true
}).rename(['GV', 'Shade', 'NPV','Soil','Cloud'])
var ndfi = unmixedImage.expression(
'((GV / (1 - SHADE)) - (NPV + SOIL)) / ((GV / (1 - SHADE)) + NPV + SOIL)',
{'GV': unmixedImage.select('GV'),
'SHADE': unmixedImage.select('Shade'),
'NPV': unmixedImage.select('NPV'),
'SOIL': unmixedImage.select('Soil')}
).rename('NDFI')
return image.addBands([unmixedImage, ndfi])
}
// Map over the Landsat 8 collection and calculate NDFI
var ndfiCollection = l8Masked.map(unmixAndNDFI).select('NDFI')

以下代码演示了如何根据在地图上单击的位置(“变量点”)创建几何图形,并为与该位置相交的所有数据绘制 NDFI 时间序列(“变量图”)。这些


图有一个回调函数,当在图上选择一个观察点时,该函数会将相应的图像加载到地图上。
// Function to make an NDFI plot at the clicked location
var makeImagePlot = function(col, region){
var chart = ui.Chart.image.series(col, region, ee.Reducer.mean(), 30)
.setOptions({
lineWidth: 0,
pointSize: 6,
});
// Callback function to add clicked image to map.
chart.onClick(function(x, y, sName) {
if(x) {
var im = l8Masked.filterMetadata('system:time_start','equals',x)
Map.addLayer(im.select(['RED','GREEN','BLUE']), {min: 0, max: .14}, 'Image ' + x)
}
});
print(chart)
}
// Callback function when clicking on the map.
Map.onClick(function(coords) {
var point = ee.Geometry.Point([coords.lon, coords.lat])
makeImagePlot(ndfiCollection, point)
Map.addLayer(point)
})

为了帮助理解 NDFI 对不同退化事件的响应,我们一直在全球范围内构建示例点库。这些示例将持续更新,并展示不同环境下不同退化事件的


NDFI 时间序列是什么样子的。

自己试试
退化示例的时间序列查看器可以在文件“CODED/Time Series Examples”中的“OpenMRV”repo 中找到:
将脚本加载到 GEE 后,单击“运行”按钮以初始化图形用户界面。
https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 10/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

这是一个相对简单的工具,只允许对预定义的 NDFI 时间序列进行可视化。我们手动标记了扰动类型,可以使用第一个下拉菜单进行选择。第二


个下拉菜单定义了将 Landsat 图像添加到地图界面时要使用的图像拉伸。
下图描述了该工具的功能:
可以使用第一个下拉菜单选择干扰类型。用户可以使用“Navigator”小部件中的“Next”和“Previous”按钮导航示例。对于每个时间序列,右侧显示
相应的 NDFI 和 SMA 时间序列。在时间序列上选择一个观测值会将相应的图像加载到地图上。可以使用第二个下拉菜单更改图像拉伸。

前面的示例与介绍中使用的示例相同。这是具有许多 Landsat 观测值的温带森林中的典型退化信号。扰动前,NDFI 非常稳定,在 1 左右。NDFi


在一年左右有明显下降,但森林很快恢复,NDFI 到 2012 年左右出现与扰动前森林相似的情况。让我们看看其他一些这个工具的例子更详细一
点。以下示例显示了一个选择性日志记录事件。请注意由于干扰导致的 NDFI 的短暂和最小变化。

以下示例显示了采矿勘探的初始清理。由于森林中的树木被完全清除,NDFI 信号非常明显。然而,像素能够在初始清除后快速再生,并且在两年
内 NDFI 恢复到类似的干扰前水平。

https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 11/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

将之前再生为森林的矿山示例与以下永久性矿山示例进行比较。注意这个例子中没有恢复的迹象。

3.6 变化检测
回归模型用于预测移动窗口内的观察结果。如果窗口中观测值的残差超过临界值,则检测到变化。请注意,三角形下方是移动窗口中的观察结果。
蓝色三角形是预测的观测值,而黄色和红色分别代表低幅度和高幅度变化。然后重复该过程,对后续观察结果进行新的回归拟合。

更改检测参数
变化检测组件有两个重要的参数,这两个参数相当于连续变化检测和分类(CCDC)的GEE实现中的同名参数。CCDC 是一种类似的变化监测算
法,对所有类型的土地覆盖和利用变化更具有普适性。CODED 可以被认为是 CCDC 的修改版本,它使用光谱分解来针对由于森林干扰引起的变
化。第一个变化检测参数 Consec 定义了超过触发变化所需的变化阈值的连续观察次数。如果 Consec = 5,则需要有五个连续的观察值超过变化
阈值才能触发变化。建议将较低的 Consec 值用于数据可用性较低的研究区域,或用于查找从上方可见的短期变化。后者的一个例子是选择性伐
木事件,由于树冠再生,只能从上方看到几周或几个月。减少 Consec 参数可能有助于发现变化,但也会使结果更容易因未遮蔽的云或云影而出
现佣金错误。第二个变化检测参数定义变化测试统计和变化阈值。变化检验统计量 但也会使结果更容易因未遮挡的云或云影而出现误差。第二个
变化检测参数定义变化测试统计和变化阈值。变化检验统计量 但也会使结果更容易因未遮挡的云或云影而出现误差。第二个变化检测参数定义变
化测试统计和变化阈值。变化检验统计量模型 m 和观测值 yi 的f 可以定义为: i,mn

https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 12/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

其中y 是时间i的预测 NDFI 值,RMSE 是回归模型m的均方根误差。如果出现以下情况,则观察结果被确定为潜在变化:


p m

其中chi2 ppf是自由度为1的chiSquareProbability的概率密度函数。如果连续观察到Consec潜在变化,则更改会被标记。仅当 f 低于负 i,mn

chi2 ppf 时才会检测到变化,因为 CODED 仅标记导致 NDFI 减少的变化(即包含大的负检验统计量)。较低的chiSquareProbability具有增


加 CODED 对变化的敏感性的效果,因此比使用较高的chiSquareProbability发现更多的变化。
3.7 改变属性
根据干扰后的土地覆盖,干扰被归因于森林砍伐或退化。如果存在从森林向非森林(例如牧场、定居点或农业)的转变,则干扰被视为森林砍伐。
如果在干扰之后开始再生并且没有土地覆盖转变,则干扰被标记为退化。这个归因过程大体上可以按照以下流程图来描述:

https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 13/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

4 教程:使用图形用户界面运行 CODED
CODED 可以使用名为“Forest Disturbance Mapping GUI”的图形用户界面 (GUI) 运行,该界面可以在Open MRV 存储库中找到。请注意,
repo 中的版本是时间上的“快照”,最新版本可在此处找到:https ://coded.readthedocs.io 。可以在 YouTube 上找到有关使用森林干扰绘图
GUI 的视频说明。

注意:该工具还依赖于外部库。如果您收到错误“找不到所需的存储库”,表明存储库的链接已损坏。如果是这种情况,请参阅 CODED
ReadTheDocs 页面。

https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 14/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

本节概述了该应用程序及其功能,下一节将演示使用该应用程序的示例。请注意,用户应将此部分用作参考,并遵循哥伦比亚、柬埔寨和莫桑比克
的示例。
添加 repo 后,您应该在“Reader”下的“Scripts”面板中看到一个“coded”文件夹:

图 1 是您的屏幕外观的图像。如果您没有看到它,请导航至 GEE 界面左上角的脚本选项卡。展开 Reader 选项卡,然后单击名为Forest


Disturbance Mapping GUI的脚本。

然后您可能需要单击“运行”以启动脚本以在浏览器中加载。请注意,GUI 可能需要一些时间才能出现在浏览器中。

然后它会提示您选择您的语言。设置语言后,您的浏览器应类似于下图,但是 B、D 和 E 将在运行 CODED 后才会显示。

https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 15/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

如图 1 所示,该应用程序包含各种组件,这些组件根据下面括号中的字母进行标记:
参数面板 (A)
屏幕右侧是参数面板。该面板包含控制映射过程所有方面的小部件,包括输入数据、预处理、变化检测参数、后处理、可视化和导出。
地图面板 (B)
该地图显示变化检测的结果,可以交互使用以使用地图控件定义研究区域并显示单击位置的历史轨迹。
地图控件 (C)
地图控件包含两个按钮:“绘制研究区域”和“切换时间序列查看器”。单击第一个按钮后,将创建一个名为“StudyArea”的几何导入。使用此框
定义分析的研究区域。单击 按钮可以重置研究区域。第二个按钮用于在地图中显示或删除时间序列面板。
时间序列面板 (D)
时间序列面板显示参数面板中定义的集合的时间轨迹。可视化的波段可以在可视化参数下定义。散点图中的每个点代表在地图上单击的位置的
一次观察。单击散点图上的一个点时,相应的图像将加载到地图中。显示图像的波段组合和拉伸选项可以在参数面板的可视化部分中更改。
任务选项卡 (E)
GEE Web 界面的默认功能,任务选项卡用于提交作业以供处理。任务可用于将图像和特征集合导出为资产或导出到外部存储,例如 Google
Drive。

5 教程:参数化
5.1 森林面具
可以使用森林掩模来确定用于映射森林干扰的有效像素。定义为非森林的区域不会有任何干扰映射到它们。目前有两种定义森林/非森林 (FNF) 掩
膜的方法,或者您可以选择不使用掩膜并假设研究区域中的所有像素都可能包含干扰。
资产
https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 16/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

第一个选项允许您使用现有图像资产作为森林/非森林蒙版。在“森林面具”下拉小部件中选择“资产”后出现的文本框中指定图像的路径。
FNF 掩码资产的值必须为 1,表示有效(森林)像素,零或 null 表示无效(非森林)像素。

默认情况下,此选项使用图像几何作为研究区域。可以使用研究区域选择小部件手动覆盖研究区域。
全球森林观察 (GFW)
第二个选项使用 Hansen 等人的 2000 树木覆盖百分比图层。(2013) 全球森林观察数据集。此选项要求您手动定义研究区域(下一节)。
GFW 图层以 2000 年的树木覆盖率百分比为单位。在下拉菜单中选择“GFW”后,指定要标记为森林的最小树木覆盖率。所有不满足此阈值的
像素都分配给非森林类。
有一个“在开始日期之前屏蔽”的选项。这种掩蔽是使用 GFW 树覆盖损失和年份层执行的。目的是将所有在“开始日期”之前映射为“树木覆盖率
损失”的像素变为非森林。换句话说,如果您的开始日期是 2005 年,而 GFW 数据集地图在 2000 年和 2005 年之间发生变化,那么这些像
素将不会包含在森林遮罩中。
5.2 定义研究区域和时间段
通过按下地图左侧带有文本“绘制研究区域”的按钮来设置研究区域(图 1)。按下后,名为“StudyArea”的几何图形将出现在几何图形导入
中。使用地图绘制边界框,这将是分析的范围。
提示:较大的研究区域可能会导致计算超时。如果发生这种情况,请尝试通过提交任务来导出结果(请参阅下面的导出部分)。

由几何导入层“StudyArea”(左)和相应的 FNF 掩模定义的示例研究区域使用 GFW 选项,树木覆盖阈值为 80%(右)。

在“参数”面板(图 1,A)中,您可以指定分析的开始和结束日期。这些日期将过滤用于变化检测的数据。“跳转到日期”链接允许在日历上选择
日期。

https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 17/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

5.3 输入
目前,该应用程序支持使用 Landsat、Sentinel 2 或 Sentinel-1 数据作为变化检测和归因的基础。用于研究的适当输入取决于研究的具体情
况和研究领域中可用的数据。一般来说,Landsat 在数据充足的地区对细微的干扰更敏感,但容易受到云层遮盖或错误数据的影响。
每个输入集合都可以按年份 (DOY) 过滤。例如,152 的“开始 DOY”和 244 的“结束 DOY”将使用 6 月 1 日至 9 月 1 日之间以及研究时间段内
的所有图像。
通过选择“时间过滤器”和“时间过滤器大小”参数,还可以使用 ee.Reducer 在时间上“平滑”集合。例如,“平均”的“时间过滤器”和 2 的“时间过
滤器大小”将通过计算 14 天期间内所有数据的每个像素的平均值来创建 14 天的合成。
5.4 变化检测
CODED 可以使用三个参数进行修改:这些参数在为更改检测方法选择“CODED”后显示。
范围 描述
卡方概率 检测到变化 [0-1] 的卡方概率。
连续观察 ## 超过变化概率的连续观察来标记变化

改变波段 用于变化检测测试的带。目前仅支持 NDFI。

5.5 改变属性
采样
使用该方法,对 FNF mask 进行采样并用作训练数据,以对第一次扰动后的时间段进行分类。类标签是根据 FNF 掩码定义的,而预测数据是
从 CODED 结果中采样的。
如果干扰后的时间段是森林,则干扰被标记为退化。如果它不是森林,那么这是土地覆盖转变的证据,干扰被标记为森林砍伐。如果由于数据
不足而无法对该段进行分类,则将其标记为未知干扰。
只有两个参数需要指定用于采样。第一个是分配给每个类别(森林和非森林)的训练点数,第二个是训练分类器的年份。年份必须在学习期间
内。发生光谱变化的像素将不会用于训练。
注意:如果没有手动定义的训练数据,应选择此选项。但是,由于它源自全球数据集,因此可能不如手动定义训练数据准确。
训练数据
使用这种方法,用户可以手动指定训练数据来对干扰后的土地覆盖进行分类。
此选项要求用户将训练数据的路径指定为带有土地覆盖标签的点的 ee.FeatureCollection。可以有无限数量的类,但必须只有一个是森林。
培训年表示培训地点对应于相关土地覆盖标签的年份。
5.6 后处理
地图结果的后处理是消除由于噪声(例如未遮盖的云)引起的虚假变化或不是由于干扰引起的真实变化的好方法。
目前,唯一实现的后处理步骤是使用变化幅度的阈值。变化幅度与数据空间的变化有关。例如,导致 NDFI 大幅变化的扰动将比导致 NDFI 微
小变化的细微变化具有更大的变化幅度。变化幅度的单位是模型变化窗口期间由模型均方根误差归一化的残差。
变化幅度的单位可能很难让您理解,但一般来说,较大的阈值会移除更多的变化,而 0 的阈值将不会移除任何变化。例如,值为 1 将过滤非常
低幅度的变化,而值为 8 将过滤除了高幅度变化之外的所有变化。
5.7 可视化
添加森林遮罩层
将 Forest/Non-Forest 遮罩层添加到地图中。森林像素将显示为绿色,而非森林像素将显示为黑色。
添加休息日期
https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 18/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

将第一次检测到的更改的日期作为图层添加到地图中。
添加分层
向地图添加分层。
中心缩放
将地图缩放集中在研究区域上。
屏蔽结果
将森林/非森林蒙版应用于结果。所有标记为非森林的区域都将在结果中被掩盖。
重置地图
重置地图图层。
冗长的
将消息打印到控制台。
资产路径
可以加载到地图以供参考的地球引擎表或图像的路径。
加载资产
将“资产路径”小部件中指定的资产加载到地图。
5.8 导出
原始(变化)输出
这准确地表示了原始输出如何从变化检测算法(例如 CCDC)中出现。不执行任何后处理,也不执行任何类型的土地覆盖分类或更改属性。
森林变化信息
这表示与被识别为森林干扰的像素相关的多个波段。这些波段包含干扰日期(波段 1)和 NDFI 的大小(编码),以及 VH (Sentinel-1)(波段
2)。

分层
该层表示根据研究期间的干扰和土地覆盖历史对研究区域进行的单波段分层。像素值对应于稳定森林 (1)、非森林 (2)、森林砍伐 (3)、退化 (4)
和未知干扰 (5)。
使用网格
对于大的研究领域,将任务分解成子集很有帮助。此选项会将研究区域分割成大约 5x5 度的网格,以加快处理速度。在全国范围内工作时,建
议使用此选项以防止 GEE 系统过载。
5.9 解释结果
时间序列查看器
地图控制面板上的第二个按钮(“切换时间序列查看器”)将在地图中添加和删除时间序列查看器。

https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 19/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

通过单击地图,可以显示任何位置的具有模型拟合的时间序列。在上面的示例中,来自 Landsat/CODED 的更改日期图层显示在刚果民主共


和国某个位置的地图上。
要在地图上的图表上查看特定数据值的图像,只需在时间序列查看器中单击它即可。
笔记
图表可能需要一段时间才能生成。该窗口将注意到它正在处理并显示消息“正在处理,请稍候”。
如果图表未显示该消息或更新,则可能是您的光标仍处于几何编辑模式 - 请确保关闭几何编辑并再次尝试单击地图。
解读地图
单击“运行!”后,可视化参数中选择的图层将添加到地图中。按钮。
休息日期 地层
绿色:森林 绿色:森林
黑色:非森林 黑色:非森林
黄色(开始日期)-> 红色(结束日期) 红色:森林砍伐
蓝色:退化
黄色:未分类干扰

https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 20/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

6 其他例子:哥伦比亚、柬埔寨、莫桑比克
6.1 哥伦比亚
运行应用程序
1. 如果您还没有这样做,请在 Google Earth Engine 上添加Open MRV 存储库。

2. 导航到 Open MRV 存储库 CODED 文件夹中标题为“森林干扰映射 GUI”的脚本。

3. 单击“运行”。

4. 地图旁边出现的面板允许选择一种语言。选择您喜欢的语言。目前,唯一的选项是英语、西班牙语和法语。

参数化
以下是根据以往经验推荐使用的参数。一切都可以而且应该针对本地分析进行调整。
开始和结束日期:将开始和结束日期分别更改为“2000-01-01”和“2020-01-01”。
森林面具:全球森林观察(GFW):这使用了汉森等人。(2013) global tree cover cover layer for 2000. GFW 层中大于树木覆盖阈值层的
所有事物都将被归类为森林。
树木覆盖阈值: 80。这将树木覆盖率超过 80% 的每个像素定义为森林。
https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 21/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

输入:使用具有所有默认值的Landsat 。
变化检测方法:目前,Landsat 唯一支持的变化检测方法是CODED。默认参数适用于初始测试。
Change Attribution: Sample会自动对 Forest/Non-Forest 地图进行采样以进行更改属性。检测到变化后,随后分类为非森林的土地覆
盖将被标记为森林砍伐,而对仍然是森林的森林的干扰将被标记为退化
后处理:使用默认的后处理参数,不做任何后处理。
可视化:启用Verbose以读取控制台中的信息。
导出: 分层。由于我们在相对较小的研究区域中操作,您可以不选中使用网格导出的选项。
学习区
1. 您可以指定 Earth Engine Table 的路径,其边界将用作研究区域。

2. 在地图的左侧,单击“Use Asset for Study Area”按钮(见下图)

3. 在按钮下文本框正下方的框中输入表格的路径:users/openmrv/MRV/ColombiaRectangle

4. 输入表格的路径后,点击地图或按“Enter”键后,它应该加载到地图上。如果您想确认资产已加载,请手动将您的地图移动到哥伦比亚并缩放
到黑色矩形区域。

运行脚本
1. 点击“运行!” 右侧控制面板上的按钮执行脚本显示结果。默认选项将显示森林变化日期和分层。

2. 变化日期层从研究期开始到结束显示,对应地图中的黄色到红色。

3. 分层具有以下图例(调色板):

绿色:稳定的森林
黑色:非森林
红色:森林砍伐
蓝色:退化
黄色:未分类干扰
4. 可以使用“任务”选项卡将导出作为 GEE 任务提交:

https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 22/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

5. 在“Export_Stratification”任务的“任务”选项卡中单击“运行”后,为文件指定一个导出名称,然后单击“运行”。

6. 几分钟后,您应该会看到地图中添加了“更改日期”和“分层”图层。Forest Mask 图层在地图中也可用。

7. 如果您在地图上加载结果时遇到问题,或者加载速度太慢,您可以使用任务导出“分层”图层并将其添加回地图。
提交任务(“Export_Stratification”)以创建单层分层(如上文步骤 5 中所述)。
任务完成后,它会在“任务”选项卡中变为蓝色。

单击蓝色任务框右侧的问号,然后单击“查看资产”。

https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 23/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

将路径复制到已保存的资产。

-在“可视化”下,将路径粘贴到“资产路径”旁边的框中,然后单击“加载资产”。应将三层添加到地图中:一层用于映射为退化的所有像素,一层用于
映射为森林砍伐的所有像素,以及使用上面步骤 3 中图例的调色板设置样式的分层。

https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 24/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

-选择“切换时间序列查看器”以启用单击地图以查看 NDFI 时间序列。- 要开始评估结果,请尝试在地图上单击映射为退化(蓝色)或森林砍伐


(红色)的像素。该像素的时间序列应加载到屏幕底部的绘图上。或者,使用“Y 轴最小/最大”文本框更改 y 轴。一些额外的图层被添加到地图
中,包括一个指示您单击位置的框、用于创建绘图的图像集合以及回归模型系数。

6.2 柬埔寨(全国)
前面的示例演示了如何在哥伦比亚的一个小型研究区创建结果。虽然这对于参数化很有用,因为可以快速创建结果,但通常情况下需要在全国范围
内进行分析。

研究区域
对于本教程,我们将使用柬埔寨的边界作为研究区域。这可以通过在全国范围内绘制一个框来使用地图工具中的“绘制研究区域”小部件来完成。更
好的是,这可以通过创建研究领域的特征集合来完成。
1. 打开一个新的 Earth Engine 代码编辑器窗口。可以在名为“创建柬埔寨边界特征集合”的 Open-MRV 存储库中找到此脚本的副本。

2. 加载国界特征集合

var countries = ee.FeatureCollection("USDOS/LSIB/2017")

3. 按元数据过滤表以仅检索柬埔寨的边界
var cambodia = countries.filterMetadata('COUNTRY_NA','equals','Cambodia')

4. 将图层添加到地图并保存到您的资产中。
Map.addLayer(cambodia)
Export.table.toAsset({
collection: cambodia,
assetId: 'Cambodia_Extent',
description: 'cambodia'
})

现在您已经创建了资产,您可以使用下一步将映射限制到该资产的边界区域。

参数化
https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 25/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

在“森林干扰映射 GUI”中,使用上一步中保存的资产定义研究区域。
1. 选择应用程序左侧的“将资产用于研究区域”。

2. 将小部件正下方的文本框中的资产“Cambodia_Extent”的路径复制并粘贴到“将资产用于研究区域”。导航至柬埔寨后,您的屏幕应显示载入
地图的研究区域:

3. 首先,定义以下参数。定义这些将使我们能够可视化时间序列并调整参数。
开始时间:2001 年 1 月 1 日
结束:2020 年 1 月 1 日
森林面具:GFW
输入:Landsat(默认输入参数)
变化检测:CODED
更改属性:示例(默认参数)
后处理:使用默认值
可视化:添加森林遮罩层(其他未选中)
出口:无(全部未选中)
然后点击运行!
4. 为了确定可能发生森林变化的区域,我们可以添加 Hansen 全球树木覆盖损失数据集(Hansen 等人,2013 年)。
在Visualization下,将路径 'UMD/hansen/global_forest_change_2019_v1_7' 添加到Asset path旁边的框中,然后单击Load
asset。资产应添加到地图中。

数据集应加载到地图上,名称为Added Image under Layers。


通过选择图层名称旁边的齿轮箱打开可视化参数工具箱。
将可视化更改为 1 个波段(灰度),波段为“lossyear”,范围为 0-20,颜色调色板将在地图上突出显示(在以下示例中选择了红色)。单
击应用。

https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 26/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

注意:这个数据集并不完美,可能会忽略非林分替换树木覆盖损失事件。但是,它非常适合用于探索目的。
5. 使用Toggle time series viewer将时间序列查看器添加到地图。将 y 轴的最小值/最大值更改为 -1 到 1.5。
6. 花一些时间单击映射为树木覆盖损失的区域并可视化时间序列。这是更改Consecutive Obs和chiSquareProbability参数的好机会。下面的
示例可以在纬度、经度 13.307、104.587 找到。您可以使用资产路径“users/openmrv/MRV/Cambodia_Example_Point”以与全球森林观
察层相同的方式将此点添加到地图。请注意 NDFI 的急剧下降并未被视为变化。

通过单击指示遗漏错误的错误旁边的图中的观察,可以看到干扰。请注意,丢失的数据是由于 Landsat 7 的扫描线校正器问题造成的。

https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 27/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

对Consecutive Obs和chiSquareProbability的不同值进行试验,以尝试正确检测此变化。Consecutive Obs的典型范围是从 3(更多变


化)到 8(更少变化),而chiSquareProbability通常应该在 0.9(更多变化)到 .999(更少变化)之间。更改参数后,单击运行使它们生
效。确保未在Visualization下选中Reset Map和Center Zoom。这样您就可以更改参数,而无需重置地图的任何图层或更改地图视图。
请注意,将Consecutive Obs阈值从 4 更改为 3 会导致正确检测到变化:

为整个国家确定一套完美的参数是不现实的。但是,此练习可用于确定一组参数,这些参数在给定您的研究领域的数据可用性的情况下效果很
好。
7. 在确定一组参数后,通过在“导出”选项下选择“分层”来导出结果。由于我们要导出整个国家/地区,因此如果尝试在单个任务中进行分析,导出
可能会失败。因此,选择“使用网格”导出选项。此选项会将输出数据拆分为 5x5 度网格,这将大大加快处理时间并创建可在下一步中连接在一
起的输出地图。单击“运行”后,您应该会看到构成研究区域的不同 5x5 度网格的两个导出任务。

https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 28/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

8. 一旦完成这两个任务的处理,就可以将两个网格区域组合起来,为柬埔寨国家做一个分层。以下代码可以在 CODED 文件夹中的脚本“组合网


格”中找到。
打开一个新的 GEE 代码编辑器窗口。
将两个分层“网格”资产定义为变量“im1”和“im2”,将国家边界定义为“geo”注意应替换路径以匹配您保存的资产文件。
var im1 = ee.Image('users/openmrv/MRV/Cambodia_WB_Stratification_Grid_1')
var im2 = ee.Image('users/openmrv/MRV/Cambodia_WB_Stratification_Grid_2')
var geo = ee.FeatureCollection('users/openmrv/MRV/Cambodia_Extent')

将两个图像合二为一,将其添加到地图中,并另存为新资产。在下面的示例中,网格边界也以橙色添加到地图中。

https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 29/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

var combined = ee.ImageCollection([im1, im2]).mosaic().clip(geo)


Map.addLayer(im1.geometry(), {color: 'orange'}, 'Grid 1')
Map.addLayer(im2.geometry(), {color: 'orange'}, 'Grid 2')
Map.addLayer(combined, {min: 1, max: 4, palette: ['green','black','red','cyan']}, 'Results')
Export.image.toAsset({
image: combined.toByte(),
scale: 30,
region: geo,
maxPixels: 1e13,
description: 'combined',
assetId: 'Cambodia_WB_Stratification_Grid_Combined'
})

6.3 莫桑比克 (Sentinel-2)


CODED 旨在使用 Landsat 数据。然而,Landsat 和 Sentinel-2 之间的辐射差异很小,因此将 CODED 扩展到 Sentinel-2 相当简单。
Sentinel-2 没有热带,但此处使用的 SMA 模型不需要热带。Sentinel-2 的主要优势是更高的数据频率(2015 年之后),以及大多数波段的更高
空间分辨率。虽然 CODED 与 Sentinel-2 的应用尚未经过广泛测试,但目前支持森林干扰映射 GUI。
当前(截至 1/2021)GEE 中 Sentinel-2 表面反射数据的收集相对稀少。在马达加斯加,这意味着只有 2019 年和 2020 年的数据可用,尽管未来
可能会提供更早的数据。
以下是使用 Sentinel-2 的一组起始参数:
开始时间:2018 年 1 月 1 日
结束:2021 年 1 月 1 日
森林面具:GFW
输入:Sentinel-2(默认输入参数)
变化检测:CODED
更改属性:示例。Training Year参数应调整为收集时间段(2018-2021)内。
后处理:使用默认值
可视化:添加森林遮罩层(其他未选中)
出口:无(全部未选中)
应该为莫桑比克调整的一个参数是用于定义森林/非森林遮罩的树冠覆盖百分比阈值。虽然可以在外部创建遮罩,但使用 Global Forest Watch 树
木覆盖率图层会更快。在哥伦比亚,由于全国都有茂密的冠层森林,因此用于定义森林和非森林的阈值可以设置得相对较高。然而,莫桑比克的疏
林林分布较多,因此该阈值应相应调整。在下面的研究区域(资产“users/openmrv/MRV/MozambiqueArea”)可以看到三个不同的阈值。
https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 30/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

要创建这些地图:
在Forest Mask参数中选择GFW作为定义 Forest Mask 的方法。
指定最小树冠覆盖阈值。
在Visualization参数中选择Add Forest Mask Layer 。确保没有选中其他复选框。
单击运行,森林遮罩将添加到地图中。
提醒森林/非森林用于将森林变化(即森林砍伐和退化)与光谱变化分开。它还用于定义训练数据,除非使用辅助数据集。因此,森林/非森林遮罩
对于确定可能发生“森林变化”的位置以及将其归因于森林砍伐或退化都很重要。
Sentinel-2 RGB 复合 门槛:20%

阈值:40% 阈值:80%

https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 31/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

基于这些测试,建议使用 40 的树木覆盖阈值。
接下来,我们可以查看受干扰森林像素的 NDFI 的 Sentinel-2 时间序列示例。可以在资产中找到森林变化事件的示例:
users/openmrv/MRV/Mozambique_Example_Point

使用资产路径和加载资产工具将点添加到地图。导航至莫桑比克的点,并定义该点周围的研究区域。

使用Toggle time series viewer添加时间序列查看器。


单击添加的点可查看 NDFI 时间序列和模型拟合。

请注意,尽管没有模型中断,但 2020 年之前的 NDFI 时间序列存在很大差异。这种可变性可能是由两个因素造成的:


由于干扰或生长,森林发生变化。
森林中的自然和季节变化。
由于此位置的 Sentinel-2 数据仅在 2019 年之后可用,因此很难从此图表中确定。或者,我们可以查看该示例像素的 Landsat 观测值,
GEE 存档比 Sentinel-2 早几年开始。请注意 2020 年之前绿色度的景观变化以及示例像素(中心的黑点)干扰导致的显着变化:

https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 32/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

从这些图像中,我们看到由于植物物候而存在季节性。由于旱季末期或 9 月至 12 月左右的物候,植被呈棕色。我们可以通过将Start
DOY和End DOY更改为 1 到 244(1 月 1 日到 9 月 1 日),从“输入”参数的分析中删除这些日期。在排除旱季日期时观察 Sentinel-2 时
间序列:

有趣的是,旱季图像没有过滤就发现了变化,过滤后却没有!这是因为季节性回归模型正确地拟合了季节性变化,因此 2019 年底的低


NDFI 值被确定为数据的“正常”年度轨迹。2020 年 4 月扰动后的观察结果与“正常季节性趋势”不符,因此标​记为变化。基于此示例,似乎
按年份过滤弊大于利。
在探索不同位置的时间序列后,通过选择分层的导出选项导出分层,并使用研究区域使用资产定义研究区域并输入特征集合
('users/openmrv/MRV/MozambiqueArea')。
处理后,可以通过将资产路径复制并粘贴到资产路径文本框中并选择加载资产,将分层添加到地图中。地图应显示在地图上。

https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 33/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

提示:如果您发现佣金错误过多(或检测到错误更改),请尝试降低Consecutive Obs阈值。注意下面两张地图的区别。这些层显示标记为更改
的像素,并通过选中可视化复选框添加中断日期(将其添加到地图)和掩膜结果(应用森林/非森林掩膜)将它们添加到地图。Break Date 图层
通常可以即时计算,因此无需每次都导出结果即可调整变化检测参数。如果取消选中Reset Map参数,则之前的结果将保持加载在地图上。
连续 obs = 3 连续 obs = 5

这个过程是迭代的。导出分层后,可以将其加载到地图上并使用时间序列查看器进行分析。建议从小区域开始,以便无需大量处理时间即可调
整参数。

7 个常见问题 (FAQ)
CODED 如何适应季节性?
CODED 使用季节性回归来模拟物候引起的季节性变化。由于变化检测的检验统计量基于模型残差,因此调和回归用于“季节性去趋势化”NDFI。

在 CODED 的背景下,森林退化的定义是什么?
森林退化在这里被定义为森林中的干扰,它会减少生物量、生态生产力和/或树冠覆盖,但不会导致土地覆盖转变。示例包括选择性伐木、小规模
木材采伐、火灾以及从天然林到人工林的转变。
完全清除树冠怎么能被视为退化,而不是森林砍伐?
在这种情况下,被砍伐但立即开始再生且没有非林地用途的林地被视为再生林。此处使用的毁林定义需要转换土地覆盖类别(例如森林到农田)。
因此,无论受影响的树木覆盖面积有多少,对仍然是森林的森林的干扰都被视为退化。
CODED 可以应用于高分辨率数据吗?

CODED 在技术上可以应用于任何光学数据源。但是,它需要一系列时间上一致的观察结果。

为什么 CODED 使用 NDFI 和分数图像而不是原始光谱带?


之前在巴西亚马逊地区进行的研究(即 Souza 等人,2003 年、2005 年、2013 年)发现,与光谱带或指数相比,NDFI 对火灾和伐木造成的亚
像素退化更为敏感。
我的结果检测到的变化太多或太少,我该怎么办?
更改“Consecutive Obs”和“chiSquareProbability”将控制算法更改的灵敏度。
结果如何用于创建活动数据?
活动数据可以直接从基于编码的地图或抽样设计中获得。
结果准确率低怎么办?
https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 34/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

这个过程是迭代的。我们建议从一个小的研究区域开始,然后运行默认参数,然后查看地图结果和时间序列示例,并尝试一组新参数。此外,如果
将结果用于统计估计的抽样框架中,则地图的准确性并不重要。在这种情况下,使用无偏统计估计器来适应地图错误。
7.1 调试指南
“错误:超出用户内存限制”。
当计算太复杂或面积太大时,通常会发生此错误。尝试手动或使用“使用网格”选项减小研究区域的大小。
“错误:Image.classify:在分类器训练输入中找不到数据。”

当训练数据在研究区域之外或“训练年份”参数在输入图像集合的开始和结束日期之外时,会发生此错误。
“计算超时”

“即时”显示结果时,此错误很常见。尝试在任务中导出结果,然后使用“加载资产”工具将其加载回地图。如果是分层,该工具会自动将样式应用于
加载的资产。
“找不到所需的回购协议”

这表示指向外部库的链接已损坏。请参阅https://coded.readthedocs.io获取最新版本的 GUI。

8 参考文献

Bullock, EL Woodcock, CE 和 Olofsson, P.,2020 年。使用光谱分离和 Landsat 时间序列分析监测热带森林退化。环境遥感,238,
p.110968 。https://doi.org/10.1016/j.rse.2018.11.011
Hansen, MC, Potapov, PV, Moore, R., Hancher, M., Turubanova, SA, Tyukavina, A., Thau, D., Stehman, SV, Goetz, SJ, Loveland, TR 和
Kommareddy, A., 2013 . 21 世纪森林覆盖变化的高分辨率全球地图。科学,342 (6160),pp.850-853。
https://doi.org/10.1126/science.1244693

、 、 、
Huang, C. Goward, SN Masek, JG Thomas, N. Zhu, Z. 、 和 Vogelmann, JE,2010 年。一种使用密集的 Landsat 时间序列堆栈重建近
期森林干扰历史的自动化方法。环境遥感,114(1),pp.183-198。https://doi.org/10.1016/j.rse.2009.08.017
Kennedy, RE、Yang, Z. 和 Cohen, WB,2010 年。使用年度 Landsat 时间序列检测森林干扰和恢复的趋势:1. LandTrendr - 时间分割算法。
环境遥感,114(12),pp.2897-2910。https://doi.org/10.1016/j.rse.2010.07.008
Souza Jr, C.、Firestone, L.、Silva, LM 和 Roberts, D.,2003 年。通过光谱混合模型从 SPOT 4 绘制亚马逊东部森林退化图。环境遥感,87
(4),pp.494-506。https://doi.org/10.1016/j.rse.2002.08.002
Souza Jr, CM、Roberts, DA 和 Cochrane, MA,2005 年。结合光谱和空间信息绘制选择性伐木和森林火灾造成的冠层破坏图。环境遥感,98
(2-3),pp.329-343。https://doi.org/10.1016/j.rse.2005.07.013

Souza Jr, CM, Siqueira, JV, Sales, MH, Fonseca, AV, Ribeiro, JG, Numata, I., Cochrane, MA, Barber, CP, Roberts, DA 和 Barlow, J.,
2013. 十年 Landsat 分类巴西亚马逊地区的森林砍伐和森林退化。遥感,5 (11),pp.5493-5513。https://doi.org/10.3390/rs5115493

Zhu, Z. 和 Woodcock, CE,2014 年。使用所有可用的 Landsat 数据对土地覆盖进行连续变化检测和分类。环境遥感,144,pp.152-171。


https://doi.org/10.1016/j.rse.2014.01.011

本作品根据Creative Commons Attribution 3.0 IGO获得许可


版权所有 2021,世界银行
https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 35/36
2022/12/4 19:34 连续退化检测 CODED - openMRV

这项工作由 Eric Bullock 根据世界银行与 GRH Consulting, LLC 的合同开发,用于开发新的和收集现有的测量、报告和验证相关资源,以支持


各国的 MRV 实施。
材料审核人: Carole Andrianirina,马达加斯加,国家协调局 REDD+ (BNCCREDD) Jennifer Juliana Escamilla Valdez,萨尔瓦多,环境
和自然资源部 Konan Yao Eric Landry,科特迪瓦,REDD+ 常设执行秘书处 Tatiana Nana,喀麦隆,REDD+技术秘书处
署名 Bullock, E. 2021。连续退化检测 (CODED)。© 世界银行。许可证: 知识共享署名许可证 (CC BY 3.0 IGO)

https://openmrv.org/web/guest/w/modules/mrv/modules_2/continuous-degradation-detection-coded 36/36

You might also like