GEE时序——利用sentinel-2(哨兵-2)数据进行地表物候学分析(时间序列平滑法估算和非平滑算法代码)

简介: GEE时序——利用sentinel-2(哨兵-2)数据进行地表物候学分析(时间序列平滑法估算和非平滑算法代码)

简介

哨兵-2A/B 串联卫星的空间分辨率高、重访时间长,有可能改进对陆地表面物候的检索。不过,生物群落和区域特征在很大程度上限制了陆表物候学算法的设计。在北极地区,这种生物群落特有的特征包括长期积雪、持续云层覆盖和生长季节短暂。在此,我们评估了哨兵-2 获取北极高分辨率 LSP 地图的可行性。我们通过在谷歌地球引擎(GEE)中简单实施阈值法,提取了 2019 年和 2020 年的季节开始和结束时间(分别为 SoS 和 EoS)。我们发现哨兵-2 和 PhenoCam 的指标之间具有高度的相似性;哨兵-2 增强植被指数(EVI)的结果最佳(SoS 的均方根误差(RMSE)和平均误差(ME)分别为 3.0 d 和 -0.3 d,EoS 的均方根误差(RMSE)和平均误差(ME)分别为 6.5 d 和 -3.8 d),尽管其他植被指数的表现类似。在同质地貌中,哨兵-2 EVI 的物候图与中分辨率成像分光仪(MODIS)提取的相同物候图相比效果良好(SoS 的 RMSE 和 ME 分别为 9.2 d 和 2.9 d,EoS 为 6.4 d 和 -0.9d)。当哨兵-2 时间序列出现长时间(>40 d)的数据缺失时,将过滤不可靠的 LSP 估计值,并激活质量标志指示器;春季和初夏的不连续性(9.2%)低于夏末和秋季(39.4%)。哨兵-2 高分辨率 LSP 地图和 GEE 物候提取方法将为植被监测提供支持,并有助于改进陆地表面模型对北极植被物候的表示。

Normalized Difference Phenology Index,NDPI

归一化差异物候指数(Normalized Difference Phenology Index,NDPI)是一种用于测量植被物候变化的指数。物候是指植物生命周期的不同阶段,如萌芽、开花和结果等。

NDPI通过计算某一时刻的归一化差异植被指数(Normalized Difference Vegetation Index,NDVI)与该地点历史上相同时期的平均NDVI之间的差异来表示物候变化。NDVI是通过测量植被红外辐射与可见光辐射之间的比值来计算的。

NDPI的值范围从-1到1,值趋近于1表示该时期植被比历史上相同时期更为繁茂,值趋近于-1则表示植被比历史上相同时期较少。

NDPI可以用于监测植被的生长状态和季节性变化,对于农业、生态学和气象学等领域的研究具有重要意义。

NDPI是一种植被指数,用于监测植被物候随时间的变化。它是利用遥感数据计算的,用于量化植被的物候变化。NDPI是从近红外波段和红光波段的反射率差异中导出的,它提供了有关植物生长、凋落和其他物候事件的时间信息。该指数经过归一化处理,以考虑反射率的变化,并且对研究环境因素对植被物候的影响非常有用。研究人员利用NDPI改进了对使用Sentinel-2时间序列数据估算北极地表物候的方法。

文章引用

Descals, A.; Verger, A.; Yin, G.; Peñuelas, J. Improved Estimates of Arctic Land Surface Phenology Using Sentinel-2 Time Series. Remote Sens. 2020, 12, 3738. https://doi.org/10.3390/rs12223738

数据

我们利用哨兵-2 level-2A 数据生成了 2019 年和 2020 年的 LSP 指标,这些数据提供了 10 米、20 米和 60 米空间分辨率的每日冠顶反射率;从这些数据中,我们使用了 10 米分辨率波段 2、3、4 和 8,以及 20 米波段 12。哨兵-2A 和-2B 多光谱卫星分别于 2015 年和 2017 年发射,在赤道的重访时间为 5 d,随着纬度的增加而缩短。2019 年 5 月 1 日至 9 月 30 日期间,纬度在 70 至 75° 之间的最大重访时间为 1.7 d(平均:0.9 d)(图 1a)。将哨兵-2 估计的 LSP 指标与 500 米 MOD09GAv6 产品估计的相同指标进行了比较

 

利用哨兵-2 进行地表物候学分析

该资源库包含谷歌地球引擎代码,该代码是为利用哨兵-2 在高纬度地区估算陆地表面物候(LSP)指标(季节开始和结束(SoS 和 EoS))而开发的。

LSP 提取方法是阈值法。

代码:

使用时间序列平滑法估算 SoS 和 EoS(20 天组成和三次插值法)

此代码分为9各部分

SECTION 1 - Define parameters and setup

SECTION 2 - Define function for cubic interpolation

SECTION 3 - Prepare Sentinel-2 data

SECTION 4 - Generate composites

SECTION 5 - Increase window size for empty composites

SECTION 6 - Interpolate time series

SECTION 7 - Estimate phenology metrics

SECTION 8 - Plot results

SECTION 9 - Display legends  

第 1 节 - 定义参数和设置

第 2 节 - 定义三次插值函数

第3节 - 准备哨兵-2数据

第4节 - 生成合成数据

第 5 节 - 增加空合成的窗口大小

第6节 - 插值时间序列

第 7 节 - 估算物候指标

第 8 节 - 绘制结果

第 9 节 - 显示图例  

平滑后的阈值法。在提取 LSP 指标之前,对时间序列数据进行了平滑处理,这是 LSP 估计中的常见做法,以减少时间序列数据的噪声和不连续性[21]。选择处理步骤的标准是在不影响物候曲线再现的情况下,在 GEE 中实施这些步骤的可行性。过度平滑时间序列可能会导致不切实际的生长季节再现。首先,我们每 20 天应用一个平均半径为 10 d 的移动平均窗口;如果 20 d 合成窗口中的某一像素因缺乏有效观测而为空,则窗口大小增加到 40 d。阈值是根据插值时间序列的振幅而不是每日观测数据估算的,然后分别根据插值时间序列中超过动态阈值的第一天和最后一天来估算SoS和EoS。

///
// Land Surface Estimation (LSP) with Sentinel-2 in the Arctic
//
// This is a demo code for the estimation of the start and end of season (SoS and EoS) with the threshold method with
// time series smoothing (20-day composition and cubic interpolation).
//
// The LSP method is the threhsold method
//
// Adrià Descals - a.descals@creaf.uab.cat
// CREAF - Centre de Recerca Ecològica i Aplicacions Forestals
var textSections = '' +
  "\n SECTION 1 - Define parameters and setup " +
  "\n SECTION 2 - Define function for cubic interpolation " +
  "\n SECTION 3 - Prepare Sentinel-2 data " +
  "\n SECTION 4 - Generate composites  " +
  "\n SECTION 5 - Increase window size for empty composites  " +
  "\n SECTION 6 - Interpolate time series " +
  "\n SECTION 7 - Estimate phenology metrics " +
  "\n SECTION 8 - Plot results " +
  "\n SECTION 9 - Display legends " 
print(textSections)
 
 
//_______________________________________________________________________________________________________________________
// SECTION 1 - Define parameters and setup
Map.setOptions('satellite')
var geom = /* color: #ff0000 */ee.Geometry.Point([17.07398, 67.7578]);
var point = geom // inspect results for this location
var roi = point.buffer(100000).bounds() // display results around the point of interest
var vegIndex = 'evi' // Specify the vegetation index (VI): 'ndvi', 'evi', 'gcc', or 'ndpi'.
var th = 0.5 // Define the percentage of amplitude for the estimation of the threshold 
var threshMin = 0.2 // minimum NDVI value for the reclassification of snow values
var scale = 50 // scale of the analysis
var year1 = 2019 // year of processing
var lag = 20 // temporal resolution of the composites
var startDate = year1+'-04-15'
var endDate = year1+'-12-20'
Map.centerObject(roi,7)
//_______________________________________________________________________________________________________________________
// SECTION 2 - Define function for cubic interpolation
var cubicInterpolation = function(collection,step){ 
var listDekads = ee.List.sequence(1, collection.size().subtract(3), 1);
var colInterp = listDekads.map(function(ii){
  var ii = ee.Number(ii);
  
    var p0 = ee.Image(collection.toList(10000).get(ee.Number(ii).subtract(1)));
    var p1 = ee.Image(collection.toList(10000).get(ii));
    var p2 = ee.Image(collection.toList(10000).get(ee.Number(ii).add(1)));
    var p3 = ee.Image(collection.toList(10000).get(ee.Number(ii).add(2)));
  
    var diff01 = ee.Date(p1.get('system:time_start')).difference(ee.Date(p0.get('system:time_start')), 'day');
    var diff12 = ee.Date(p2.get('system:time_start')).difference(ee.Date(p1.get('system:time_start')), 'day');
    var diff23 = ee.Date(p3.get('system:time_start')).difference(ee.Date(p2.get('system:time_start')), 'day'
相关文章
|
23天前
|
数据采集 机器学习/深度学习 算法
【优秀设计案例】基于K-Means聚类算法的球员数据聚类分析设计与实现
本文通过K-Means聚类算法对NBA球员数据进行聚类分析,旨在揭示球员间的相似性和差异性,为球队管理、战术决策和球员评估提供数据支持,并通过特征工程和结果可视化深入理解球员表现和潜力。
【优秀设计案例】基于K-Means聚类算法的球员数据聚类分析设计与实现
|
23天前
|
存储 算法 大数据
小米教你:2GB内存搞定20亿数据的高效算法
你好,我是小米。本文介绍如何在2GB内存中找出20亿个整数里出现次数最多的数。通过将数据用哈希函数分至16个小文件,每份独立计数后选出频次最高的数,最终比对得出结果。这种方法有效解决大数据下的内存限制问题,并可应用于更广泛的场景。欢迎关注我的公众号“软件求生”,获取更多技术分享!
139 12
|
18天前
|
编解码 算法 Linux
Linux平台下RTSP|RTMP播放器如何跟python交互投递RGB数据供视觉算法分析
在对接Linux平台的RTSP播放模块时,需将播放数据同时提供给Python进行视觉算法分析。技术实现上,可在播放时通过回调函数获取视频帧数据,并以RGB32格式输出。利用`SetVideoFrameCallBackV2`接口设定缩放后的视频帧回调,以满足算法所需的分辨率。回调函数中,每收到一帧数据即保存为bitmap文件。Python端只需读取指定文件夹中的bitmap文件,即可进行视频数据的分析处理。此方案简单有效,但应注意控制输出的bitmap文件数量以避免内存占用过高。
|
22天前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习的伦理困境:数据隐私与算法偏见
【8月更文挑战第9天】随着深度学习技术的飞速发展,其对个人隐私和数据安全的威胁日益凸显。本文探讨了深度学习在处理敏感信息时可能导致的数据泄露风险,以及训练数据中固有偏见如何影响算法公正性的问题。文章分析了当前隐私保护措施的局限性,并提出了减少算法偏见的方法。最后,本文讨论了如何在保障技术进步的同时,确保技术应用不侵犯个人权益,呼吁建立更为全面的伦理框架以指导深度学习的发展。
|
25天前
|
数据采集 算法 数据可视化
基于K-Means聚类算法对球员数据的聚类分析,可以自主寻找最优聚类数进行聚类
本文介绍了一个基于K-Means聚类算法的NBA球员数据分析项目,该项目通过采集和分析球员的得分、篮板、助攻等统计数据,使用轮廓系数法和拐点法确定最优聚类数,将球员分为不同群组,并提供了一个可视化界面以便直观比较不同群组的球员表现。
基于K-Means聚类算法对球员数据的聚类分析,可以自主寻找最优聚类数进行聚类
|
2月前
knn增强数据训练
【7月更文挑战第27天】
24 10
|
29天前
|
存储 算法 定位技术
预见未来?Python线性回归算法:数据中的秘密预言家
【8月更文挑战第3天】站在数据的海洋边,线性回归算法犹如智慧的预言家,揭示着房价的秘密。作为房地产投资者,面对复杂的市场,我们可通过收集房屋面积、位置等数据并利用Python的pandas及scikit-learn库,建立线性回归模型预测房价。通过评估模型的均方根误差(RMSE),我们可以更精准地判断投资时机,让数据引领我们走向成功的彼岸。
16 1
|
2月前
knn增强数据训练
【7月更文挑战第28天】
17 2
|
2月前
|
算法 安全 网络安全
信息安全: MAC(消息认证码)算法,保护数据完整性和真实性的利器
MAC 算法在保证数据完整性和真实性方面扮演着重要角色。HMAC 和 CMAC 作为两种主要的 MAC 算法,因其高安全性和广泛应用,已经成为现代通信和数据保护中不可或缺的一部分。通过本文的介绍,希望读者能够更好地理解和使用 MAC 算法,保障信息的安全性。
|
2月前
|
机器学习/深度学习 算法 数据挖掘
基于改进K-means的网络数据聚类算法matlab仿真
**摘要:** K-means聚类算法分析,利用MATLAB2022a进行实现。算法基于最小化误差平方和,优点在于简单快速,适合大数据集,但易受初始值影响。文中探讨了该依赖性并通过实验展示了随机初始值对结果的敏感性。针对传统算法的局限,提出改进版解决孤点影响和K值选择问题。代码中遍历不同K值,计算距离代价,寻找最优聚类数。最终应用改进后的K-means进行聚类分析。
下一篇
云函数