Альтернатива клипу для функций и коллекции функций в Google Earth Engine

Я новичок в Google Earth Engine и хочу иметь возможность выполнять анализ наложения объектов, как показано в этом документе ArcGIS: http://resources.esri.com/help/9.3/arcgisdesktop/com/gp_toolref/geoprocessing/overlay_analysis.htm

Кажется, я не могу найти способ помочь мне сделать это в GEE. У меня есть две FeatureCollections. Оба представляют собой коллекции примерно из 50 полигонов, один из сайтов исследования и один из регионов, и я хочу выяснить, где сайты перекрывают регионы, и если они перекрываются, какая доля сайта находится в каждом регионе, который он перекрывает. Я пытался использовать «пересечение», но это показывает мне только область пересечения между сайтами и регионами. Существует метод «обрезки», который может быть полезен для закрепления сайтов по регионам, в которых они находятся, но, похоже, он доступен только для изображений, а не для коллекций объектов. Есть ли у вас какие-нибудь предложения, как я могу это сделать?

Спасибо


person ah9    schedule 30.05.2017    source источник
comment
Вы пытаетесь сделать наложение объектов или растровое наложение? Для того, что вы объяснили, это похоже на наложение функций   -  person Rodrigo E. Principe    schedule 01.06.2017
comment
Да, это наложение функций, но я не вижу, как это сделать в Earth Engine, есть предложения?   -  person ah9    schedule 01.06.2017
comment
Earth Engine - это не инструмент векторной обработки, это инструмент обработки растров, поэтому я не рекомендую использовать его для ваших целей, вместо этого используйте QGIS.   -  person Rodrigo E. Principe    schedule 01.06.2017
comment
Спасибо, что это полезно услышать, я знаю, как это сделать в Q, но я оцениваю, насколько полезен Google Earth Engine для векторной обработки в настоящее время, и это пример для тестирования.   -  person ah9    schedule 02.06.2017


Ответы (1)


Хотя QGIS довольно легко справляется с этой задачей, как уже заявил в комментариях Родриго Э. Принсипи, это можно сделать и в GEE.

Насколько я понимаю из вашего вопроса, вы не получили функцию, возвращенную при вызове correct (). На самом деле существует множество способов вызвать пересечение, в зависимости от типа данных, к которым вы пытаетесь его применить. В любом случае вывод может немного отличаться (просто проверьте вкладку документов в редакторе кода).

Теперь я предполагаю, что и вы изучаете сайты, и регионы, находящиеся в featureCollection. Учебные площадки будут называться StudySites, а регионы - регионами. Код, который вы ищете, выглядит примерно так:

// Extract geometries from you regions 
// If you have one region (type: feature), do:
var regionGeom = region.geometry();
// for more than one region (type: featureCollection), do something like:
var regionGeom = region.map(function(f) {
  return f.geometry();
});

// Now map over your study sites and use intersect to clip them on the region(s)
var stuySitesClip = studySites.map(function(f) {
  return f.intersection(regionGeom, 1); //1 refers to the maxError argument
});

Другой вариант - использовать подключаемый модуль GEE в QGIS и объединить возможности обоих миров (хотя у меня еще нет в этом опыта, но, возможно, стоит попробовать).

person Tristian    schedule 15.04.2020