结合 MODIS 产品 - GEE

Combining MODIS products - GEE

我正在尝试组合 MODIS 产品; MOD09GA(波段 1-7)和 MODOCGA(波段 8-16),以便查看我研究区域(一个大湖)中不同点的光谱特征(波段 1-16)。

我遇到的第一个问题是 MODOCGA 不允许我 .select 我需要的波段。见下文,MODO9 工作正常,但 MODOC 没有。

var MOD09 = ee.ImageCollection('MODIS/006/MOD09GA')
           .filterDate('2016-08-20', '2016-09-30')
           .select(["sur_refl_b0[1-7]"]);

var MODOC = ee.ImageCollection('MODIS/006/MODOCGA')
           .filterDate('2016-08-20', '2016-09-30')
           .select(["sur_refl_b[08-16]"]);

一旦我弄明白了这一点,我就可以尝试合并这两个集合,这样我就有了一个包含波段 1-16 的集合。如果您对此有任何想法,我们也将不胜感激!

这对你有用吗?请注意,匹配图像存储在名为 'match':

的 属性 中
var MOD09 = ee.ImageCollection('MODIS/006/MOD09GA')
           .filterDate('2016-08-20', '2016-09-30')
           .select(["sur_refl_b0[1-7]"]);

var MODOC = ee.ImageCollection('MODIS/006/MODOCGA')
           .filterDate('2016-08-20', '2016-09-30')
           .select(["sur_refl_b(.*)"]);

var filter = ee.Filter.equals({
  leftField: 'system:index', 
  rightField: 'system:index', 
});

var join = ee.Join.saveFirst('match').apply({
  primary: MOD09, 
  secondary: MODOC, 
  condition: filter
});

print(join);

一个非常简单的解决方案:

var MOD09 = ee.ImageCollection('MODIS/006/MOD09GA')
           .filterDate('2016-08-20', '2016-09-30')
           .select(["sur_refl_b0[1-7]"]);

var MODOC = ee.ImageCollection('MODIS/006/MODOCGA')
           .filterDate('2016-08-20', '2016-09-30')
           .select(["sur_refl_b(.*)"]);

var pkgs = require('users/kongdd/public:pkgs.js');
// default combine by system:time_start
var imgcol_join = pkgs.InnerJoin(MOD09, MODOC).sort("system:time_start");
print(imgcol_join, 'imgcol_join');

https://code.earthengine.google.com/f9e37c5528f53b8e236af4e68bedd6b4