RasterCollection
Краткая информация
Определяет группу входных растров и атрибуты, которые нужно включить в подборку, которые будут использоваться для обработки.
Обсуждение
Объект RasterCollection позволяет сортировать и фильтровать группу растров, а также готовит коллекцию для дополнительной обработки и анализа.
Объект RasterCollection включает методы max, min, median, mean, majority и sum для вычисления статистики по каждому пикселу среди совпадающих каналов в пределах растров коллекции.
Например, метод sum добавляет значения пиксела из Канала 1 элемента растра 1 к значениям пиксела из Канала 1 элемента растра 2, а затем возвращает объект Raster, где Канал 1 содержит эти просуммированные значения.

Синтаксис
RasterCollection(rasters, {attribute_dict})
| Имя | Объяснение | Тип данных |
|---|---|---|
|
rasters |
Входные наборы растровых данных. К поддерживаемым входным данным относятся список растров, набор данных мозаики, многомерный растр в формате Cloud Raster Format, файл NetCDF или сервис изображений. Если используется список наборов растровых данных, все растры должны иметь одинаковый размер ячеек и пространственную привязку. |
List |
|
attribute_dict (Дополнительный) |
Словарь Python, который содержит атрибутивную информацию, добавляемую к каждому растру, когда входными данными является список растров. Для каждой пары ключ-значение, ключ - это имя атрибута, а значение - список значений, представляющих атрибутивное значение для каждого растра. Например, чтобы добавить именованное поле к списку из трех растров, используйте (Значение по умолчанию — None) |
Dictionary |
Свойства
| Имя | Объяснение | Тип данных |
|---|---|---|
|
fields (Только для чтения) |
Список имен полей, включенных в коллекцию растров. |
String |
|
count (Только для чтения) |
Общее число элементов в коллекции растров. |
Integer |
Методы
addField(field_name, field_values[field_values,...])
В коллекцию растров добавляет новое поле и заполняет его значениями.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
field_name |
The name of the field to be added. |
String |
|
field_values[field_values,...] |
The list of values associated with the field name. The length of the list should match the number of items in the raster collection. |
List |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
RasterCollection |
Коллекция растров, содержащая новое поле. |
filter({where_clause}, {query_geometry_or_extent})
Фильтрует коллекцию растровых элементов по атрибутам или геометрии и возвращает коллекцию растров, содержащих только элементы, удовлетворяющие условиям фильтра. Если аргументы не заданы, все растровые элементы из коллекции будут возвращены в виде новой коллекции растров.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
where_clause (Дополнительный) |
Выражение, которое ограничивает возвращаемые записи. Более подробно о выражении WHERE и об условиях SQL см. в разделе Справочник по SQL для выражений запросов, применяемых в ArcGIS. (Значение по умолчанию — None) |
String |
|
query_geometry_or_extent (Дополнительный) |
Объект, который фильтрует элементы, например, возвращаются только те, которые пересекают объект. Задается с помощью объекта (Значение по умолчанию — None) |
Geometry |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
RasterCollection |
Коллекция растров, удовлетворяющая условиям запроса атрибутов или геометрии. |
filterByAttribute(field_name, operator, field_values[field_values,...])
Фильтрует коллекцию растровых элементов по атрибутивному запросу и возвращает коллекцию растров, содержащих только элементы, удовлетворяющие условиям запроса.
Чтобы осуществить запрос к коллекции растров на основе поля времени, используйте метод filterByTime.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
field_name |
Имя поля, использующегося в фильтре. |
String |
|
operator |
Ключевое слово для фильтрации атрибутов. Ключевые слова включают следующее:
|
String |
|
field_values[field_values,...] |
Значение или значения атрибута для сравнения. Могут быть заданы как строка, список или число. |
String |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
RasterCollection |
Коллекция растров, удовлетворяющая условиям атрибутивного запроса. |
filterByCalendarRange(calendar_field, start, {end}, time_field_name, date_time_format)
Фильтрует коллекцию растровых элементов на основе диапазона поля календаря и возвращает коллекцию растров, содержащую только те элементы, которые удовлетворяют фильтру. Если аргументы не заданы, все растровые элементы из коллекции будут возвращены в виде новой коллекции растров.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
calendar_field |
The name of the calendar field. Specify one of the following: |
String |
|
start |
The start value of the |
Integer |
|
end (Дополнительный) |
The end value of the |
Integer |
|
time_field_name |
The name of the field that contains the time attribute for each item in the collection. The default is |
String |
|
date_time_format |
The time format of the values in the time field. For example, if the input date and time value is |
String |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
RasterCollection |
Коллекция растров, удовлетворяющая запросу временного диапазона. |
filterByGeometry(query_geometry_or_extent)
Фильтрует коллекцию растровых элементов таким образом, чтобы возвращать только те, которые пересекаются с геометрией.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
query_geometry_or_extent |
Объект, который фильтрует элементы, например, возвращаются только те, которые пересекают объект. Задается с помощью объекта |
Geometry |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
RasterCollection |
Коллекция растров, удовлетворяющая условиям фильтра геометрии. |
filterByRasterProperty(property_name, operator, property_values[property_values,...])
Фильтрует коллекцию растровых элементов по запросу к свойствам растра и возвращает коллекцию растров, содержащих только элементы, удовлетворяющие запросу.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
property_name |
Имя свойства для использования в фильтре. |
String |
|
operator |
Оператор для фильтрации свойств.
|
String |
|
property_values[property_values,...] |
Значение или значения свойства для сравнения. Могут быть заданы как строка, список или число. |
String |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
RasterCollection |
Коллекция растров, удовлетворяющая условиям запроса свойств. |
filterByTime({start_time}, {end_time}, {time_field_name}, {date_time_format})
Фильтрует коллекцию растровых элементов по временному диапазону и возвращает коллекцию растров, содержащих только элементы, удовлетворяющие условиям фильтра.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
start_time (Дополнительный) |
Строка, задающая время начала. Формат строки должен соответствовать формату даты входных коллекций растров, например, "1990-01-01T13:30:00". Если не задано, необходимо задать время окончания, тогда будут возвращены элементы, содержащие значение времени до или равное времени окончания. (Значение по умолчанию — None) |
String |
|
end_time (Дополнительный) |
Строка, задающая время окончания. Формат строки должен соответствовать формату даты входных коллекций растров, например, "1991-01-01T13:30:00". Если не задано, необходимо задать время начала, тогда будут возвращены элементы, содержащие значение времени после или равное времени начала. (Значение по умолчанию — None) |
String |
|
time_field_name (Дополнительный) |
Имя поля, содержащего атрибут времени для каждого элемента в коллекции. (Значение по умолчанию — StdTime) |
String |
|
date_time_format (Дополнительный) |
Формат значений |
String |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
RasterCollection |
Коллекция растров, удовлетворяющая фильтру временного диапазона. |
fromSTACAPI(stac_api, {query}, {attribute_dict}, {request_method}, {request_params}, {context})
Создает объект RasterCollection из запроса SpatioTemporal Asset Catalog (STAC) API поиска.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
stac_api |
The URL of the STAC API root endpoint. This is the STAC API where the search will be performed, for example, The following STAC APIs are supported:
|
String |
|
query (Дополнительный) |
The
For the |
Dictionary |
|
attribute_dict (Дополнительный) |
The attribute information that will be added to each STAC item raster returned from the query. For each key-value pair, the key is the attribute name, and the value is a list of values that represent the attribute value for each raster. Attribute values can also be collected from the STAC items automatically using the STAC item metadata information. To do this, specify the STAC item property name for the attribute of interest as key-value pairs (attribute display name: STAC item property name).
Примечание:If no |
Dictionary |
|
request_method (Дополнительный) |
Specifies the HTTP request method that will be used with the STAC API for the search.
Example: "POST" (Значение по умолчанию — POST) |
String |
|
request_params (Дополнительный) |
The parameters of the STAC API search request. Specify the
|
Dictionary |
|
context (Дополнительный) |
Additional properties that will be used to control the creation of the object. The dictionary supports the The When working with individual assets, the asset key can be specified directly, for example, If the value of the
Examples:
The Example:
|
Dictionary |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
RasterCollection |
Возвращается новый экземпляр этого класса |
fromSTACCatalog(stac_catalog, {attribute_dict}, {request_params}, {context})
Создает объект RasterCollection из статического каталога SpatioTemporal Asset Catalog (STAC).
| Имя | Объяснение | Тип данных |
|---|---|---|
|
stac_catalog |
The URL of the STAC item, a The following static catalogs (and their underlying child catalogs) are supported:
|
String |
|
attribute_dict (Дополнительный) |
The attribute information that will be added to each STAC item raster returned from the query. For each key-value pair, the key is the attribute name, and the value is a list of values that represent the attribute value for each raster. Attribute values can also be collected from the STAC items automatically using the STAC item metadata information. To do this, specify the STAC item property name for the attribute of interest as key-value pairs (attribute display name: STAC item property name).
Примечание:If no |
Dictionary |
|
request_params (Дополнительный) |
The parameters of the STAC catalog or item request. Specify the
|
Dictionary |
|
context (Дополнительный) |
Additional properties that will be used to control the creation of the object. The dictionary supports the The When working with individual assets, the asset key can be specified directly, for example, If the value of the
Examples:
The Example:
|
Dictionary |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
RasterCollection |
Возвращается новый экземпляр этого класса |
getFieldValues(field_name, {max_count})
Возвращает значения указанного поля из коллекции растров.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
field_name |
Имя поля, из которого извлекаются значения. |
String |
|
max_count (Дополнительный) |
Целое, задающее максимальное число возвращаемых значений поля. Значения будут возвращаться в порядке, соответствующем порядку растровых элементов в коллекции. Если значение не задано, будут возвращены все значения данного поля. (Значение по умолчанию — None) |
Integer |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
String |
Список значений для заданного поля. |
groupBy(field_name)
Группирует коллекцию растров на основе поля. Каждая сгруппированная коллекция растров доступна через значение поля.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
field_name |
The name of the field. Items with the same field values will be grouped together. |
String |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
Dictionary |
Словарь, содержащий сгруппированные коллекции растров. Ключ словаря — это значение поля, связанное с именем поля, которое использовалось для задания группировки. Значение словаря представляет собой коллекцию растров, в которой имя поля содержит одно и то же значение поля. |
majority({ignore_nodata[ignore_nodata,...]}, {extent_type}, {cellsize_type})
Возвращает растровый объект, в котором каждый канал содержит значение пиксела, встречающееся в этом канале всех растров коллекции наиболее часто.
Например, если в коллекции имеется 10 растровых элементов, каждый с четырьмя каналами, метод majority определит значение пиксела, которое наиболее часто встречается во всех растрах в канале 1, в канале 2, в канале 3 и в канале 4; возвращается четырехканальный растр. Номера каналов сопоставляются между растрами с помощью индекса канала, поэтому у элементов коллекции растров должен быть одинаковый порядок каналов.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
ignore_nodata[ignore_nodata,...] (Дополнительный) |
Specifies whether NoData values are ignored. (Значение по умолчанию — True) |
Boolean |
|
extent_type (Дополнительный) |
Computes the extent of the output raster object when the input rasters have different extents.
(Значение по умолчанию — FirstOf) |
String |
|
cellsize_type (Дополнительный) |
Computes the cell size of the output raster object when the input rasters have different cell sizes.
(Значение по умолчанию — FirstOf) |
String |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
Raster |
Растр, в котором каждый канал содержит наиболее частое значение пиксела, встречающееся в данном канале всех растров коллекции. |
map(func)
Сопоставляет функцию Python с коллекцией растров.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
func |
The Python function to map over the raster collection. The return value of the function must be a dictionary in which one of the keys is
|
Function |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
RasterCollection |
Растровая коллекция, каждый элемент которой содержит растр с примененной функцией и присоединенными атрибутами. |
max({ignore_nodata[ignore_nodata,...]}, extent_type, cellsize_type)
Возвращает растровый объект, в котором каждый канал содержит максимальные значения пикселов, встречающееся в этом канале во всех растрах коллекции.
Например, если в коллекции имеется 10 растровых элементов, каждый с четырьмя каналами, метод max вычислит максимальное значение пиксела, которое встречается во всех растрах в канале 1, в канале 2, в канале 3 и в канале 4; возвращается четырехканальный растр. Номера каналов сопоставляются между растрами с помощью индекса канала, поэтому у элементов коллекции растров должен быть одинаковый порядок каналов.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
ignore_nodata[ignore_nodata,...] (Дополнительный) |
Specifies whether NoData values are ignored. (Значение по умолчанию — True) |
Boolean |
|
extent_type |
Computes the extent of the output raster object when the input rasters have different extents.
(Значение по умолчанию — FirstOf) |
String |
|
cellsize_type |
Computes the cell size of the output raster object when the input rasters have different cell sizes.
(Значение по умолчанию — FirstOf) |
String |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
Raster |
Растр, в котором каждый канал содержит максимальные значения пикселов, встречающееся в этом канале во всех растрах коллекции. |
mean({ignore_nodata[ignore_nodata,...]}, {extent_type}, {cellsize_type})
Возвращает растровый объект, в котором каждый канал содержит средние значения пикселов, встречающееся в этом канале во всех растрах коллекции.
Например, если в коллекции имеется 10 растровых элементов, каждый с четырьмя каналами, метод mean вычислит среднее значение пиксела, которое встречается во всех растрах в канале 1, в канале 2, в канале 3 и в канале 4; возвращается четырехканальный растр. Номера каналов сопоставляются между растрами с помощью индекса канала, поэтому у элементов коллекции растров должен быть одинаковый порядок каналов.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
ignore_nodata[ignore_nodata,...] (Дополнительный) |
Specifies whether NoData values are ignored. (Значение по умолчанию — True) |
Boolean |
|
extent_type (Дополнительный) |
Computes the extent of the output raster object when the input rasters have different extents.
(Значение по умолчанию — FirstOf) |
String |
|
cellsize_type (Дополнительный) |
Computes the cell size of the output raster object when the input rasters have different cell sizes.
(Значение по умолчанию — FirstOf) |
String |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
Raster |
Растр, в котором каждый канал содержит средние значения пикселов, встречающееся в этом канале во всех растрах коллекции. |
median({ignore_nodata[ignore_nodata,...]}, {extent_type}, {cellsize_type})
Возвращает растровый объект, в котором каждый канал содержит медианные значения пикселов, встречающееся в этом канале во всех растрах коллекции.
Например, если в коллекции имеется 10 растровых элементов, каждый с четырьмя каналами, метод median вычислит медианное значение пиксела, которое встречается во всех растрах в канале 1, в канале 2, в канале 3 и в канале 4; возвращается четырехканальный растр. Номера каналов сопоставляются между растрами с помощью индекса канала, поэтому у элементов коллекции растров должен быть одинаковый порядок каналов.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
ignore_nodata[ignore_nodata,...] (Дополнительный) |
Specifies whether NoData values are ignored. (Значение по умолчанию — True) |
Boolean |
|
extent_type (Дополнительный) |
Computes the extent of the output raster object when the input rasters have different extents.
(Значение по умолчанию — FirstOf) |
String |
|
cellsize_type (Дополнительный) |
Computes the extent of the output raster object when the input rasters have different extents.
(Значение по умолчанию — FirstOf) |
String |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
Raster |
Растр, в котором каждый канал содержит медианные значения пикселов, встречающееся в этом канале во всех растрах коллекции. |
merge(collection2)
Возвращает объединенную коллекцию растров, включающую все растры из двух коллекций растров.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
collection2 |
The raster collection to be merged. |
RasterCollection |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
RasterCollection |
Объединенная коллекция растров. |
min({ignore_nodata[ignore_nodata,...]}, {extent_type}, {cellsize_type})
Возвращает растровый объект, в котором каждый канал содержит минимальные значения пикселов, встречающееся в этом канале во всех растрах коллекции.
Например, если в коллекции имеется 10 растровых элементов, каждый с четырьмя каналами, метод min вычислит минимальное значение пиксела, которое встречается во всех растрах в канале 1, в канале 2, в канале 3 и в канале 4; возвращается четырехканальный растр. Номера каналов сопоставляются между растрами с помощью индекса канала, поэтому у элементов коллекции растров должен быть одинаковый порядок каналов.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
ignore_nodata[ignore_nodata,...] (Дополнительный) |
Specifies whether NoData values are ignored. (Значение по умолчанию — True) |
Boolean |
|
extent_type (Дополнительный) |
Computes the extent of the output raster object when the input rasters have different extents.
(Значение по умолчанию — FirstOf) |
String |
|
cellsize_type (Дополнительный) |
Computes the cell size of the output raster object when the input rasters have different cell sizes.
(Значение по умолчанию — FirstOf) |
String |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
Raster |
Растр, в котором каждый канал содержит минимальные значения пикселов, встречающееся в этом канале во всех растрах коллекции. |
mosaic({mosaic_method})
Возвращает набор растровых данных, в котором все элементы растровой коллекции собраны в мозаику и составляют единый растр.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
mosaic_method (Дополнительный) |
The method that will be used for overlapping areas between adjacent raster items. Mosaic method options include the following:
For more information about mosaic methods, see Displaying overlapping imagery. (Значение по умолчанию — First) |
String |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
Raster |
Набор растровых данных с растровыми элементами из коллекции, собранными в мозаику. |
qualityMosaic(quality_rc_or_list, {statistic_type})
Возвращает набор растровых данных, в котором все элементы растровой коллекции собраны в мозаику и составляют единый растр, на основе требований к качеству.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
quality_rc_or_list |
Растровая коллекция или список растров, использующиеся как индикаторы качества. Например, Band 1 из Landsat 8 - это канал Coastal/Aerosol, который может использоваться для определения концентрации в атмосфере мелкодисперсных аэрозольных частиц, таких как дым или туман. Для коллекции изображений Landsat 8, используйте метод |
RasterCollection |
|
statistic_type (Дополнительный) |
Статистика, используемая для сравнения входной коллекции или списка растров качества.
Например, для построения мозаики по коллекции входных растров, таких как упоминалось ранее, с минимальной концентрацией аэрозолей наверху, используйте статистику |
String |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
Raster |
Набор растровых данных с растровыми элементами из коллекции, собранными в мозаику. |
reduce(func[func,...], {func_args})
Возвращает растровый объект, в котором все изображения коллекции собираются в одно изображение, основанное на функции редуктора.
Например, если в коллекции имеется десять растровых элементов, каждый с четырьмя каналами, в качестве редуктора можно задать метод Min. Это вернет четырехканальный растр, в котором каждый канал содержит минимальные значения для всех десяти растров.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
func[func,...] |
The function used to reduce the raster collection. This argument also accepts a custom reducer function. (Значение по умолчанию — None) |
String |
|
func_args (Дополнительный) |
A dictionary that contains additional parameters for the reducer function.
(Значение по умолчанию — None) |
Dictionary |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
RasterCollection |
Коллекция растров, удовлетворяющая методу редуктора. |
selectBands(band_ids_or_names[band_ids_or_names,...])
Выбирает список каналов из каждого элемента растра в коллекции растров и возвращает коллекцию растров, содержащую элементы растров только с выделенными каналами.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
band_ids_or_names[band_ids_or_names,...] |
Имена или порядковые номера каналов, которые будут включены в возвращаемые элементы растров. Это может быть указано одной строкой, целым числом или списком строк или целых чисел. |
Object |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
RasterCollection |
Коллекция растров, содержащих только выделенные каналы. |
sort(field_name, {ascending})
Сортирует коллекцию растров по имени поля и возвращает коллекцию растров в заданном порядке.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
field_name |
Имя поля, которое будет использоваться при сортировке. |
String |
|
ascending (Дополнительный) |
Указывает порядок сортировки – по возрастанию или по убыванию. (Значение по умолчанию — True) |
Boolean |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
RasterCollection |
Коллекция элементов растров после сортировки. |
std({ignore_nodata[ignore_nodata,...]}, {extent_type}, {cellsize_type})
Возвращает растровый объект, в котором каждый канал содержит значения пикселов стандартного отклонения, встречающееся в этом канале во всех растрах коллекции.
Например, если в коллекции имеется 10 растровых элементов с четырьмя каналами, метод std вычислит значение стандартного отклонения пиксела, которое встречается во всех растрах в каналах 1, 2, 3 и 4; возвращается четырехканальный растр. Номера каналов сопоставляются между растрами с помощью индекса канала, поэтому у элементов коллекции растров должен быть одинаковый порядок каналов.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
ignore_nodata[ignore_nodata,...] (Дополнительный) |
Specifies whether NoData values are ignored. (Значение по умолчанию — True) |
Boolean |
|
extent_type (Дополнительный) |
Computes the extent of the output raster object when the input rasters have different extents.
(Значение по умолчанию — FirstOf) |
String |
|
cellsize_type (Дополнительный) |
Computes the cell size of the output raster object when the input rasters have different cell sizes.
(Значение по умолчанию — FirstOf) |
String |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
Raster |
Растр, в котором каждый канал содержит значения пикселов стандартного отклонения, встречающееся в этом канале во всех растрах коллекции. |
sum({ignore_nodata[ignore_nodata,...]}, {extent_type}, {cellsize_type})
Возвращает растровый объект, в котором каждый канал содержит сумму значений пикселов, встречающееся в этом канале во всех растрах коллекции.
Например, если в коллекции имеется 10 растровых элементов, каждый с четырьмя каналами, метод sum вычислит сумму значений пикселов, которые встречаются во всех растрах в канале 1, в канале 2, в канале 3 и в канале 4; возвращается четырехканальный растр. Номера каналов сопоставляются между растрами с помощью индекса канала, поэтому у элементов коллекции растров должен быть одинаковый порядок каналов.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
ignore_nodata[ignore_nodata,...] (Дополнительный) |
Specifies whether NoData values are ignored. (Значение по умолчанию — True) |
Boolean |
|
extent_type (Дополнительный) |
Computes the extent of the output raster object when the input rasters have different extents.
|
String |
|
cellsize_type (Дополнительный) |
Computes the cell size of the output raster object when the input rasters have different cell sizes.
|
String |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
Raster |
Растр, в котором каждый канал содержит сумму значений пикселов, встречающееся в этом канале во всех растрах коллекции. |
summarizeField(field_name, {summary_type[summary_type,...]})
Суммирует объекты конкретного поля для коллекции растров.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
field_name |
The field name to summarize. |
String |
|
summary_type[summary_type,...] (Дополнительный) |
The summary methods to calculate for the selected field. One or more methods can be specified.
(Значение по умолчанию — ALL) |
String |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
Dictionary |
Словарь методов и значений. |
toMultidimensionalRaster(variable_field_name, dimension_field_names[dimension_field_names,...])
Возвращает многомерный набор растровых данных, в котором каждый элемент коллекции растров является срезом в многомерном растре.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
variable_field_name |
Имя поля, которое содержит имена переменных. |
String |
|
dimension_field_names[dimension_field_names,...] |
Имя поля или полей, которые содержат имена размерностей. Может быть задано одной строкой или списком строк. Для измерений, связанных со временем, имя поля должно соответствовать одному из следующих примеров, чтобы оно распознавалось как поле времени: |
String |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
Raster |
Многомерный растровый объект. Каждый элемент коллекции растров является срезом в многомерном растре. |
Пример кода
Создает коллекцию растров из набора данных мозаики и фильтрует эту коллекцию по дате.
# Import system modules
import arcpy
from arcpy.ia import *
# Construct a collection from a mosaic dataset
rc = RasterCollection(r'C:\data.gdb\time_series_landsat_images')
# Filter the collection to extract all images before year 2009
filtered_rc = rc.filterByTime(end_time = '2009-01-01T00:00:00',
time_field_name = 'AcquisitionDate')
# Return the dates in the filtered collection
dates = filtered_rc.getFieldValues('AcquisitionDate')
Создает коллекцию растров из набора данных мозаики и фильтрует эту коллекцию по геометрии.
# Import system modules
import arcpy
from arcpy.ia import *
# Construct a collection from a mosaic dataset
rc = RasterCollection(r'C:\data.gdb\time_series_landsat_images')
# Define line geometry
line = arcpy.Polyline(arcpy.Array([arcpy.Point(54.9243963, 23.9279934),
arcpy.Point(55.29, 25.6)]),arcpy.SpatialReference(4326))
# Filter the collection to extract images that intersect with line geometry
filtered_rc = rc.filterByGeometry(line)
# Return the total number of items in the filtered collection
count = filtered_rc.count
Создает коллекцию растров из набора данных мозаики и фильтрует эту коллекцию по атрибуту.
# Name: RasterCollection_Ex_03.py
# Description: Generates a raster collection from a mosaic dataset and
# filters by an attribute field
# Requirements: ArcGIS Image Analyst
# Import system modules
import arcpy
from arcpy.ia import *
# Define arguments
mosaic_dataset = r'C:\data.gdb\time_series_landsat_images'
# Construct a collection from a mosaic dataset
rc = RasterCollection(mosaic_dataset)
# Filter the collection to extract only images from Landsat 7
Landsat7_rc = rc.filterByAttribute("SensorName", "contain", "Landsat7")
# Return the names of the sensors in the filtered collection to double confirm
sensors= Landsat7_rc.getFieldValues(field_name)
Создает коллекцию растров из списка растров с NDVI и возвращает максимальные значения NDVI для каждого пиксела во всей коллекции.
# Import system modules
import arcpy
from arcpy.ia import *
from arcpy import env
# Set workspace
arcpy.env.workspace = "C:/Data/NDVI"
# Get the list of tiff files from the workspace
NDVI_tiff_list = arcpy.ListRasters("*", "TIF")
# Generate a list of raster file names without the .tif extension
name_list = []
for NDVI in NDVI_tiff_list:
name_list.append(NDVI.replace(".tif", ""))
# Construct a collection from the list of raster file names
rc = RasterCollection(NDVI_tiff_list, {'name':name_list})
# Return a raster object where every pixel contains the
# maximum value of that pixel over the entired NDVI raster collection
max_NDVI_rc = rc.max()
# Save the new raster object
max_NDVI_rc.save(r'C:\output\max_NDVI_raster.tif')
Сопоставляет функцию Python с коллекцией растров для создания новой коллекции.
# Import system modules
import arcpy
from arcpy.ia import *
# Construct a collection from a mosaic dataset
rc = RasterCollection(r'C:\Data.gdb\Landsat8_TimeSeries')
# Define a Python function to calculate the Soil Adjusted Vegetation Index (SAVI)
def SAVI(item):
# Get the raster object from the item
raster = item['Raster']
# Get the raster objects for the NIR and Red bands
Red_band, NIR_band = raster.getRasterBands(["red","nir"])
# Compute the index
savi_index = ((1.5 * (NIR_band - Red_band))/(NIR_band + Red_band + 0.5))
return{"raster": savi_index, "name": "Soil_Adjusted_Vegetation_Index", "StdTime":item['AcquisitionDate']}
# Run the Python function over the raster collection and generate a new collection
SAVI_rc = rc.map(SAVI)
# save it as a multidimensional raster
mdim_raster = SAVI_rc.toMultidimensionalRaster(variable_field_name = "name", dimension_field_names = "StdTime")
mdim_raster.save(r'C:\output\time_series_SAVI_raster.crf')
Создает объект RasterCollection из запроса SpatioTemporal Asset Catalog (STAC) API поиска.
# Import system modules
from arcpy.ia import *
from arcpy import AIO
# 1) Creates a raster collection from Earth Search STAC API
# Defining query parameters
query_params = {
"collections": ["sentinel-2-l2a"],
"bbox": [-110, 39.5, -105, 40.5],
"query": {"eo:cloud_cover": {"lt": 10}},
"datetime": "2020-10-05T00:00:00Z/2020-10-10T12:31:12Z",
"limit": 5,
}
# Define attribute dictionary using the STAC Item properties
attribute_dict = {
"Name": "id",
"Platform": "platform",
"StdTime": "datetime",
"Cloud Cover": "eo:cloud_cover",
"Spatial Reference": "proj:epsg",
"Extent": "bbox",
}
# Construct a collection from the Sentinel-2 L2A data accesible through Earth Search STAC API
sentinel_2_rc = RasterCollection.fromSTACAPI(
stac_api="https://earth-search.aws.element84.com/v1",
query=query_params,
attribute_dict=attribute_dict,
)
# Filter the collection further to work with data only from the Sentinel-2A satellite
filtered_rc = sentinel_2_rc.filterByAttribute("Platform", "EQUALS", "sentinel-2a")
# 2) Creates a raster collection from Planetray computer STAC API
# Defining query parameters
query_params = {
"collections": ["naip"],
"bbox": [-122.2751, 47.5469, -121.9613, 47.7458],
"datetime": "2018-12-01/2020-12-31",
"limit": 5,
}
# Define attribute dictionary using the STAC Item properties
attribute_dict = {
"Name": "id",
"GSD": "gsd",
"StdTime": "datetime",
"State": "naip:state",
"Spatial Reference": "proj:epsg",
"Extent": "bbox",
}
# Construct a collection from the NAIP data accesible through Planetary Computer STAC API
naip_rc = RasterCollection.fromSTACAPI(
stac_api="https://planetarycomputer.microsoft.com/api/stac/v1",
query=query_params,
attribute_dict=attribute_dict,
)
# Define a Python function to map grayscale raster function to the whole collection
def grayscale(item):
# Get the raster object from the item
raster = item["Raster"]
# Get the raster objects for the NIR and Red bands
gray_raster = Grayscale(raster)
# Compute the index
return {
"raster": gray_raster,
"name": f"gray_{item['Name']}",
"StdTime": item["StdTime"],
}
# apply grayscale function to each raster item in the raster collection using the map function
gray_rc = naip_rc.map(grayscale)
# work with the first raster in the grayscale collection
gray_raster_1 = gray_rc[0]["Raster"]
# 3) Creates a raster collection from the Landsat-9 C2-L2 data accesible through
# Digital Earth Africa STAC API (with custom asset selection) - Requires acs (AIO object).
landsat_dea_acs = AIO(r"C:\acsfiles\s3_dea_landsat.acs")
landsat_dea_rc = RasterCollection.fromSTACAPI(
stac_api="https://explorer.digitalearth.africa/stac",
query={
"collections": ["ls9_sr"],
"bbox": [
25.982987096443583,
29.249912751222965,
28.30879111403085,
31.348538968581714,
],
"datetime": "2023-12-25/2023-12-31",
},
attribute_dict={
"Name": "id",
"Sensor": "platform",
"Cloud Cover": "eo:cloud_cover",
"Row": "landsat:wrs_row",
"Path": "landsat:wrs_path",
},
context={"assetManagement": ["SR_B4", "SR_B3", "SR_B2"]}, # rgb
)
Создает объект RasterCollection из статического каталога SpatioTemporal Asset Catalog (STAC).
# Import system modules
from arcpy.ia import *
# 1) Creates a raster collection from Maxar STAC (Static Catalog)
# Define attribute dictionary using the STAC Item properties
attribute_dict = {
"Name": "id",
"Platform": "platform",
"StdTime": "datetime",
"Data Area": "tile:data_area",
"Clouds Percent": "tile:clouds_percent",
"Spatial Reference": "proj:epsg",
}
# Construct a collection from Maxar STAC
maxar_rc = RasterCollection.fromSTACCatalog(
stac_catalog="https://maxar-opendata.s3.amazonaws.com/events/Emilia-Romagna-Italy-flooding-may23/ard/acquisition_collections/103005009DF96A00_collection.json",
attribute_dict=attribute_dict,
)
# Filter the collection further to only work with data that has tile area less than 15 square kilometer
filtered_rc =maxar_rc.filterByAttribute("Data Area", "LESS_THAN", 15)
# 2) Creates a raster collection from New Zealand Imagery STAC (Static Catalog)
# Define attribute dictionary using the STAC Item properties
attribute_dict = {
"Name": "id",
"Start StdTime": "start_datetime",
"End StdTime": "end_datetime",
"Extent": "bbox",
}
# Construct a collection from New Zealand Imagery STAC
nz_rc = RasterCollection.fromSTACCatalog(
stac_catalog="https://nz-imagery.s3-ap-southeast-2.amazonaws.com/tasman/tasman_snc30002_2002_0.75m/rgb/2193/collection.json",
attribute_dict=attribute_dict,
)
# Define a Python function to map grayscale raster function to the whole collection
def grayscale(item):
# Get the raster object from the item
raster = item["Raster"]
# Get the raster objects for the NIR and Red bands
gray_raster = Grayscale(raster)
# Compute the index
return {
"raster": gray_raster,
"name": f"gray_{item['Name']}",
"StdTime": item["Start StdTime"],
}
# apply grayscale function to each raster item in the raster collection using the map function
gray_rc = nz_rc.map(grayscale)
# work with the first raster in the grayscale collection
gray_raster_1 = gray_rc[8]["Raster"]
#3) Creates a raster collection from UMBRA STAC (with custom asset selection)
umbra_rc = RasterCollection.fromSTACCatalog(
stac_catalog="https://s3.us-west-2.amazonaws.com/umbra-open-data-catalog/stac/2024/2024-02/2024-02-19/catalog.json",
attribute_dict={
"Name": "id",
"Sensor": "platform",
"StdTime": "datetime",
"Polarizations": "sar:polarizations",
"Extent": "bbox",
},
context={"assetManagement": ["GEC"]},
)