Как работает инструмент Статистика по блокам (Block Statistics)
Инструмент Статистика по блокам (Block Statistics) выполняет операции на окрестности, которые вычисляют статистику для входных ячеек в фиксированном наборе не перекрывающихся окон или окрестностей. Статистика (например, максимум, среднее или сумма) вычисляется для всех входных ячеек, содержащихся в каждой окрестности. Результирующее значение для отдельной окрестности или блока присваивается всем ячейкам, попадающим в минимальный ограничивающий прямоугольник, описывающий заданную окрестность.
Т.е. окрестности не перекрываются, любая ячейка будет включена в вычисления только для одного блока.
Окрестность может быть в форме кольца, окружности, прямоугольника и клина. В окрестности можно вычислить следующие статистические параметры – среднее, большинство, максимум, медиана, минимум, меньшинство, диапазон, стандартное отклонение, сумма и разнообразие..
Концептуально, инструмент Статистика по блокам (Block Statistics) работает следующим образом:
- Он создает первую заданную окрестность, например, в форме круга, в верхнем левом углу входного растра или окна анализа.
- Вычисляется минимальный ограничивающий прямоугольник с целью определения размера выходного блока.
- Он делит оставшуюся область растра на заданные блоки. Блоки не перекрываются.
- Инструмент определяет в каждом блоке местоположения ячеек, которые будут использованы в блоковых вычислениях. Местоположения ячеек устанавливаются через определение заданной окрестности – например, круговой окрестности – которая попадает в ограничивающий прямоугольник.
- Инструмент вычисляет выходное значение для каждой окрестности каждого блока. Результирующие значения присваиваются местоположению каждой ячейки в соответствующем выходном блоке.
Типы окрестностей
Окрестность может быть в форме кольца, окружности, прямоугольника и клина. Используя керн-файл, вы можете определить пользовательскую форму окрестности, а также присвоить различные веса конкретной ячейке в окрестности до вычисления статистики.
Ниже рассматриваются различные формы окрестности, и то, как они определяются:
- Кольцо
- Форма плоского кольца состоит из двух окружностей, одно внутри другого, формирующих форму бублика. В обрабатываемую окрестность будут включены ячейки, центры которых попадают за пределы круга меньшего радиуса, но внутрь круга большего радиуса. Поэтому, область между двумя окружностями становится окрестностью кольца.
- Радиус определяется в ячейках или единицах карты и измеряется перпендикулярно оси x или оси y. Если радиусы указаны в единицах карты, то они конвертируются в единицы ячеек. Итоговый радиус в единицах ячеек задаёт область, которая наиболее точно представляет область, определенную ранее в единицах карты. Все ячейки, центры которых попадают между окружностями, будут включены в обрабатываемую окрестность.
- Окружность кольца по умолчанию – внутренний радиус одной ячейки и внешний радиус трех ячеек.
- Пример вычисления кольцевой окрестности:
- Круг
- Окрестность в форме круга задаётся значением радиуса.
- Радиус определяется в единицах ячеек или карты и измеряется перпендикулярно оси x или оси y. Если радиус задан в единицах карты, применяется дополнительная логика, чтобы определить ячейки, задействованные в обрабатываемой окрестности. Сначала рассчитывается точная площадь круга, определенного заданным значением радиуса. Затем определяется площадь для двух дополнительных кругов, причем в одном случае значение заданного радиуса округляется в меньшую сторону, а в другом – в большую сторону. Эти две площади сопоставляются с величиной, полученной для заданного радиуса, и выбирается радиус, для которого получен более близкий результат.
- По умолчанию радиус окрестности круга равен 3 ячейкам.
- Пример вычисления окрестности круга:
- Прямоугольник
- Окрестность в форме прямоугольника задается путем указания ширины и высоты в ячейках или единицах измерения карты.
- В обработку окрестности в форме прямоугольника будут включены только те ячейки, чей центр заданной фигуры.
- По умолчанию прямоугольная окрестность является квадратом со стороной, равной трем ячейкам.
- Пример вычисления прямоугольной окрестности:
- Клин
- Клин – это окрестность в форме клина, определяемая радиусом, начальным и конечным углами.
- Клин строится в направлении против часовой стрелки от начального угла до конечного угла. Углы задаются в арифметических градусах от 0 до 360, где 0 находится на положительной x-оси (3.00 часа), и могут быть как целочисленными, так и с плавающей точкой. Можно использовать отрицательные значения углов.
- Радиус определяется в ячейках или единицах карты и измеряется перпендикулярно оси x или оси y. Если радиус указан в единицах карты, то они конвертируются в единицы ячеек. Итоговый радиус в единицах ячеек задаёт область, которая наиболее точно представляет область, определенную ранее в единицах карты. Все ячейки, центры которых попадают в клин, будут включены в обрабатываемую окрестность.
- Клиновидная окрестность по умолчанию имеет углы от 0 до 90 градусов, с радиусом, равным трем ячейкам.
- Пример вычисления клиновидной окрестности:
- Неправильная форма
- Используется для определения окрестности неправильной формы.
- То, какие ячейки будут включены в окрестность, определяет керн-файл для окрестности неправильной формы.
- Керн-файл в окрестности неправильной формы:
- Керн-файл для окрестности неправильной формы представляет собой текстовой ASCII-файл формата, который определяет значения и форму окрестности неправильной формы. Файл можно создать с помощью любого текстового редактора.
- Первая строка задаёт ширину высоту окрестности (количество ячеек в направлении x, затем пробел, затем количество ячеек в направлении y).
- Последующие строки содержат значения для каждого положения ячейки окрестности. Значения вводятся в той же конфигурации, в которой они появляются в представляемой ими окрестности. Пробел между значениями является обязательным.
- Значения в керн-файле должны быть равны 0 (нулю) или 1 (единице). При этом, любое значение, которое не равно 0, будет проинтерпретировано как 1.
- Нулевое значение (не пробел) для положения ячейки указывает на то, что ячейка не является частью окрестности, и что она не будет включена в обработку. Значение, равное 1, указывает на то, что соответствующая ему ячейка (и ее значение) является частью окрестности.
- Пример ASCII керн-файла и окрестности неправильной формы, которую он описывает:
- Вес
- Как и для типа окрестности неправильной формы, взвешенная окрестность позволяет вам определить окрестность неправильной формы, а также дополнительно позволяет вам применять веса для входных значений.
- Керн-файл весов задает, какие ячейки будут включены в окрестность, а также веса, на которые будут умножены значения ячеек.
- Окрестность "Вес" можно использовать только для типов статистики Среднее , Стандартное отклонение ) и Сумма.
- Керн-файл в окрестности типа Вес:
- Керн-файл для окрестности типа Вес представляет собой текстовой ASCII-файл формата, который определяет значения и форму окрестности "Вес". Файл можно создать с помощью любого текстового редактора.
- Первая строка задаёт ширину высоту окрестности (количество ячеек в направлении x, затем пробел, затем количество ячеек в направлении y).
- Последующие строки содержат значения для каждого положения ячейки окрестности. Значения вводятся в той же конфигурации, в которой они появляются в представляемой ими окрестности. Положительные, отрицательные и десятичные значения являются корректными опциями в качестве весов. Пробел между значениями является обязательным.
- Для местоположений в окрестности, которые не участвуют в вычислениях, используйте для соответствующего местоположения в керн-файле значение, равное 0.
- Пример ASCII керн-файла весов и окрестности типа "Вес", которую он описывает:
Тип статистики
Доступная статистика: Большинство (Majority), Максимум (Maximum), Среднее (Mean), Медиана (Median), Минимум (Minimum), Меньшинство (Minority), Диапазон (Range), Стандартное (среднеквадратическое) отклонение (STD) и Сумма (Sum). Тип статистики, используемый по умолчанию – Среднее (Mean).
- Большинство (Majority)
- Входными данными могут быть только целочисленные растры.
- Если в окрестности больше одного значения большинства, в выходных данных всех ячеек этого блока будет указано значение NoData.
- Максимум (Maximum)
- Если входной растр целочисленный, значения на выходном растре будут целочисленными; если значения на входном растре представлены числами с плавающей точкой, значения на выходном растре будут также представлены числами с плавающей точкой.
- Среднее (Mean)
- Выходной растр всегда будет представлен числами с плавающей точкой.
- Тип статистики Среднее может быть использован с типом окрестности Вес.
- Медиана (Median)
- Входными данными могут быть только целочисленные растры.
- Когда количество действительных значений ячеек в окрестности нечетное, значение медианы вычисляется путем ранжирования значений и выбора среднего значения. Если число значений в окрестности четное, значения будут ранжированы и два срединных значения будут усреднены.
- Минимум (Minimum)
- Если входной растр целочисленный, значения на выходном растре будут целочисленными; если значения на входном растре представлены числами с плавающей точкой, значения на выходном растре будут также представлены числами с плавающей точкой.
- Меньшинство (Minority)
- Входными данными могут быть только целочисленные растры.
- Если в окрестности больше одного значения меньшинства, в выходных данных всех ячеек этого блока будет указано значение NoData.
- Диапазон
- Если входной растр целочисленный, значения на выходном растре будут целочисленными; если значения на входном растре представлены числами с плавающей точкой, значения на выходном растре будут также представлены числами с плавающей точкой.
- Значения для местоположения каждой ячейки на выходном растре определяются по принципу "ячейка-за-ячейкой" путем применения простой формулы: Диапазон блока = максимум блока – минимум блока.
- Стандартное отклонение (STD)
- Выходной растр всегда будет представлен числами с плавающей точкой.
- Тип статистики Стандартное отклонение может быть использован с типом окрестности Вес.
- Сумма (Sum)
- Если входной растр целочисленный, значения на выходном растре будут целочисленными; если значения на входном растре представлены числами с плавающей точкой, значения на выходном растре будут также представлены числами с плавающей точкой.
- Разнообразие (Variety)
- Входными данными могут быть только целочисленные растры.
Обрабатываемые ячейки NoData
Параметр Игнорировать значение NoData при вычислениях (Ignore NoData in calculations) определяет, как в окне окрестности обрабатываются ячейки со значением NoData. Если эта опция включена (опция DATA) любые ячейки NoData в окрестности будут игнорироваться в вычислениях выходного значения ячейки. Если опция не включена (опция NODATA), то при наличии в окрестности ячейки NoData выходная ячейка также будет NoData.
Области применения блоковой статистики
Инструмент Статистика по блокам (Block Statistics) можно использовать вместо инструмента Изменить разрешение (Resample), чтобы понизить разрешение растра. Вместо того, чтобы использовать метод ближайшего соседа, билинейной интерполяции или кубической свертки, иногда лучше присвоить ячейкам растра с более грубым разрешением максимальное, минимальное или среднее значение в рамках нового географического экстента, который включает более крупные ячейки. Чтобы сделать это, к блоку применяется соответствующая статистика – среднее или максимум, например.
Инструмент Агрегирование (Aggregate) группы Генерализация (Generalization) похож на инструмент Статистика по блокам (Block Statistics) в том, что он позволяет выполнить агрегирование местоположений ячеек на основании суммы, среднего, медианы, минимального или максимального значения в пространственном окне, которое определяется необходимым выходным разрешением. Однако, между двумя опциями существует два основных различия:
- Выходной растр, полученный в результате выполнения инструмента Агрегирование (Aggregate), пересчитывается в растр с требуемым разрешением.
- В инструменте Агрегирование (Aggregate) не существует концепции заданной окрестности. Окрестность и выходной блок совпадают, они всегда представлены прямоугольниками и охватывают местоположение одних и тех же ячеек. Размер блока в инструменте Агрегирование (Aggregate) определяется путем агрегирования ячеек, необходимого для достижения требуемого разрешения.