Для временного ряда температуры (MYD11A2) за год, как определить дату, когда температура впервые превышает пороговое значение? - PullRequest
0 голосов
/ 12 июля 2020

Цель состоит в том, чтобы определять начало вегетационного периода для риса в холодных регионах ежегодно (на примере 2019 года) с использованием набора данных о температуре MODIS Terra, который определяется как ночная температура выше 278,15 градуса Кельвина (5 градусов Цельсия). в первый раз. Заранее благодарим за любые подсказки.

// MODIS LST product
var LST = ee.ImageCollection("MODIS/006/MYD11A2")
  .select("LST_Night_1km") // Night temperature in kelvin
  .filterDate("2019", "2020");

1 Ответ

0 голосов
/ 13 июля 2020

Основная идея c такова:

  1. преобразовать дату изображения в ee. Изображение замаскировано температурной маской.
  2. получить минимальное значение в стопке изображений даты.
var date2img = function(img){
  img = ee.Image(img);
  var date = img.date().getRelative('day', 'year'); // date in Day-of-Year format
  var scaleFactor = 0.02          // the scale factor for the temperature band is 0.02
  var mask = img.gt(278.15/scaleFactor )   // high temperature mask
  return ee.Image(date).toFloat().updateMask(mask);  
};

var start = LST.map(date2img).min();  // determine the first day of growing season
...