遥感云平台-GEE利用Landsat5/7/8/9计算时序RSEI(javascript)

本文旨在整理与 R S E I RSEI RSEI 指数相关的资料,并整合了一套适用于 Landsat 5/7/8/9 长时间序列计算的 R S E I RSEI RSEI 代码。在写课程论文时,网上搜集到大量相关资料,但对于一些细节和代码实现上的差异存在疑问,因此对常见问题进行了汇总和整理,部分代码需要统一命名或者优化用 AI 辅助,如有问题敬请批评指教!(后台留言即可)

内容介绍

徐涵秋老师提出遥感生态指数( R S E I RSEI RSEI), 能完全基于遥感信息集成多种指标,实现对区域生态环境的快速检测和评价。因其具有很强的客观性、稳定性和可视性,目前已在城市的生态环境质量评价中得到广泛应用。构建 R S E I RSEI RSEI 需要提取绿度、湿度、干度和热度四个生态因子,通过主成分变换合成四个指标,具体公式如下:[1]

  • 绿度指标:植被覆盖状况是衡量一个地区生态质量的关键,归一化植被指数 NDVI \text{NDVI} NDVI 是应用最广泛的植被指数之一。 NDVI = ρ n i r − ρ r e d ρ n i r + ρ r e d \text{NDVI}=\frac{\rho_{\mathrm{nir}}-\rho_{\mathrm{red}}}{\rho_{\mathrm{nir}}+\rho_{\mathrm{red}}} NDVI=ρnir+ρredρnirρred
    • 绿度指标可以替换为更适合山区的山地 NDVI \text{NDVI} NDVI或者 kNDVI \text{kNDVI} kNDVI
  • 湿度指标:缨帽变换(TCT)是将光谱数据压缩成与具有最小信息损失的几个波段的重要工具,经TCT变换后的前3个分量通常被定义为亮度、绿度、湿度,这些已广泛应用于生态环境检测之中。湿度指标采用缨帽变换的湿度分量,用以指示土壤和植被的水分信息。 WET = 0.1511 ρ b l u e + 0.1973 ρ g r e e n + 0.3283 ρ r e d + 0.3407 ρ n i r − 0.7117 ρ s w i r 1 − 0.4559 ρ s w i r 2 \text{WET}=0.1511\rho_{\mathrm{blue}}+0.1973\rho_{\mathrm{green}}+0.3283\rho_{\mathrm{red}}\\+0.3407\rho_{\mathrm{nir}}-0.7117\rho_{\mathrm{swir1}}-0.4559\rho_{\mathrm{swir2}} WET=0.1511ρblue+0.1973ρgreen+0.3283ρred+0.3407ρnir0.7117ρswir10.4559ρswir2 由于 Landsat 5/7/8 的传感器参数不同,因此计算 WET 分量的参数不同,具体如表格所示:(Landsat 8 与 Landsat 9 由于十分相似,可以使用同一套缨帽变换的参数。[5])
Blue Green Red NIR SWIR1 SWIR2 来源
Landsat 5 TM 0.0315 0.2021 0.3102 0.1594 -0.6806 -0.6109 [2]
Landsat 7 ETM+ 0.2626 0.2141 0.0926 0.0656 -0.7629 -0.5388 [3]
Landsat 8 OLS 0.1511 0.1973 0.3283 0.3407 -0.7117 -0.4559 [4]
  • 干度指标:建筑用地和裸露的土壤均会造成地表干化,地表干化一定程度上会造成区域生态环境污染。因此干度指标( NDSBI \text{NDSBI} NDSBI)同时考虑到建筑用地与裸土的影响,由规范到0~1之间的裸土指数( B I BI BI)与建筑指数( I B I IBI IBI)平均算出。 I S I = ( ρ S W I R 1 + ρ R e d ) − ( ρ N I R + ρ B l u e ) ( ρ S W I R 1 + ρ R e d ) + ( ρ N I R + ρ B l u e ) I_{ {\mathrm{SI}}}=\frac{(\rho_{ {\mathrm{SWIR}1}}+\rho_{ {\mathrm{Red}}})-(\rho_{ {\mathrm{NIR}}}+\rho_{ {\mathrm{Blue}}})}{(\rho_{ {\mathrm{SWIR}1}}+\rho_{ {\mathrm{Red}}})+(\rho_{ {\mathrm{NIR}}}+\rho_{ {\mathrm{Blue}}})} ISI=(ρSWIR1+ρRed)+(ρNIR+ρBlue)(ρSWIR1+ρRed)(ρNIR+ρBlue) I I B I = { 2 ρ N I R / [ ( ρ S W I R 1 + ρ N I R ) − ρ N I R / ( ρ N I R + ρ R e d ) − ρ G r e e n / ( ρ G r e e n + ρ S W I R 1 ) ] } / { 2 ρ S W I R 1 / [ ( ρ S W I R 1 + ρ N I R ) + ρ N I R / ( ρ N I R + ρ R e d ) + ρ G r e e n / ( ρ G r e e n
### 计算RSEI(Remote Sensing Environmental Index)的方法 在Google Earth Engine (GEE)计算RSEI涉及多个步骤,主要包括数据预处理、主成分分析(PCA)[^2]以及通过特定算法提取环境指数。以下是详细的实现方式: #### 数据准备 为了计算RSEI,通常需要使用多光谱卫星影像作为输入数据源,例如Landsat系列或Sentinel-2影像。这些影像提供了不同波段的反射率信息,可用于后续的主成分分析。 ```javascript // 加载 Sentinel-2 影像集合 var dataset = ee.ImageCollection('COPERNICUS/S2') .filterDate('2023-01-01', '2023-12-31') // 设置时间范围 .filterBounds(geometry); // 定义研究区域几何边界 ``` #### 主成分分析(PCA) 主成分分析用于减少维度并突出显示最重要的特征。这一步骤可以通过矩阵运算完成,其中每个像素都被表示为其主要分量上的投影值。 ```javascript // 提取所需波段 var bands = ['B2', 'B3', 'B4', 'B8']; // 创建一个函数来进行 PCA 转换 function pca(image){ var array = image.select(bands).toArray(); // 获取协方差矩阵 var covarMatrix = ee.Array(ee.Reducer.covariance().reduce(array)); // 使用 SVD 方法分解得到特征向量和特征值 var svdResult = covarMatrix.svd(); // 应用变换获得主成分图像 return image.addBands( array.matrixMultiply(svdResult.get('V')).arrayProject([0]).arrayFlatten(['pc1','pc2']) ); } ``` #### K-Means聚类与距离度量 一旦获得了主成分得分图,则可进一步应用K-means或其他无监督学习技术来识别不同的土地覆盖类别或者污染程度等级。在此过程中可以选择欧几里得距离或曼哈顿距离作为相似性测度标准[^1]。 ```javascript // 执行k均值分类 var clusterer = ee.Clusterer.wekaKMeans({ numClusters: 5, distanceMeasure: 'manhattan' // 替代选项:"euclidean" }); var clusteredImage = pca(dataset.first()).cluster(clusterer); Map.addLayer(clusteredImage.randomVisualizer(), {}, 'Clustered Image'); ``` 最终输出将是基于所选参数生成的一组离散标签映射至原始地理空间位置上形成的结果层叠视图。
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值