0

我正在做一个项目来测量 8 个不同冰川附近 225 个点的反射率值。我遇到了用 2 个点执行此操作的代码,我对其进行了编辑,以在 Landsat 7 时间序列中为我提供 225 个点的夏季值。当我进行此编辑时,反射率值并不受欢迎。我不知道我错过了什么,我很迷茫。

我对 Google 地球引擎不是很陌生,但我的 Java 技能很少。因此,欢迎任何和所有帮助。这是指向我的点数据的链接,如果您无法访问它https://www.google.com/fusiontables/DataSource?docid=1DerChsxqvFuocqUtzTeqdBszN68LEgT2a5sZ9vuD

var pts = ee.FeatureCollection('ft:1DerChsxqvFuocqUtzTeqdBszN68LEgT2a5sZ9vuD');

//IMPORT LANDSAT IMAGE
var images_ls7 = ee.ImageCollection('LANDSAT/LE7_L1T_TOA_FMASK) //Landsat 7 TOA with F_Mask
  .filter(ee.Filter.dayOfYear(150, 240)) // Filters for Summer dates
  .filter(ee.Filter.eq('wrs_path', 68)) // Collects correct path/row
  .filter(ee.Filter.eq('wrs_row', 18));

// Empty Collection to fill
var ft = ee.FeatureCollection(ee.List([]));

var fill = function(img, ini) {
  // type cast
  var inift = ee.FeatureCollection(ini);

  // gets the values for the points in the current img
  var ft2 = img.reduceRegions(pts, ee.Reducer.first(),30);

  // gets the date of the img
  var date = img.date().format();

  // writes the date in each feature
  var ft3 = ft2.map(function(f){return f.set("date", date)});

  // merges the FeatureCollections
  return inift.merge(ft3);
};

// Iterates over the ImageCollection
var newft = ee.FeatureCollection(images_ls7.iterate(fill, ft));

// Export
Export.table.toDrive(newft,
"Description: List of points, dates, and reflectance values",
"Test Data",
"Glacier Point Band Values");
4

0 回答 0