需要 Spatial Analyst 许可。
获得 Image Analyst 许可后可用。
描述
使用 Iso 聚类分类定义生成 Esri 分类器定义文件 (.ecd)。
此工具用于执行非监督分类。
使用方法
任何 Esri 支持的栅格都可用作输入,包括栅格产品、分割栅格、镶嵌、影像服务或通用栅格数据集。分割栅格必须为 8 位 3 波段栅格。
仅在其中一个栅格图层输入为分割影像的情况下启用分割属性参数。
语法
TrainIsoClusterClassifier(in_raster, max_classes, out_classifier_definition, {in_additional_raster}, {max_iterations}, {min_samples_per_cluster}, {skip_factor}, {used_attributes}, {max_merge_per_iter}, {max_merge_distance})
参数 | 说明 | 数据类型 |
in_raster | 待分类的栅格数据集。 | Raster Layer; Mosaic Layer; Image Service; String |
max_classes | 分组像素或分割影像时所需的最大类数。此参数应设置为大于图例中类的数量。 您获取的要素类可能会少于此参数中指定的数量。如果需要更多要素类,可在训练过程结束后增加此值并聚集类。 | Long |
out_classifier_definition | 包含属性信息、统计数据、超平面矢量和分类器所需的其他信息的输出 JSON 文件。将创建一个 .ecd 文件。 | File |
in_additional_raster (可选) | 将整合辅助栅格数据集(如多光谱影像或 DEM),从而为分类生成属性和其他所需信息。设置此参数属于可选操作。 | Raster Layer; Mosaic Layer; Image Service; String |
max_iterations (可选) | 聚类过程将运行的最大迭代次数。 推荐迭代次数范围为 10 到 20 之间。增加此值将会使处理时间呈线性增加。 | Long |
min_samples_per_cluster (可选) | 一个有效聚类或类中的最小像素数或分割数。 默认值 20 对于创建具有统计显著性的类有效。可增加这一数值以获得更可靠的类;但是,这样可能会限制所创建类的总数。 | Long |
skip_factor (可选) | 像素影像输入所需跳过的像素数。如果输入是分割影像,则请指定要跳过的分割数。 | Long |
used_attributes [used_attributes;used_attributes,...] (可选) | 指定要包括在与输出栅格相关联的属性表中的属性。
如果在输入栅格上将分割关键属性设置为 true 时,则仅启用此参数。如果仅对此工具输入分割影像,则默认属性为 COLOR、COUNT、COMPACTNESS 和 RECTANGULARITY。如果将 in_additional_raster 作为输入与分割影像一起添加进来,则还可以使用 MEAN 和 STD 属性。 | String |
max_merge_per_iter (可选) | 每个迭代的最大聚类合并数。增加合并的数量将减少所创建的类。较小值将生成较多的类。 | Long |
max_merge_distance (可选) | 要素空间中聚类中心间的最大距离。增加距离将允许更多的聚类合并,从而生成较少的类。较小值将生成较多的类。值 0 到 5 可返回最佳结果。 | Double |
代码示例
以下 Python 窗口脚本使用 ISO 聚类分类器创建最多含十个类的非监督 Esri 分类定义文件。
import arcpy
from arcpy.ia import *
# Check out the ArcGIS Image Analyst extension license
arcpy.CheckOutExtension("ImageAnalyst")
TrainIsoClusterClassifier("c:/test/moncton_seg.tif", "10",
"c:/output/moncton_sig_iso.ecd","c:/test/moncton.tif",
"5", "10", "2", "COLOR;MEAN;STD;COUNT;COMPACTNESS;RECTANGULARITY")
此脚本示例使用 ISO 聚类分类器创建最多含十个类的非监督 Esri 分类定义文件。
# Import system modules
import arcpy
from arcpy.ia import *
"""Usage: TrainIsoClusterClassifier(in_raster, max_num_classes,
out_classifier_definition, {in_additional_raster},
{max_num_iterations}, {min_num_samples_per_cluster},
{skip_factor},{used_attributes})
"""
# Set local variables
inSegRaster = "c:/test/moncton_seg.tif"
maxNumClasses = "10"
out_definition = "c:/output/moncton_sig_iso.ecd"
in_additional_raster = "moncton.tif"
maxIteration = "20"
minNumSamples = "10"
skipFactor = "5"
attributes = "COLOR;MEAN;STD;COUNT;COMPACTNESS;RECTANGULARITY"
# Check out the ArcGIS Image Analyst extension license
arcpy.CheckOutExtension("ImageAnalyst")
# Execute
TrainIsoClusterClassifier(inSegRaster, maxNumClasses,
out_definition,in_additional_raster,
maxIteration, minNumSamples, skipFactor, attributes)
许可信息
- Basic: 需要 Image Analyst 或 Spatial Analyst
- Standard: 需要 Image Analyst 或 Spatial Analyst
- Advanced: 需要 Image Analyst 或 Spatial Analyst