Сравнить растры (Управление данными)

Сводка

Сравнивает свойства двух наборов растровых данных или данных мозаики.

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

  • Инструмент выдает сообщение с результатами сравнения.

  • Допуски параметров и атрибутов позволяют проводить гибкое сравнение.

Синтаксис

arcpy.management.RasterCompare(in_base_raster, in_test_raster, {compare_type}, {ignore_option}, {continue_compare}, {out_compare_file}, {parameter_tolerances}, {attribute_tolerances}, {omit_field})
ParameterОбъяснениеТип данных
in_base_raster

Первый из сравниваемых наборов растровых данных или данных мозаики.

Raster Layer; Mosaic Layer
in_test_raster

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

Raster Layer; Mosaic Layer
compare_type
(Дополнительный)

Тип растра, который будет сравниваться.

  • RASTER_DATASETСравнить два набора растровых данных.
  • GDB_RASTER_DATASETСравнить два набора растровых данных в базе геоданных.
  • MOSAIC_DATASETСравнить два набора данных мозаики.
String
ignore_option
[ignore_option,...]
(Дополнительный)

Свойства, которые вы не хотите включать в сравнение.

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

  • BandCountИгнорировать количество каналов.
  • ExtentИгнорировать экстент.
  • Columns And RowsИгнорировать количество столбцов и строк.
  • Pixel TypeИгнорировать тип пиксела.
  • NoDataИгнорировать значение NODATA.
  • Spatial ReferenceИгнорировать пространственную привязку.
  • Pixel ValueИгнорировать значения пикселов.
  • ColormapИгнорировать возможное наличие цветовой карты.
  • Raster Attribute TableИгнорировать возможное наличие таблицы атрибутов.
  • StatisticsИгнорировать статистику.
  • MetadataИгнорировать метаданные.
  • Pyramids ExistИгнорировать возможное существование пирамидных слоев.
  • Compression TypeИгнорировать тип сжатия.
String
continue_compare
(Дополнительный)

При обнаружении несоответствия остановите сравнение.

  • NO_CONTINUE_COMPAREОтмечено – прекращает сравнение при обнаружении несоответствия. Используется по умолчанию.
  • CONTINUE_COMPAREНе отмечено – продолжает сравнивать наборы растровых данных при обнаружении несоответствия.
Boolean
out_compare_file
(Дополнительный)

Создать текстовый файл с результатами сравнения.

File
parameter_tolerances
[[Parameter, Tolerance, Type],...]
(Дополнительный)

Сделайте некоторую поправку на точность при сравнении параметров. Можно применить ко всем параметрам одинаковый допуск, или определить отдельные значения допуска для каждого параметра.

Тип допуска может быть выражен в виде абсолютного значения или доли. Например, если исходное значение равно 100, и вы устанавливаете допуск 0.00001 (доля), допуск сравнения будет в пределах 100 * 0.001 (100 * 0.00001).

Value Table
attribute_tolerances
[[Field, Tolerance],...]
(Дополнительный)

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

Value Table
omit_field
[omit_field,...]
(Дополнительный)

Одно или несколько полей, которые будут пропущены в процессе сравнения.

String

Производные выходные данные

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

Статус сравнения будет равно 'true', если не было найдено различий, и 'false' – если различия были обнаружены.

Boolean

Пример кода

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

Пример скрипта Python для инструмента RasterCompare.

import arcpy
RasterCompare_management("C:/workspace/image1.tif","C:/workspace/image2.tif",\
                         "RASTER_DATASET","'Pyramids Exist'",\
                         "CONTINUE_COMPARE","C:/workspace/compare01.txt",\
                         "Pixel_Value 1 Value","Count 5","OID")
RasterCompare, пример 2 (автономный скрипт)

Пример скрипта Python для инструмента RasterCompare.

##====================================
##Raster Compare
##Usage: RasterCompare_management in_base_raster in_test_raster {RASTER_DATASET |
##                                GDB_RASTER_DATASET | GDB_RASTER_CATALOG |
##                                MOSAIC_DATASET} {ignore_option;ignore_option...}
##                                {NO_CONTINUE_COMPARE | CONTINUE_COMPARE} 
##                                {out_compare_file} {Parameter {Tolerance} {Type};
##                                Parameter {Tolerance} {Type}...} {Field {Tolerance};
##                                Field {Tolerance}...} {omit_field;omit_field...} 
    
    
try:
    import arcpy
    
    arcpy.env.workspace = "c:/workspace"
    
    ##Compare two Raster dataset
    arcpy.RasterCompare_management("raster_base.tif","raster_test.tif","RASTER_DATASET",\
                                   "","CONTINUE_COMPARE","compareresult.txt","","","")
    
    ##Compare two Raster Catalog with ignore options
    arcpy.RasterCompare_management("fgdb.gdb/rc_base","fgdb.gdb/rc_test","RASTER_CATALOG",\
                                   "IsManaged;Extent","CONTINUE_COMPARE","compareresult2.txt",\
                                   "","","DATE")
    
    ##Compare two Mosaic Dataset with torelance
    arcpy.RasterCompare_management("fgdb.gdb/md_base","fgdb.gdb/md_test","MOSAIC_DATASET",\
                                   "IsEmbedded;Seamline","CONTINUE_COMPARE","compareresult3.txt",\
                                   "All 0.00001 Fraction","HighPS 0.0001;LowPS 0.0001",\
                                   "ItemTS;UriHash")
    
except:
    print "Raster Compare exsample failed."
    print arcpy.GetMessages()

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

  • Basic: Да
  • Standard: Да
  • Advanced: Да

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