Skip to main content

Как работает Трансформация Top Hat

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

Инструмент Трансформация Top Hat извлекает пространственные структуры с поверхности высот. Один из способов использования этих извлеченных структур, таких как долины и водотоки, заключается в проверке местоположения гидрографических объектов в гидрографической поверхности, полученной на основе данных о высотах. Алгоритм этого инструмента основан на функции трансформации Top Hat (Родригез и др., 2002), использующей входную окрестность в качестве структурирующего элемента.

Параметр Тип анализа определяет, какие структуры будут обнаружены — хребты или долины. В каждом местоположении ячейки выходное значение представляет высоту или глубину пространственной структуры, обнаруженной в этом местоположении.

Иллюстрация выходных данных инструмента Трансформация Top Hat

Поверхность высот с разрешением 1 метр и выходные растры, созданные типами анализа Хребет и Долина, с использованием прямоугольной окрестности 11 на 11.

При выборе типа анализа Хребет выделяются объекты, которые выше своего окружения (такие как дамбы и мосты). При выборе типа анализа Долина выделяются объекты, находящиеся ниже своего окружения (например, водные каналы).

Тип анализа Хребет

Тип анализа Хребет соответствует функции преобразования «white top hat», описанной в работе Родригеса и др., 2002. Для этого необходимо применить к входной ЦМР ряд операций, направленных на уменьшение (операция эрозии) и увеличение (операция растяжения) значений. Затем результат вычитается из исходной ЦМР.

Иллюстрация процесса Трансформация Top Hat

Процесс трансформации Top Hat для типа анализа Хребет.

На иллюстрации выше на рисунке (1) показан вид в поперечном сечении входной ЦМР с двумя идентифицированными объектами (a и b). На рисунке (2) показан ЦМР после операций эрозии и растяжения, при этом объекты a и b заменены окружающими значениями. На рисунке (3) показан выходной растр с извлеченными объектами a и b, полученный путем вычитания поперечного сечения (2) из (1).

Ниже объясняется, как инструмент вычисляет результат для типа анализа Хребет.

  1. Для каждой ячейки определяется минимум для ее окрестности и присваивается текущей ячейке.

  2. Используя результат, полученный на шаге 1, определяется максимальное значение для окрестности каждой ячейки и присваивается текущей ячейке.

  3. Результат, полученный на шаге 2, вычитается из входного растра поверхности. Значения ячеек представляют собой высоту хребтов.

Тип анализа Долина

Тип анализа Долина соответствует функции преобразования «black top hat», описанной в работе Родригеса и др., 2002. Он также выполняет серию фокальных вычислений на входной ЦМР, но в обратной последовательности — за вычислением фокального максимума следует вычисление фокального минимума. Затем исходная ЦМР вычитается из результата.

Ниже объясняется, как инструмент вычисляет результат для типа анализа Долина.

  1. Для каждой ячейки максимальное значение для её окрестности определяется и назначается текущей ячейке.

  2. Используя результат шага 1, находится минимум для окрестности каждой ячейки и назначается текущей ячейке.

  3. Растр входной поверхности вычитается из результата из шага 2. Значения ячеек отражают глубину долин.

Типы окрестностей

Окрестность может быть в форме окружности или прямоугольника. Вы также можете определить форму окрестности, используя керн-файл.

Ниже рассматриваются различные формы окрестности и то, как они определяются:

Круг

Окрестность в форме круга задается значением радиуса.

Радиус определяется в единицах ячеек или карты и измеряется перпендикулярно оси x или оси y. Если радиус задан в единицах карты, применяется дополнительная логика, чтобы определить ячейки, задействованные в обрабатываемой окрестности. Сначала рассчитывается точная площадь круга, определенного заданным значением радиуса. Затем определяется площадь для двух дополнительных кругов: в одном случае значение заданного радиуса округляется в меньшую сторону, а в другом — в большую сторону. Эти две площади сопоставляются с величиной, полученной для заданного радиуса, и выбирается радиус, для которого получен более близкий результат.

По умолчанию радиус окрестности круга равен 3 ячейкам.

Пример вычисления окрестности круга:

![Обрабатываемая ячейка с окрестностью Круг](images/sac_nbrhd_focalstats_nbr_circle-6DE92.png)
Показана обрабатываемая ячейка с окрестностью Круг с радиусом 2 ячейки.

Прямоугольник

Окрестность в форме прямоугольника задается путем указания ширины и высоты в ячейках или единицах измерения карты.

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

По умолчанию прямоугольная окрестность является квадратом со стороной, равной трем ячейкам.

Положение x,y для обрабатываемой ячейки в пределах окрестности, по отношению к верхнему левому углу окрестности, определяется следующими уравнениями:

x = (ширина окрестности + 1) / 2

y = (высота окрестности + 1) / 2

Если число входных ячеек четное, координаты x,y округляются в меньшую сторону. Например, при использовании окрестности 5 на 5 ячеек, значения x и y будут равны 3,3. При использовании окрестности 4 на 4 ячейки значения x и y будут равны 2,2.

Ниже приведены два примера прямоугольных окрестностей:

![Обрабатываемая ячейка с двумя прямоугольными окрестностями](images/sac_nbrhd_focalstats_nbr_rectangle-A4785.png)
Показана обрабатываемая ячейка с двумя разными прямоугольными окрестностями.

Нерегулярный

Используйте эту опцию, чтобы указать окрестность неправильной формы вокруг обрабатываемой ячейки.

То, какие ячейки будут включены в окрестность, определяет керн-файл для окрестности неправильной формы.

Положение x,y для обрабатываемой ячейки в пределах окрестности, по отношению к верхнему левому углу окрестности, определяется следующими уравнениями:

x = (ширина + 1) / 2

y = (высота + 1) / 2

Если число входных ячеек четное, координаты x и y округляются в меньшую сторону.

Описанное ниже применяется к керн-файлу для окрестности неправильной формы:

  • Керн-файл для окрестности неправильной формы представляет собой текстовый файл ASCII, который определяет значения и форму окрестности неправильной формы. Файл можно создать с помощью любого текстового редактора. У файла должно быть расширение .txt и не должно быть пробелов в имени.

  • Первая строка задает ширину и высоту окрестности (количество ячеек в направлении x, затем пробел, затем количество ячеек в направлении y).

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

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

  • Для исключения местоположения в окрестности из вычислений, используйте для соответствующего местоположения в керн-файле значение, равное 0 (но не пустое).

Следующий пример показывает содержание керн-файла неправильной формы и окрестность, которую он описывает:

![Нерегулярное ядро и связанная окрестность](images/sac_nbrhd_focalstats_nbr_irregular-D5A9E.png)
Показано ядро нерегулярной окрестности с иллюстрацией ячеек, используемых для обработки.

Литература

Rodriguez, F., E. Maire, P. Courjault-Rade, and J. Darrozes. 2002. "The Black Top Hat function applied to a DEM: A tool to estimate recent incision in a mountainous watershed (Estibere Watershed, Central Pyrenees)." Geophysical Research Letters 29(6): 9.1–9.4.