描述
比较两个栅格或镶嵌数据集的属性。
使用方法
此工具可返回显示比较结果的信息。
参数和属性容差允许比较结果存在指定量的偏差。
语法
arcpy.management.RasterCompare(in_base_raster, in_test_raster, {compare_type}, {ignore_option}, {continue_compare}, {out_compare_file}, {parameter_tolerances}, {attribute_tolerances}, {omit_field})
参数 | 说明 | 数据类型 |
in_base_raster | 要比较的第一个栅格或镶嵌数据集。 | Raster Layer; Mosaic Layer |
in_test_raster | 要与第一个栅格或镶嵌数据集进行比较的第二个栅格或镶嵌数据集。 | Raster Layer; Mosaic Layer |
compare_type (可选) | 指定将比较的栅格类型。
| String |
ignore_option [ignore_option,...] (可选) | 指定将在比较中被忽略的属性。
| String |
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 |
派生输出
名称 | 说明 | 数据类型 |
compare_status | 未检测到差异时比较状态将为 true;检测到差异时比较状态将为 false。 | Boolean |
代码示例
RasterCompare 示例 1(Python 窗口)
这是 RasterCompare 函数的 Python 示例。
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(独立脚本)
这是 RasterCompare 函数的 Python 示例。
##====================================
##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: 是