Как работает инструмент Фокальный сток

Инструмент Фокальный сток окрестность 3 x 3 вокруг каждой ячейки, чтобы определить, в какую из восьми ячеек направится сток. Сток определяется ячейкой в окрестности, которая имеет большее значение, чем обрабатываемая ячейка. Многократные значения представляют движение жидкости, например, воды, текущей по склону, но стоком может быть любое определенное вами движение, например, путь загрязнений в место с более низкой их концентрацией. Фокальный сток при обработке набора данных использует подход "плавающего окна", также, как работает иснструмент Фокальная статистика. Однако способ вычисления выходных значений отличается.

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

Управление сочетания стока из нескольких соседних ячеек выполняется через бинарное представление обрабатываемой ячейки. Каждый бит бинарного представления для обрабатываемой ячейки коррелирует с ячейкой окрестности. Ячейке, сразу справа от обрабатываемой ячейки, дается значение 1, соседу внизу справа – 2, соседу внизу – 4 и т.д., пока не будет достигнуто значение 128 (увеличение в два раза, т.к. представление – бинарное) для последнего соседа наверху справа.

Кодирование направления Фокального стока
Кодирование направления Фокального стока

Если соседняя ячейка перетекает в обрабатываемую ячейку, бит, который представляет положение соседней ячейки (см. рисунок вверху) включен, или ему присвоено значение 1. Если соседняя ячейка не перетекает в обрабатываемую ячейку, бит, который представляет местоположение, равен 0. После того, как все ячейки окрестности будут протестированы для потока, биты могут быть отключены или включены несколько или все (присваивается 1). Двоичное представление для всех битов конвертируется обратно к основанию 10 в соответствии с образцом стока битов. Затем обрабатываемой ячейке будет присвоено число по основанию 10. Кодирование присваивает уникальное число каждому возможному сочетанию значений, расположенных выше по течению. Общее число комбинаций стока в обрабатываемую ячейку равно 255.

Примеры

Некоторые примеры способов получения выходного значения:

  • Ячейка, которая получает сток из левой верхней смежной ячейки

    Сток из левой верхней смежной ячейки имеет битовое положение окрестности – 6 (см. предыдущую диаграмму кодирования направления Фокального стока). Десятичное значение, которое соответствует этому положению битов 32.

  • Ячейка, получающая сток из нескольких ячеек

    На следующем рисунке обрабатываемую ячейку окружают несколько ячеек, имеющих большее значение. Это ячейка сразу справа (первое положение битов), ячейка внизу слева (четвертое положение битов) и ячейка сверху (седьмое положение битов). Следовательно, первый, четвертый и седьмой биты включены, или установлены на 1. В этом битовом образце происходит оценка 73 по основанию 10 и запись в местоположение обрабатываемой ячейки выходного растра.

    Пример ячейки фокального стока

  • Ячейка, получающая поток из восьми окружающих ячеек

    Рассмотрим ячейку, в которую втекают все смежные соседи. Выходное значение получит значение суммы всех значений положений битов от 1 до 128. Результирующее значение (128 + 64 + 32 + 16 + 8 + 4 + 2 + 1) будет равняться 255.

    Пример ячейки фокального стока

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


В этом разделе
  1. Примеры