Разница (Spatial Analyst)

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

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

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

Определяет, какие значения из первых входных данных логически отличаются от значений вторых входных данных на основе "ячейка-за-ячейкой ".

Если значения двух входных растров разные, значения первого входного растра записываются в выходной растр. Если значения двух входных растров одинаковые, в соответствующей ячейке выходного растра будет 0.

Иллюстрация

Рисунок инструмента Разница
OutRas = Diff(InRas1, InRas2)

Использование

  • Для выполнения операции логического сравнения необходимо наличие двух входных файлов.

  • Порядок входных данных имеет значение для этого инструмента.

  • Если оба входных растра – целочисленные, выходной растр также будет целочисленным; в противном случае, выходной растр будет с плавающей точкой.

  • Если оба входных растра одноканальные либо входные данные - одноканальный растр и константа, выходной растр будет одноканальным.

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

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

  • Если все входные данные представляют собой многомерные растровые данные с одинаковым количеством переменных, инструмент выполнит операцию для всех срезов с одинаковым значением размера. Результатом будет многомерный растр в формате CRF. Переменные во входных данных должны иметь по крайней мере одну общую размерность и одно общее размерное значение для обработки этим инструментом, в противном случае произойдет ошибка.

    Если все входные данные имеют одну переменную, но разные имена, снимите отметку Сопоставить многомерную переменную для среды геообработки (установите arcpy.env.matchMultidimensionalVariable = False в Python) перед запуском инструмента.

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

  • См. раздел Среда анализа и Spatial Analyst для получения дополнительной информации о среде геообработки данного инструмента.

Параметры

ПодписьОписаниеТип данных
Входной растр или постоянное значение 1

Входной растр, с которым будет сравниваться второй входной растр.

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

Raster Layer; Constant
Входной растр или постоянное значение 2

Входной растр, с которым будет сравнен первый входной растр.

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

Raster Layer; Constant

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

ПодписьОписаниеТип данных
Выходной растр

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

Значения в выходных данных будут равны 0, если два входных значения одинаковые, или первому входному значению – если не одинаковые.

Raster

Diff(in_raster_or_constant1, in_raster_or_constant2)
ИмяОписаниеТип данных
in_raster_or_constant1

Входной растр, с которым будет сравниваться второй входной растр.

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

Raster Layer; Constant
in_raster_or_constant2

Входной растр, с которым будет сравнен первый входной растр.

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

Raster Layer; Constant

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

ИмяОписаниеТип данных
out_raster

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

Значения в выходных данных будут равны 0, если два входных значения одинаковые, или первому входному значению – если не одинаковые.

Raster

Пример кода

Diff, пример 1 (окно Python)

В этом примере выполняется операция разницы для двух растров GRID, в результате чего получается растр IMG.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outDiff = Diff("degs", "negs")
outDiff.save("C:/sapyexamples/output/outdiff.img")
Diff, пример 2 (автономный скрипт)

В этом примере выполняется операция разницы для двух растров GRID.

# Name: Diff_Ex_02.py
# Description: Determines which values from the first input are
#              logically different from the values of the second input
#              on a cell-by-cell basis within the Analysis window
# Requirements: Spatial Analyst Extension

# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *

# Set environment settings
env.workspace = "C:/sapyexamples/data"

# Set local variables
inRaster1 = "degs"
inRaster2 = "negs"

# Execute Diff
outDiff = Diff(inRaster1, inRaster2)

# Save the output 
outDiff.save("C:/sapyexamples/output/outdiff")

Информация о лицензиях

  • Basic: Обязательно Spatial Analyst или Image Analyst
  • Standard: Обязательно Spatial Analyst или Image Analyst
  • Advanced: Обязательно Spatial Analyst или Image Analyst

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