Сглаживание границ зон с помощью Удаления границ (Boundary Clean) и Фильтра большинства (Majority Filter)

Инструменты Удаление границ (Boundary Clean) и Фильтр большинства (Majority Filter) используются для создания ребер зон в растре. Ребра сглаживаются в той или иной степени либо за счет расширения и сокращения границ, либо за счет увеличения или сокращения зон на основе значений в окрестности отдельных местоположений.

Удаление границ (Boundary Clean)

Инструмент Удаление границ (Boundary Clean) изначально используется для удаления рваных границ между зонами. Она использует метод расширения, затем метод сжатия, который удаляет рваные границы при относительно крупных масштабах. Изначально, зоны с более высоким приоритетом вторгаются в соседние с ними зоны с более низким приоритетом на одну ячейку во всех восьми направлениях. Затем они сокращаются обратно до тех ячеек, которые не полностью окружены ячейками с одним и тем же значением. Любые ячейки, не являющиеся внутренними, (то есть они не могут рассматриваться как центр окрестности из восьми соседних ячеек с одинаковым значением) могут быть заменены. Для метода по умолчанию, где нет сортировки по размеру (NO_SORT), большие значения имеют больший приоритет.

Узкие острова внутри зоны, которые могут рассматриваться как общие границы с зоной, могут быть также заменены. Наименьший размер области, которая может быть сохранена, - это блок ячеек размером 3 на 3 ячейки. Следовательно, узкая часть участков может быть заменена другими значениями. Например, участок шириной две ячейки и длиной десять ячеек будет удален, поскольку он не может быть восстановлен после сокращения.

На рисунке ниже инструмент Удаление границ (Boundary Clean) был применен к входному растру без сортировки зон. Зоны с большими значениями имеют более высокий приоритет при расширении в зоны с меньшими значениями. Обратите внимание, что ячейки со значением 7 расширяется в ячейки меньших значений.

Рисунок инструмента Удаление границ (Boundary Clean) 1
OutRas = BoundaryClean(InRas1)

На рисунке ниже к входному растру был применен инструмент Удаление границ (Boundary Clean), а зоны были отсортированы в порядке возрастания размера. Зоны с общей площадью меньшего размера будут иметь более высокий приоритет при расширении в зоны с большими по общей площади зонами. Обратите внимание, что зоны с меньшими областями расширяются в зоны больших областей.

Рисунок инструмента Удаление границ (Boundary Clean) 2
OutRas = BoundaryClean(InRas1, ascend)

Фильтр большинства (Majority Filter)

Инструмент Фильтр большинства (Majority Filter) заменяет ячейки на основе значения большинства в их непрерывных окрестностях. Инструмент Фильтр большинства (Majority Filter) должен отвечать двум критериям до выполнения перемещения. Во-первых, число соседних ячеек с одним значением должно быть достаточно большим, чтобы быть значением большинства, или по крайней мере половина ячеек должны иметь одно значение (в зависимости от заданного параметра). то есть 3 из 4 или 5 из 8 смежных ячеек должны иметь одно значение с параметром большинства, и 2 из 4 или 4 из 8 необходимых для параметра половины. Во-вторых, эти ячейки должны быть смежными в центре заданного фильтра (например, 3 из 4 ячеек должны быть одинаковыми). Второе условие, учитывающее пространственную смежность ячеек, минимизирует нарушение ячеистых пространственных структур. Если эти критерии не соответствуют, замена не происходит, и ячейка сохраняет свое значение.

На рисунке ниже инструмент Фильтр большинства (Majority Filter) применяется к входному растру с помощью фильтра ближайших четырех ячеек, которые являются четырьмя ортогональными ячейками окрестности, для чего требуется, чтобы большинство (3 из 4 ячеек) было одним до изменения значения ячейки. Изменяются только ячейки, окруженные тремя или более (ортогональными) ячейками с одним значением.

Рисунок инструмента Фильтр большинства (Majority Filter) 1
OutRas = MajorityFilter(InRas1)

На рисунке ниже применяется инструмент Фильтр большинства (Majority Filter) с использованием ближайших 8 ячеек в качестве фильтра, для чего требуется, чтобы по крайней мере половина значений (4 из 8 ячеек) имела одно значение до изменения значения ячейки. Обратите внимание, эффект сглаживания больше.

Рисунок инструмента Фильтр большинства (Majority Filter) 2
OutRas = MajorityFilter(InRas1, eight, half)

Связанные темы

9/11/2013