Сохраняющее объекты сглаживание (Spatial Analyst)

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

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

Сглаживает растр поверхности, удаляя шумы и сохраняя при этом объекты.

Более подробно о работе инструмента Сохраняющее объекты сглаживание

Иллюстрация

Иллюстрация инструмента Сохраняющее объекты сглаживание

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

  • Этот инструмент можно использовать для удаления шума из растра цифровой модели рельефа (ЦМР). Его можно использовать в любом рабочем процессе анализа, где желательны более сглаженные выходные данные.

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

    • Размер области вокруг сглаживаемых ячеек.
    • Относительная крутизна локальной вариации, которая будет затронута.
    • Количество раз, когда будет применен процесс сглаживания.
    • Относительная высота объектов, которые будут затронуты.
  • Параметр Расстояние окрестности определяет размер окрестности. Укажите небольшое значение, которое гарантирует, что будет сглажен только шум, в то время как объекты на входном растре будут сохранены. Например, настройка 5 ячеек приведет к окну обработки 11 на 11 ячеек, что обычно является хорошей отправной точкой.

  • Параметр Нормальный порог разности определяет потенциальное максимальное изменение крутизны ребра объекта (в градусах) за одну итерацию. Указание небольшого значения (например, 15 градусов или меньше) гарантирует, что будут сглажены только ребра плоских объектов.

  • Параметр Максимальное изменение высоты определяет потенциальное максимальное изменение высоты объекта за одну итерацию. Указание небольшого значения (например, 0,5 метра или меньше) гарантирует, что будут сглажены только короткие объекты.

  • Параметр Количество итераций определяет количество повторений процесса сглаживания. Указание больших значений может повысить гладкость выходного растра; однако большее количество итераций приведет к увеличению времени обработки. Во многих случаях для этого параметра хорошо подходит небольшое значение (например, 3).

  • Если для значения параметра Входной растр поверхности задана вертикальная система координат, то при анализе будет учитываться z-единица вертикальной системы координат. Если для входного растра поверхности не задана вертикальная система координат, укажите значение параметра Z-единица, чтобы обеспечить правильное вычисление нормальных векторов во время анализа.

  • Этот инструмент может быть ускорен с помощью графического процессора, то есть если в вашей системе доступен совместимый графический процессор (GPU), он будет использоваться для повышения производительности инструмента. Используйте параметр задания целевого устройства анализа Целевое устройство для анализа (analysis_target_device в Python), чтобы определить, будет ли графический процессор или CPU использоваться для запуска инструмента.

    Более подробную информацию о совместимых графических процессорах, настройке и работе с графическими устройствами, а также советы по устранению неполадок см. в разделе Работа GPU с Spatial Analyst.

  • Этот инструмент поддерживает параллельную обработку. Если ваш компьютер имеет несколько процессоров или процессор с несколькими ядрами, то его производительность будет более высокой, особенно на больших наборах данных. Раздел справки Параллельная обработка в Spatial Analyst содержит более подробные сведения об этой возможности и способах ее настройки.

  • Если формат выходного растра .crf, этот инструмент поддерживает параметр среды хранения растровых изображений Пирамида. Пирамиды будут созданы в выходных данных по умолчанию. Для любого другого формата вывода этот параметр среды не поддерживается, и пирамиды создаваться не будут.

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

Параметры

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

Входной растр поверхности.

Raster Layer
Единицы расстояния
(Дополнительный)

Указывает единицу расстояния, которая будет использоваться для параметра Расстояние окрестности. Значение по умолчанию - Ячейки.

  • ЯчейкиЕдиницами измерения расстояния будут ячейки.
  • МетрыЕдиницами измерения расстояния будут метры.
  • СантиметрыЕдиницей измерения расстояния будет сантиметр.
  • КилометрыЕдиницами измерения расстояния будут километры.
  • ДюймыЕдиницей измерения расстояния будет дюйм.
  • ФутыЕдиницами измерения расстояния будут футы.
  • ЯрдЕдиницей измерения расстояния будет ярд.
  • МилиЕдиницами измерения расстояния будут мили.
String
Расстояние окрестности
(Дополнительный)

Расстояние от целевой ячейки, определяющее размер обрабатываемой окрестности.

Значение должно быть положительным числом. Значение по умолчанию - 5 ячеек.

Double
Нормальный порог разности
(Дополнительный)

Максимальная нормальная разность для соседней ячейки, которая должна быть включена при вычислении нового значения ячейки для текущей обрабатываемой ячейки. Нормальная разность — это угол, образованный нормальным вектором соседней ячейки и нормальным вектором текущей обрабатываемой ячейки.

Это значение может быть любым в диапазоне от -180 градусов до 180 градусов. По умолчанию равно 15 градусам.

Double
Число итераций
(Дополнительный)

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

Значение должно быть положительным целым числом. Значение по умолчанию – 3.

Long
Максимальное изменение высоты
(Дополнительный)

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

Когда для местоположения ячейки вычисляется новое значение, оно сравнивается с исходным значением в этом местоположении ячейки. Если разница меньше или равна этой настройке параметра, то будет использовано новое значение ячейки. В противном случае исходное значение останется неизменным.

Значение должно быть положительным числом. Значение по умолчанию - 0,5 метров.

Linear Unit
Z-единицы
(Дополнительный)

Задает линейные единицы измерения, которые будет использоваться для вертикальных z-значений.

Они определяется вертикальной системой координат, если она указана. Если вертикальной системы координат нет, то единицы измерения z-значений необходимо указать в списке единиц, чтобы обеспечить точный геодезический расчет. По умолчанию метры.

  • ДюймЛинейными единицами измерения могут быть дюймы.
  • ФутЛинейными единицами измерения могут быть футы.
  • ЯрдЛинейными единицами измерения могут быть ярды.
  • Миля (США)Линейными единицами измерения могут быть мили.
  • Морская миляЛинейными единицами измерения могут быть морские мили.
  • МиллиметрЛинейными единицами измерения могут быть миллиметры.
  • СантиметрЛинейными единицами измерения могут быть сантиметры.
  • МетрЛинейными единицами измерения могут быть метры.
  • КилометрЛинейными единицами измерения могут быть километры.
  • ДециметрЛинейными единицами измерения могут быть дециметры.
String
Целевое устройство для анализа
(Дополнительный)

Указывает устройство, которое будет использоваться для выполнения вычисления.

  • GPU затем CPUЕсли найден совместимый графический процессор GPU, он будет использоваться для выполнения вычисления. В противном случае будет использоваться центральный процессор CPU. Это значение по умолчанию
  • Только на CPU.Вычисление будет выполняться только на CPU.
  • Только на CPU.Вычисление будет выполняться только на CPU.
String

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

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

Выходной сглаженный растр.

Raster

FeaturePreservingSmoothing(in_raster, {distance_units}, {neighborhood_distance}, {normal_difference_threshold}, {number_iterations}, {maximum_elevation_change}, {z_unit}, {analysis_target_device})
ИмяОписаниеТип данных
in_raster

Входной растр поверхности.

Raster Layer
distance_units
(Дополнительный)

Указывает единицу расстояния, которая будет использоваться для параметра Neighborhood Distance. По умолчанию – CELLS.

  • CELLSЕдиницами измерения расстояния будут ячейки.
  • METERSЕдиницами измерения расстояния будут метры.
  • CENTIMETERSЕдиницей измерения расстояния будет сантиметр.
  • KILOMETERSЕдиницами измерения расстояния будут километры.
  • INCHESЕдиницей измерения расстояния будет дюйм.
  • FEETЕдиницами измерения расстояния будут футы.
  • YARDSЕдиницей измерения расстояния будет ярд.
  • MILESЕдиницами измерения расстояния будут мили.
String
neighborhood_distance
(Дополнительный)

Расстояние от целевой ячейки, определяющее размер обрабатываемой окрестности.

Значение должно быть положительным числом. Значение по умолчанию - 5 ячеек.

Double
normal_difference_threshold
(Дополнительный)

Максимальная нормальная разность для соседней ячейки, которая должна быть включена при вычислении нового значения ячейки для текущей обрабатываемой ячейки. Нормальная разность — это угол, образованный нормальным вектором соседней ячейки и нормальным вектором текущей обрабатываемой ячейки.

Это значение может быть любым в диапазоне от -180 градусов до 180 градусов. По умолчанию равно 15 градусам.

Double
number_iterations
(Дополнительный)

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

Значение должно быть положительным целым числом. Значение по умолчанию – 3.

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

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

Когда для местоположения ячейки вычисляется новое значение, оно сравнивается с исходным значением в этом местоположении ячейки. Если разница меньше или равна этой настройке параметра, то будет использовано новое значение ячейки. В противном случае исходное значение останется неизменным.

Значение должно быть положительным числом. Значение по умолчанию - 0,5 метров.

Linear Unit
z_unit
(Дополнительный)

Задает линейные единицы измерения, которые будет использоваться для вертикальных z-значений.

Они определяется вертикальной системой координат, если она указана. Если вертикальной системы координат нет, то единицы измерения z-значений необходимо указать в списке единиц, чтобы обеспечить точный геодезический расчет. По умолчанию метры.

  • INCHЛинейными единицами измерения могут быть дюймы.
  • FOOTЛинейными единицами измерения могут быть футы.
  • YARDЛинейными единицами измерения могут быть ярды.
  • MILE_USЛинейными единицами измерения могут быть мили.
  • NAUTICAL_MILEЛинейными единицами измерения могут быть морские мили.
  • MILLIMETERЛинейными единицами измерения могут быть миллиметры.
  • CENTIMETERЛинейными единицами измерения могут быть сантиметры.
  • METERЛинейными единицами измерения могут быть метры.
  • KILOMETERЛинейными единицами измерения могут быть километры.
  • DECIMETERЛинейными единицами измерения могут быть дециметры.
String
analysis_target_device
(Дополнительный)

Указывает устройство, которое будет использоваться для выполнения вычисления.

  • GPU_THEN_CPUЕсли найден совместимый графический процессор GPU, он будет использоваться для выполнения вычисления. В противном случае будет использоваться центральный процессор CPU. Это значение по умолчанию
  • CPU_ONLYВычисление будет выполняться только на CPU.
  • GPU_ONLYВычисление будет выполняться только на CPU.
String

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

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

Выходной сглаженный растр.

Raster

Пример кода

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

В следующем примере показано использование этого инструмента в окне Python.

В этом примере ЦМР с разрешением 1 метр сглаживается с использованием расстояния окрестности 5 ячеек и нормального порога разности 15 градусов.

from arcpy.sa import *
outFPS01 = FeaturePreservingSmoothing("elevation_1m.tif", "CELLS", 5, 15, 3, 
                                      "0.5 Meters", "METER", "GPU_THEN_CPU")
outFPS01.save("C:/sapyexamples/output/outsmoothraster01.tif")
FeaturePreservingSmoothing, пример 2 (автономный скрипт)

В следующем примере показано использование этого инструмента как автономного скрипта Python.

В этом примере ЦМР с разрешением 1 метр сглаживается с использованием расстояния окрестности 5 метров и нормального порога разности 10 градусов.

# Name: FeaturePreservingSmoothing_Ex_02.py
# Description: Smooths a 1m resolution elevation raster  
# Requirements: Spatial Analyst Extension

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

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

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# Set local variables
inRaster = "elevation_1m.tif"
distUnits = "METERS"
nbrDistance = 5
normDiffThreshold = 10
iterations = 1
maxElevChange = "1.5 Meters"
zUnit = ""
analysisDevice = ""

# Execute the tool
outFPS02 = FeaturePreservingSmoothing(inRaster, distUnits, nbrDistance,
                                    normDiffThreshold, iterations, maxElevChange,
                                    zUnit, analysisDevice)

# Save the output 
outFPS02.save("C:/sapyexamples/output/outsmoothraster02.tif")

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

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

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