栅格比较 (Data Management)

许可等级:BasicStandardAdvanced

摘要

比较两个栅格数据集、两个栅格目录或两个镶嵌数据集的属性,然后返回比较结果。

用法

语法

RasterCompare_management (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; Raster Catalog Layer; Mosaic Layer
in_test_raster

要与输入基础栅格进行比较的测试栅格。

有效输入包括栅格数据集、栅格目录或镶嵌数据集。

Raster Layer; Raster Catalog Layer; Mosaic Layer
compare_type
(可选)

比较类型。

  • RASTER_DATASET比较栅格数据集的属性。
  • GDB_RASTER_DATASET比较地理数据库中的栅格数据集的属性。
  • GDB_RASTER_CATALOG比较地理数据库中的栅格目录的属性。
  • MOSAIC_DATASET比较镶嵌数据集的属性。
String
ignore_option
[ignore_option,...]
(可选)

指定的属性在比较期间将不进行比较。

打开工具对话框以查看忽略选项参数值列表。您的对比类型将决定哪种忽略选项有效。

String
continue_compare
(可选)

指示在遇到第一个不匹配项后是否继续比较所有属性。

  • NO_CONTINUE_COMPARE在遇到第一个不匹配项后即停止比较。这是默认设置。
  • CONTINUE_COMPARE在遇到第一个不匹配项后继续比较其他属性。
Boolean
out_compare_file
(可选)

包含比较结果的文本文件的名称和路径。

File
parameter_tolerances
[[Parameter, Tolerance, Type],...]
(可选)

“参数容差”允许比较参数值时存在一定的精度偏差。这样就可以对处理数据过程中产生的任何细微变动作出解释。

对于“参数”类型列表,可选择您允许存在容差的参数。针对每个参数,将需要一个容差及容差类型。容差类型既可以是整个容差值,也可以是部分容差值。在使用部分容差值类型时,部分容差值基于基础值;因此用于进行比较的容差值应为部分容差值因子乘以基础值。例如,若基础值为 100,而设定的部分容差值因子为 0.00001,则比较容差为 100 * 0.00001 = 0.001

  • 全部该选项可将相同容差应用到范围、像素值、最小像素值、最大像素值、平均像素值及标准差像素值。
  • 范围栅格的范围具有允许的容差。
  • Pixel_Value栅格的像素值具有允许的容差。
  • Statistics_Minimum栅格的最小像素值具有允许的容差。
  • Statistics_Maximum栅格的最大像素值具有允许的容差。
  • Statistics_Mean栅格的平均像素值具有允许的容差。
  • Statistics_Standard_Deviation栅格的标准差像素值具有允许的容差。
Value Table
attribute_tolerances
[[Field, Tolerance],...]
(可选)

“属性容差”允许比较属性值时存在一定的精度偏差。这样就可以对处理数据过程中产生的任何细微变动作出解释。

针对每个您允许有容差的参数输入字段名及容差值。此容差值为实际容差值,不是部分容差值。

Value Table
omit_field
[omit_field,...]
(可选)

这些是您希望在比较结果中“忽略”的字段。输入要在比较中忽略的字段。

在处理栅格目录过程中,比较的是栅格目录的属性列,而不是目录项中的属性。

String

代码实例

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()

环境

相关主题

许可信息

ArcGIS for Desktop Basic: 是
ArcGIS for Desktop Standard: 是
ArcGIS for Desktop Advanced: 是
5/10/2014