Доступно с лицензией Spatial Analyst.
Сводка
Замещает значения ячеек растра, основываясь на значениях большинства соприкасающихся смежных ячеек.
Более подробно о том, как работает инструмент Фильтр большинства
Иллюстрация
Использование
Инструмент Фильтр большинства должен отвечать двум критериям до выполнения перемещения. Количество соседних ячеек с одинаковым значением должно быть достаточно велико (составлять большинство или, по крайней мере, половину всех ячеек), и эти ячейки должны быть смежными по отношению к центру матрицы фильтра. Второе условие, учитывающее пространственную смежность ячеек, минимизирует нарушение ячеистых пространственных структур.
Использование четырех соседей позволит сохранить углы прямоугольных областей. Использование восьми соседей позволит сгладить углы прямоугольных областей.
При использовании восьми соседей смежными ячейками считаются имеющие общее ребро. При использовании четырех соседей смежными ячейками считаются имеющие общий угол.
Если задано значение Допуска перемещения (Replacement threshold), равное ПОЛОВИНА (HALF), и два значения встречаются как равные половины, замещения значения не произойдет в том случае, если значение обрабатываемой ячейки совпадает с значением одной из половинок. Опция HALF приведет к большей фильтрации, чем опция MAJORITY.
Хотя критерии смежности аналогичны для ячеек растра, соприкасающихся с ячейкой через ребро и через угол, они подчиняются различным правилам для опций MAJORITY и HALF. Если число соседей равно четырем, ребро или угол всегда требует двух совпадающих соседей до осуществления перемещения. При использовании восьми ячеек ячейка, соприкасающаяся через угол, будет замещена только в том случае, если все ее соседние ячейки имеют одно и то же значение, в то время как значение ячейки, соприкасающейся через ребро, будет замещено, если есть три смежные с ней ячейки с одинаковым значением, включая одну ячейку вдоль ребра.
После нескольких запусков инструмента Фильтр большинства выходной растр будет стабилизирован (больше меняться не будет).
См. раздел Среда анализа и Spatial Analyst для получения дополнительной информации о среде геообработки данного инструмента.
Синтаксис
MajorityFilter(in_raster, {number_neighbors}, {majority_definition})
Параметр | Объяснение | Тип данных |
in_raster | Входной растр, к которому будет применен фильтр на основе большинства смежных соседних ячеек. Должен быть целочисленным. | Raster Layer |
number_neighbors (Дополнительный) | Определяет количество соседних ячеек, которое будет использовано в матрице фильтра.
| String |
majority_definition (Дополнительный) | Задает количество смежных (пространственно связанных) ячеек, которые должны иметь одинаковое значение, чтобы произошло замещение значения.
| String |
Значение отраженного сигнала
Имя | Объяснение | Тип данных |
out_raster | Выходной отфильтрованный растр. Выходные данные всегда будут целочисленными. | Raster |
Пример кода
MajorityFilter, пример 1 (окно Python)
В этом примере фильтруется входной растр на основе всех 8 соседей, где больший эффект сглаживания будет иметь то же значение для замещения путем запроса половины фильтров.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outMajFilt = MajorityFilter("land", "EIGHT", "HALF")
outMajFilt.save("c:/sapyexamples/output/outmajfilt")
MajorityFilter, пример 2 (автономный скрипт)
В этом примере фильтруется входной растр на основе всех 8 соседей, где больший эффект сглаживания будет иметь то же значение для замещения путем запроса половины фильтров.
# Name: MajorityFilter_Ex_02.py
# Description: Replaces cells in a raster based on the
# majority of their contiguous neighboring 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"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute MajorityFilter
outMajFilt = MajorityFilter(inRaster, "EIGHT", "HALF")
# Save the output
outMajFilt.save("c:/sapyexamples/output/majfilter")
Параметры среды
Информация о лицензиях
- Basic: Требуется Spatial Analyst
- Standard: Требуется Spatial Analyst
- Advanced: Требуется Spatial Analyst