组合数学工具的工作原理

需要 Spatial Analyst 许可。

获得 Image Analyst 许可后可用。

组合数学工具用于为输入值的唯一组合赋予新的输出值。 如何确定组合的唯一性取决于使用的特定组合工具。 有三种执行组合逻辑运算的工具:组合与组合或组合异或

从概念上讲,组合算法的一般过程如下:

  1. 分析中不考虑 NoData 像元,所以在两个输入中为 NoData 的像元在输出栅格中仍为 NoData。

  2. 对输入中的其余像元按从左到右、从上到下的顺序进行扫描。 只要遇到输入值的唯一组合,内部表就会进行跟踪记录。

  3. 在输入值的所有唯一组合均已确定后,可对特定工具应用逻辑条件。

    • 对于组合与,条件为“真”指两个输入都是非 0 值。
    • 对于组合或,条件为“真”指一个输入为非 0 值或两个输入均为非 0 值。
    • 对于组合异或,条件为“真”指一个输入为 0 值,而另一个输入为非 0 值。

  4. 将根据逻辑条件生成输出。

    条件为“假”将返回值 0。 每个唯一的“真”条件都将被作为所遇到的第一个此类条件的序号返回。

  5. 在输出栅格的属性表中,添加了两个项目,这些项目显示了构成唯一组合的输入栅格的像元值。 可将其视为来源。

示例

考虑组合工具的图示中显示的输入栅格。 它们显示了两个包含 16 个像元 (4x4) 的栅格,其值范围为 0 到 4,一些像元为 NoData。 为简化此论述,此处的输入像元值均以纵向列表形式按顺序列出。

  1. 排除 NoData 像元:

    由于不考虑 NoData,所以第一步是忽略输入中的这些像元。

  2. 唯一组合:

    对输入中的其余像元按从左到右、从上到下的顺序进行扫描,然后记录唯一组合。

    Input Values     =>   NoData Excluded   =>   Unique Combinations
    ==============        ===============        ======================
    InRas1  InRas2        InRas1  InRas2         InRas1  InRas2   Count
    ------  ------        ------  ------         ------  ------   -----
      1       0             1       0              1        0     ( 2 )
      1       1             1       1              1        1     ( 2 )
      0       1             0       1              0        1     ( 1 )
      0       0             0       0              0        0     ( 3 )
    nodata    3             1       3              1        3     ( 1 )
      1       3             2       1              2        1     ( 1 )
      2       1             2       2              2        2     ( 2 )
      2       2             0       0              4        3     ( 1 )
      4     nodata          0       0              0        2     ( 1 )
      0       0             2       2 
      0       0             4       3  
      2       2             0       2  
      4       3             1       1  
      0       2             1       0
      1       1          
      1       0      
    
  3. 真/假状态:

    在输入值的所有唯一组合均已确定后,对特定工具应用真/假逻辑条件。

  4. 返回值:

    对于所有工具来说,条件为“假”都将返回值 0。 每个唯一的“真”条件将返回该条件的序号。

    Combinations     =>   True/False State  =>   Returned Value 
    ==============        ================       =============== 
    InRas1  InRas2        And   Or    XOr        And   Or    XOr
    ------  ------        ---   ---   ---        ---   ---   ---
      1       0            F     T     T          0     1     1
      1       1            T     T     F          1     2     0
      0       1            F     T     T          0     3     2
      0       0            F     F     F          0     0     0
      1       3            T     T     F          2     4     0
      2       1            T     T     F          3     5     0
      2       2            T     T     F          4     6     0
      4       3            T     T     F          5     7     0
      0       2            F     T     T          0     8     3
    
  5. 为输出栅格的属性表追加用于定义唯一条件的输入栅格的值。 相关示例可在组合工具的参考帮助的“图示”部分看到。

相关主题


在本主题中
  1. 示例