Сокращение (Spatial Analyst)

Доступно с лицензией Spatial Analyst.

Краткая информация

Сокращает выбранные зоны на заданное число ячеек, замещая их значением ячеек, наиболее частым в окрестности.

Более подробно о том, как работает инструмент Сокращение

Иллюстрация

Иллюстрация Сокращение
OutRas = Shrink(InRas1, 1, 5)

Использование

  • Определенные значения зоны считаются передними зонами, в то время как остальные значения зоны считаются фоновыми. С помощью этого инструмента, ячейки в высокоприоритетных зонах могут быть заменены ячейками в фоновых зонах.

  • Когда частью выбранного для сокращения набора являются два прилегающих региона, граница между ними меняться не будет.

  • Значение NoData имеет тот же приоритет, что и любое другое действительное значение, которое используется для заполнения областей, освобождаемых за счет выбранных сокращаемых значений. Следовательно, если выбранное значение является смежным с значением NoData, после выполнения сокращения оно может быть заменено на значение NoData.

  • См. раздел Среда анализа и Spatial Analyst для получения дополнительной информации о среде геообработки данного инструмента.

Параметры

ПодписьОписаниеТип данных
Входной растр

Входной растр, для которого будут определяться сокращаемые зоны.

Должен быть целочисленным.

Raster Layer
Число ячеек

Количество ячеек, на которое будет сокращена каждая заданная зона.

Значение должно быть целым числом больше 0.

Long
Значения зоны

Перечень значений сокращаемых зон.

Значения зон должны быть представлены целыми числами. Они могут быть даны в любом порядке.

Long
Метод сокращения
(Дополнительный)

Метод, используемый для сокращения выбранных зон.

Опция Расстояние поддерживает распараллеливание и может управляться с помощью параметра среды Коэффициент параллельной обработки.

  • МорфологическийДля сокращения зон используется метод математической морфологии. Это значение по умолчанию
  • РасстояниеДля сокращения зон используется метод на основе расстояния.
String

Возвращаемое значение

ПодписьОписаниеТип данных
Выходной растр

Выходной генерализованный растр.

Заданные зоны входного растра будут сокращены на заданное количество ячеек.

Выходные данные всегда будут целочисленными.

Raster

Shrink(in_raster, number_cells, zone_values, {shrink_method})
ИмяОписаниеТип данных
in_raster

Входной растр, для которого будут определяться сокращаемые зоны.

Должен быть целочисленным.

Raster Layer
number_cells

Количество ячеек, на которое будет сокращена каждая заданная зона.

Значение должно быть целым числом больше 0.

Long
zone_values
[zone_value,...]

Перечень значений сокращаемых зон.

Значения зон должны быть представлены целыми числами. Они могут быть даны в любом порядке.

Long
shrink_method
(Дополнительный)

Метод, используемый для сокращения выбранных зон.

  • MORPHOLOGICALДля сокращения зон используется метод математической морфологии. Это значение по умолчанию
  • DISTANCEДля сокращения зон используется метод на основе расстояния.

Опция DISTANCE поддерживает распараллеливание и может управляться с помощью параметра среды parallelProcessingFactor.

String

Возвращаемое значение

ИмяОписаниеТип данных
out_raster

Выходной генерализованный растр.

Заданные зоны входного растра будут сокращены на заданное количество ячеек.

Выходные данные всегда будут целочисленными.

Raster

Пример кода

Shrink, пример 1 (окно Python)

В этом примере сокращается зона, определенная списком значений, на 2 ячейки.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outShrink = Shrink("land", 2, [1, 3, 7])
outShrink.save("c:/sapyexamples/output/shrinkout")
Shrink, пример 2 (автономный скрипт)

В этом примере сокращается зона, определенная списком значений, на 2 ячейки.

# Name: Shrink_Ex_02.py
# Description: Shrinks the selected zones by a 
#              specified number of cells.
# Requirements: Spatial Analyst Extension

# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *

# Set environment settings
env.workspace = "C:/sapyexamples/data"

# Set local variables
inRaster = "land"
cellRemove = 2
zoneSet = [1,3,7,9]

# Execute Shrink
outShrink = Shrink(inRaster, cellRemove, zoneSet)

# Save the output 
outShrink.save("c:/sapyexamples/output/outshrink")

Информация о лицензиях

  • Basic: Обязательно Spatial Analyst
  • Standard: Обязательно Spatial Analyst
  • Advanced: Обязательно Spatial Analyst

Связанные разделы