GEE 影像下载——批量下载多源遥感影像(Landsat 8 C02 SR)光谱波段。光谱指数,缨帽变换和纹理特征以及SAR和地形数据(DEM)

本博客的主要目的是实现不同年份多源遥感影像的下载,最终下载的结果是一个单景影像集合的多源遥感波段影像,多波段的影像,不是影像集合。

多源遥感影像

多源遥感影像是指利用不同的遥感传感器获取的具有不同空间分辨率、光谱分辨率和时间分辨率的遥感影像。它可以提供更全面、更详细的地表信息,有助于深入了解地球表面的变化和特征。本文将从数据源、空间分辨率、光谱分辨率和时间分辨率等方面介绍多源遥感影像。

首先,多源遥感影像的数据源主要包括航空摄影、卫星遥感和地面观测等。航空摄影是利用飞机或无人机携带摄影机对地表进行拍摄,可以获取高分辨率的影像。卫星遥感是利用人造卫星对地球表面进行观测,常见的卫星包括Landsat、MODIS和Sentinel等,可以获取大范围的遥感影像。地面观测是通过安装在地表的观测设备对地表进行观测,可以获取高精度的影像。

其次,多源遥感影像的空间分辨率是指图像中一个像素所代表的地面实际面积。航空摄影的空间分辨率可以达到米级甚至亚米级,能够提供非常详细的地表信息。卫星遥感的空间分辨率一般在10米到几百米之间,可以满足大范围的地表监测需求。地面观测的空间分辨率可以达到毫米级,适用于对小尺度地表特征的监测。

再次,多源遥感影像的光谱分辨率是指遥感传感器能够接收到的不同光谱波段的数量和范围。航空摄影的光谱分辨率一般较低,只能获取可见光和红外波段的图像。卫星遥感的光谱分辨率较高,可以获取更多波段的图像,如近红外、短波红外和热红外等。地面观测的光谱分辨率由于测量设备的不同,可以覆盖更多波段的信息。

最后,多源遥感影像的时间分辨率是指遥感传感器连续观测同一地区的时间间隔。航空摄影的时间分辨率较低,一般需要几个月甚至一年才能进行一次拍摄。卫星遥感的时间分辨率较高,可以实现每天到每几天观测一次。地面观测的时间分辨率也较高,可以实现每分钟甚至每秒钟观测一次。

综上所述,多源遥感影像是利用不同的遥感传感器获取的具有不同空间分辨率、光谱分辨率和时间分辨率的遥感影像。通过综合利用多源遥感影像,可以提供更全面、更详细的地表信息,有助于深入了解地球表面的变化和特征。

Landsat 8(CO2 SR)是一种卫星遥感影像传感器,其光谱波段包括可见光、红外和短波红外等。在利用Landsat 8(CO2 SR)影像进行地表特征提取和分析时,常常使用光谱指数、缨帽变换和纹理特征等技术。

光谱指数

光谱指数是一种利用遥感影像的不同波段间的比值或差异来反映地表特征的技术。常见的光谱指数包括归一化植被指数(NDVI)、土壤调整植被指数(SAVI)和增强型湿度指数(EVI)等。NDVI是最常用的光谱指数之一,通过计算近红外波段和红光波段的比值,可以反映植被覆盖的程度和植被的健康状况。SAVI是对NDVI的改进,通过考虑土壤背景的影响,可以更准确地估计植被覆盖。EVI则在NDVI的基础上引入了大气校正和大气颗粒效应的修正,适用于高云量和大气颗粒较多的地区。

缨帽变换

缨帽变换(Tasseled Cap Transformation)是一种将多波段遥感影像转化为低维度特征空间的技术。该方法通过线性组合,将原始的多波段数据转换为亮度、绿度和湿度等三个缨帽特征。亮度反映了地表的亮度和光照条件,绿度反映了地表的植被状况,湿度反映了地表的湿度程度。通过缨帽变换,可以简化数据分析的复杂性,提取地表的主要特征信息。

纹理特征

纹理特征是指地表像素间的空间关系和变化规律。在Landsat 8(CO2 SR)影像中,常常使用灰度共生矩阵(GLCM)和纹理谱方法来提取纹理特征。GLCM是一种描述像素间灰度关系的统计工具,通过计算像素的灰度值和相对位置的关系,可以得到纹理特征,如对比度、均匀度和相关性等。纹理谱方法则基于频率领域的分析,通过计算影像在不同频率下的能量和方向特征,可以提取地表的纹理特征。

综上所述,利用Landsat 8(CO2 SR)影像进行地表特征提取和分析时,可以使用光谱指数、缨帽变换和纹理特征等技术。这些方法可以帮助提取地表的植被信息、土壤信息和纹理信息等,进一步了解和分析地表的变化和特征。

代码:

// Get a palette: a list of hex strings
var palettes = require('users/gena/packages:palettes');
var palette = palettes.colorbrewer.RdYlGn[11];
var table =  geometry2 = /* color: #98ff00 */ee.Geometry.Polygon(
        [[[116.59770311051227, 36.06171048062139],
          [117.67436326676227, 36.06171048062139],
          [117.56449998551227, 36.97991222173682],
          [116.44389451676227, 37.06762548508956]]]);
函数//
//Landsat8/9 T1_L2数据去云函数
function maskL8sr(image) {  
  var cloudBitMask = (1 << 3);  
  var CloudShadowBitMask = (1 << 4);  
  var SnowBitMask = (1 << 5);  
  var qa = image.select("QA_PIXEL");  
  var mask = qa.bitwiseAnd(cloudBitMask).eq(0)  
                 .and(qa.bitwiseAnd(CloudShadowBitMask).eq(0))
                 .and(qa.bitwiseAnd(SnowBitMask).eq(0));  
  return image.updateMask(mask);  
} 

//Landsat5/7/8 SR数据去云  
function l57rmCloud(image) {  
  var cloudShadowBitMask = (1 << 3);  
  var cloudsBitMask = (1 << 5);  
  var qa = image.select("QA_PIXEL");  
  var mask = qa.bitwiseAnd(cloudShadowBitMask).eq(0)  
                .and(qa.bitwiseAnd(cloudsBitMask).eq(0));  
  return image.updateMask(mask);  
 } 

//重新命名一个否则无法匹配结果因为波段名称不同 
function renameL89_SR(img) {
  return img.select(
		['SR_B2', 'SR_B3', 'SR_B4', 'SR_B5', 'SR_B6', 'SR_B7'],
		['Blue', 'Green', 'Red', 'NIR', 'SWIR1', 'SWIR2']);
}
//重新命名一个否则无法匹配结果因为波段名称不同 

function renameL57_SR(img) {
  return img.select(
		["SR_B1",'SR_B2', 'SR_B3', 'SR_B4', 'SR_B5','SR_B7'],
		['Blue', 'Green', 'Red', 'NIR', 'SWIR1', 'SWIR2']);
}


// //var y = ee.List([1987])

  var start = ee.Date.fromYMD(2022, 5, 1);
  var stop =  ee.Date.fromYMD(2022, 10, 31);

// //所有常用的指数公式
function calVI(img) {
  var ndvi = img.normalizedDifference(['NIR', 'Red']).rename('NDVI');
  var gndvi = img.normalizedDifference(['NIR', 'Green']).rename('GNDVI');
  //标准化燃烧率 (NBR)
  var nbr = img.normalizedDifference(['NIR', 'SWIR1']).rename('NBR');
  
//Mcfeeters 1996
  var ndwi=img.normalizedDifference(["Green", "NIR"]).rename("NDWI");
//Bo-cai Gao 1996
  var ndwi1=img.normalizedDifference(["NIR", "SWIR1"]).rename("NDWI1");
  //徐涵秋MNDWI函数 2005
  var mndwi=img.normalizedDifference(["Green", "SWIR1"]).rename("MNDWI");

  var ndmi=img.normalizedDifference(["NIR", "SWIR1"]).rename("NDMI");
  //var mndmi=img.normalizedDifference(["Green", "SWIR1"]).rename("NDMI");
  
  
//  归一化差值雪指数 (NDSI)
  var ndsi=img.normalizedDiffer