栅格重分级

使用说明

重新定义栅格数据集中每个像元的数值。栅格重分级仅适用于栅格数据集(GRID),而不适用于影像数据集(IMAGE)。

对源栅格数据的像元值进行重新分类并按照新的分类标准赋值,其结果是用新的值取代栅格数据的原有像元值。对于已知的栅格数据,有时为了便于看清趋势,找出像元值的规律,或者为了方便进一步的分析,重分级是很必要的。栅格重分级一般包括以下四种形式:

  • 使用新值替代像元的旧值。例如,在土地类型变更时,将已经开垦为耕地的荒地赋予新的像元值。
  • 对大量的像元值进行重新分组归类,同组的像元赋予相同的值来简化数据。例如,将旱地、水浇地、耕地等都归为农业用地。
  • 对多种栅格数据按照统一的标准进行分级。例如,某个建筑物选址的影响因素包括土壤和坡度,则对于输入数据的土壤类型和坡度栅格数据,可以按照1-10的等级标准来进行重分级,以便于进一步的选址分析。
  • 将某些不希望参与分析的像元设为无值,也可以为原先为无值的像元补充新的测定值,便于进一步的分析处理。

功能入口

  • 数据 选项卡 -> 数据处理 -> 栅格 -> 重分级
  • 工具箱 -> 数据处理 -> 栅格 -> 重分级

参数说明

  • 重分级列表工具说明:

    • 级数设置:选择重分类的级数设置方法。

      • 间距:根据间距来确定每个段值。输入间距后,系统会在栅格最小值的基础上,按输入间距值分段并递增,直至栅格最大值。其中,递增到最后的段值应该小于或等于栅格的最大值。例如,在上例栅格数据集中,若设置间距为200,则格段值分别为200、400、600、800和1000;若设置间距为300,则各段值分别为200、500、800。
      • 级数:确定重分级的级数,默认值为10。输入级数值后,系统会根据栅格数据中像元值的最大值和最小值,以等差的方式自动计算每个段值。例如,栅格数据集像元的最小值为200,最大值为1000,输入的级数为4,则各段值分别为200、400、600、800、1000。
      • 当选择设置级数时,可在分段方法中选择等距分段或自然间断分段。
    • 默认分级:默认系统的分级方式。
    • 合并多行按钮:可以将选中的多条连续记录合并为一条新的记录,其段值下限为所选的原始记录中的最小像元值,段值上限为所选的原始记录中的最大像元值。当表框内仅有一条记录被选中或跳选多条不连续记录时,合并段值功能不可用。
    • 拆分行按钮:可以将选中的一条记录拆分为两条新的记录,原始记录的像元值将按数值大小平均分成两份,分别赋予新生成的两条记录中。当列表框内有多条记录被选中时,拆分段值功能不可用。
    • 导入 XML 文件按钮:可以将保存为 *.xml 格式的重分级配置文件导入到“栅格重分级”对话框中显示,直接按照现有的重分级参数对所选栅格数据集进行重分级操作。
    • 导出 XML 文件按钮:可以将列表框中的分级设置和与重分级相关的其它参数设置以 *.xml 格式保存到文件中,便于以再次使用。
    • 目标值反序按钮:用来反向赋予新的像元值。
    • 重分级类型:选择重分级的类型,提供范围重分级和单值重分级。
    • 在列表框中设置所选栅格数据集中像元值的分级段值。其中,每一条对象对应一个分段范围,包括段值下限、段值上限和目标值三部分,下面将详细介绍各列所表示的内容。

      • 段值下限列:将栅格数据集的像元值按照所设的级数分级后,每一分级范围内的最小值。
      • 段值上限列:将栅格数据集的像元值按照所设的级数分级后,每一分级范围内的最大值。
      • 目标值列:对分段范围内所有源像元值所赋予的新的像元值。

完成栅格重分级的参数设置后,可单击列表框上方工具栏中的“导出 XML 文件”按钮,将已设置好的重分级参数导出至 XML 文件中,便于再次使用。

导出文件结构

         <?xml version="1.0" encoding="UTF-8"?><SmXml:ReclassMappingTablexmlns:SmXml="http://www.supermap.com/xml">
         <SmXml:ReclassType 2 </SmXml:ReclassType><SmXml:SegmentCount count="5"><SmXml:Range1 1348.000000 -- 1733.400000: 5.000000-1>
         </SmXml:Range1> <SmXml:Range2 1733.400000 -- 2118.800000: 4.000000-1>
         </SmXml:Range2><SmXml:Range3 2118.800000 -- 2504.200000: 3.000000-1>
         </SmXml:Range3><SmXml:Range4 2504.200000 -- 2889.600000: 2.000000-1>
         </SmXml:Range4><SmXml:Range5 2889.600000 -- 3275.000000: 1.000000-1>
         </SmXml:Range5></SmXml:SegmentCount><SmXml:RetainMissingValue 1 </SmXml:RetainMissingValue>
         <SmXml:RetainNoValue 1 </SmXml:RetainNoValue><SmXml:ChangeMissingValueTo0.000000>
        </SmXml:ChangeMissingValueTo><SmXml:ChangeNoValueTo -9999.000000</SmXml:ChangeNoValueTo>
        </SmXml:ReclassMappingTable>
  
<ReclassType> 字段表示分级类型,2表示按照范围分级。  

<SeqmentCount> 字段表示级数,示例中的 count = "11" 表示共分为11级。  

<Rangei> 字段表示各个分级的范围值,其中 i 表示级数。示例中共分为11级,因此需要设置 Range1 到 Range11共11个字段的分级信息。字段内的内容按由左到右的顺序可分为三部分:原始像元值,重分级后新的像元值,范围区间类型,其中范围区间用1或0表示,1表示左闭右开,0表示左开右闭。  

<RetainMissingValue> 字段表示是否对未分级单元进行处理,0表示进行处理,1表示不进行处理。  

<RetainNoValue> 字段表示是否对无值单元进行处理,0表示进行处理,1表示不进行处理。  

<ChangeMissingValueTo> 字段表示未分级单元处理后的目标值。  

<ChangeNoValueTo> 字段表示无值处理后的目标值。  
  • 像素格式:设置结果数据集的像素格式。应用程序提供了整型、长整型、单精度浮点型和双精度浮点型四种像素格式,各像素格式的具体说明请参见栅格数据集像素格式
  • 范围区间:设置范围区间的开闭状态。其中,开区间表示区间边界的边界值不包括在区间范围内,闭区间表示区间边界的边界值包括在区间范围内。

    • 左闭右开 :指定区间范围的左侧边界的边界值在区间范围内,右侧边界的边界值在区间范围外。
    • 左开右闭 :指定区间范围的左侧边界的边界值在区间范围外,右侧边界的边界值在区间范围内
  • 空值 :对于源栅格数据集中的空值,可以选择继续保持空值或为其设置一个新的像元值。
  • 未分级单元 :未分级单元就是在对话框左侧的重分级列表中未涉及的像元值,可以选择为其统一设置一个新的像元值。
  • 结果数据 选择存储结果数据集其所在的数据源,设置结果数据集的名称。默认与源数据源相同。

完成栅格重分级相关参数的设置后,即可执行栅格重分级操作。

ReclassResult