Удаление границ (Boundary Clean) (Spatial Analyst)
Резюме
Сглаживает границу между зонами путем растяжения и сокращения границы.
Более подробно о том, как работает инструмент Удаление границ
Рисунок
Использование
-
Будут изменены все области, состоящие меньше, чем из трех ячеек в направлении x или y.
Сокращение, которое возникает с процессом сглаживания ONE_WAY (единичный запуск процесса расширения-сокращения) или первый проход, если процесс сглаживания TWO_WAY отличается от сокращения, которое возникает со вторым проходом сглаживания TWO_WAY.
При первом проходе для любой обрабатываемой ячейки на расширяемом растре, имеющей соседнюю ячейку с значением, равным исходному значению обрабатываемой ячейки, будет восстановлено исходное значение обрабатываемой ячейки. Во втором проходе при использовании опции TWO_WAY, любая ячейка на расширенном растре, которая не окружена полностью восемью ячейками с одним и тем же значением, будет восстанавливать свое исходное значение.
-
Расширение выполняется идентично и при первом, и при втором проходе.
-
Входные ячейки NoData имеют наименьший приоритет типа сортировки ONE_WAY, или первого прохода сортировки TWO_WAY. При втором проходе с опцией TWO_WAY ячейки с значением NoData имеют самый высокий приоритет.
Синтаксис
Параметр | Объяснение | Тип данных |
in_raster |
Входной растр, для которого будет сглажена граница между зонами. Должен быть целочисленным. | Raster Layer |
sort_type (дополнительно) |
Задает тип сортировки, который будет использоваться в процессе сглаживания. Этот параметр определяет приоритет ячеек, которые будут расширены на соседние ячейки.
| String |
number_of_runs (дополнительно) |
Задает количество направлений, в которых будет происходить процесс сокращения.
| Boolean |
Возвращено значение
Имя | Объяснение | Тип данных |
out_raster |
Выходной генерализованный растр. Границы между зонами во входных данных будут сглажены. | Raster |
Пример кода
В этом примере сглаживается граница между зонами в порядке по убыванию с двусторонним запуском.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
OutBndCln = BoundaryClean("land", "DESCEND", "TWO_WAY")
OutBndCln.save("c:/sapyexamples/output/bndcln_des2")
В этом примере сглаживается граница между зонами в порядке по убыванию с двусторонним запуском.
# Name: BoundaryClean_Ex_02.py
# Description: Smoothes the boundary between zones
# by expanding and shrinking it.
# 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"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute BoundaryClean
OutBndCln = BoundaryClean(inRaster, "ASCEND", "TWO_WAY")
# Save the output
OutBndCln.save("c:/sapyexamples/output/bndcln_asc2")