Skip to main content

ComputeChange

Краткая информация

Создает растровый объект, содержащий разницу между двумя категориальными или непрерывными растрами.

Обсуждение

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

Указанный набор растровых данных является временным для растрового объекта. Чтобы сделать его постоянным, вы можете вызвать метод растрового объекта save.

Синтаксис

ComputeChange(raster1, raster2, {method}, {from_class_values}, {to_class_values}, {filter_method}, {define_transition_colors}, {extent_type}, {cellsize_type})

Параметр Объяснение Тип данных

raster1

Первый растр в вычислении. Для оценки изменений между временем 1 (более раннее) и временем 2 (позже), введите здесь растр времени 1.

Raster

raster2

Входной растр, который будет участвовать в вычислении. Для оценки изменений между временем 1 (более раннее) и временем 2 (позже), введите здесь растр времени 2.

Raster

method

Определяет используемой способ вычисления разницы между двумя растрами.

  • DIFFERENCE—Будет вычислена математическая разница (разность) между значениями пикселов входных растров. Это значение по умолчанию.

  • RELATIVE_DIFFERENCE—Будет рассчитана разница между значениями пикселов в соответствии с величинами сравниваемых значений.

  • CATEGORICAL_DIFFERENCE—Будет рассчитана разница между двумя категориальными или тематическими растрами, и выходные данные будут содержать изменения классов, которые произошли между двумя растрами.

(Значение по умолчанию — DIFFERENCE)

String

from_class_values

Список значений классов raster1, включаемых в вычисление, если для method задано CATEGORICAL_DIFFERENCE. Например, если вы собираетесь определить области, изменившиеся с Forest на Urban, введите здесь значение для класса Forest.

Если не задать значение, будут включены все классы.

Integer

to_class_values

Список значений классов raster2, включаемых в вычисление, если для method задано CATEGORICAL_DIFFERENCE. Например, если вы собираетесь определить области, изменившиеся с Forest на Urban, введите здесь значение для класса Urban.

Если не задать значение, будут включены все классы.

Integer

filter_method

Задает пикселы для категорий выходного растрового объекта, если для method задано CATEGORICAL_DIFFERENCE.

  • ALL—В выходных данных будут категоризованы все пикселы. Например, пикселам, которые изменили свой класс с Forest на Urban, будет назначен класс перехода Forest>Urban. Пикселы, которые ранее относились к классу Forest и остались в классе Forest, будут отнесены к классу Forest.

  • CHANGED_PIXELS_ONLY—Только пикселы, класс которых изменился, будут отнесены к переходным классам. Пикселы, оставшиеся в том же классе, будут отнесены к классу Other. Это значение по умолчанию.

  • UNCHANGED_PIXELS_ONLY—Отнесены к категориям будут только пикселы, класс которых не изменился. Пикселы, класс которых не изменился, будут отнесены к классу Other.

(Значение по умолчанию — CHANGE_PIXELS_ONLY)

String

define_transition_colors

Определяет цвет, использующийся для отображения категорий переходных классов, если для method задано CATEGORICAL_DIFFERENCE, а для filter_method - CHANGED_PIXELS_ONLY или ALL.

  • AVERAGE—Переходным классам будет присвоен цвет, являющийся промежуточным между цветами классов «от» и «до». К примеру, у пикселов класса Forest>Urban будет цвет, находящийся посередине между цветами класса Forest в raster1 и класса Urban в raster2.Это значение по умолчанию.

  • FROM_COLOR—Переходным классам будет присвоен цвет исходного класса raster1.

  • TO_COLOR—Переходным классам будет присвоен цвет последнего класса raster2.

(Значение по умолчанию — AVERAGE)

String

extent_type

Определяет пространственный экстент, использованный для создания выходного растра.

  • FirstOf—Экстент первой переменной растра

  • IntersectionOf—Минимальная область, которая является общей для всех входных растров

  • UnionOf—Комбинированный экстент всех входных растров

  • LastOf—Экстент последней переменной растра

(Значение по умолчанию — IntersectionOf)

String

cellsize_type

Задает размер ячейки, использованный для создания выходного растра.

  • FirstOf—Размер ячейки первой переменной растра

  • MinOf—Минимальный размер ячейки входных растров

  • MaxOf—Максимальный размер ячейки входных растров

  • MeanOf—Средний размер ячейки входных растров

  • LastOf—Размер ячейки последней переменной растра

(Значение по умолчанию — MaxOf)

String

Возвращаемое значение

Тип данных Объяснение

Raster

Выходной растр.

Пример кода

Пример ComputeChange

В этом примере вычисляется разница между определенными классами категорий землепользования в 2000 и 2020 гг.

import arcpy
from arcpy.ia import *

raster1 = arcpy.Raster('Landcover_2000.tif')
raster2 = arcpy.Raster('Landcover_2020.tif')

# Compute only the change that occured in land cover between 2000 and 2020
changed_landcover = arcpy.ia.ComputeChange(raster1, raster2,
    "CATEGORICAL_DIFFERENCE",[41,42,43],[21,22,23],"CHANGED_PIXELS_ONLY",
    "AVERAGE","IntersectionOf","MaxOf")