Skip To Content

使用深度学习分类对象

使用深度学习分类对象“使用深度学习分类对象”工具在输入栅格和可选要素类上运行训练深度学习模型,以生成要素类或表,其中每个输入对象或要素均具有一个分配的类或类别标注。

注:

要运行此工具,门户必须针对栅格分析进行配置

此外,深度学习工具需要将 ArcGIS Image Server 配置用于深度学习栅格分析

目前,此功能仅在 Map Viewer 经典版(之前称为 Map Viewer)中受支持。 该功能将在新 Map Viewer 的未来版本中提供。 如果在 Map Viewer 经典版 中没有看到该工具,请联系您的组织管理员。 您的门户可能无法配置为用于路径选择,或者您不具备运行该工具所需的权限

工作流示意图

使用深度学习分类对象工作流

示例

  • 给定用于识别房屋位置的影像和要素类,请使用训练深度学习模型将每座房屋分类为损坏或未损坏。
  • 给定一个影像集合,其中每个影像都描述了一棵树,使用训练深度学习模型将每棵树分类为健康或不健康。

用法说明

运行此工具后,您的栅格分析服务器将调用第三方深度学习 Python API,并使用指定的 Python 栅格函数来处理每个栅格切片。

此工具的输入深度学习模型必须是存储在门户中的深度学习包(.dlpk)项目。 您可以使用 ArcGIS Pro 中的训练深度学习模型地理处理工具或 ArcGIS REST API 栅格分析工具来生成 .dlpk 项目。

选择或指定输入模型后,将从栅格分析服务器获取模型参数。 如果模型无效或者栅格分析服务器未正确配置深度学习,则该工具可能无法获得此信息。

输入 .dlpk 项目须包含 Esri 模型定义文件 (.emd)。 请参阅下面的示例 .emd 文件。

{
    "Framework": "Keras",
    "ModelConfiguration":"KerasClassifier",
    "ModelFile":"C:\\DeepLearning\\Damage_Classification_Model_V7.h5",
    "ModelType":"ObjectClassification",
    "ImageHeight":256,
    "ImageWidth":256,
    "ExtractBands":[0,1,2],
    "CropSizeFixed": 1,
    "BlackenAroundFeature": 1,
    "ImageSpaceUsed": "MAP_SPACE", 
    "Classes": [
    {
       "Value": 0,
       "Name": "Damaged",
       "Color": [255, 0, 0]
    },
    {
       "Value": 1,
       "Name": "Undamaged",
       "Color": [76, 230, 0]
    }
    ]
}

如果选中使用当前地图范围,则仅对当前地图范围中可见的像素进行分析。 如果未选中,则将分析整个输入影像图层。

下表列出了此工具的参数:

参数说明
选择用于分类对象的图像

用于分类对象的输入图像。

为对象选择要素图层(可选)

用于标识要分类或要标注的每个对象位置的点、线或面输入要素图层。 输入要素图层中的每一行表示一个对象。

如果未指定输入要素图层,将假设每个输入影像包含单个待分类对象。 如果一个或多个输入影像使用空间参考,则工具的输出为要素图层,其中每个影像的范围将用作每个标注要素的边界几何。 如果一个或多个输入影像没有使用空间参考,则工具的输出为包含影像 ID 值和每个影像类标注的表。

选择用于分类对象的深度学习模型

输入深度学习包 (.dlpk) 项目。

深度学习包包含 Esri 模型定义 JSON 文件 (.emd)、深度学习二进制模型文件以及要使用的 Python 栅格函数(可选)。

指定深度学习模型参数

函数参数在输入模型引用的 Python 栅格函数中定义。 您可以在此列出其他深度学习参数和用于优化的参数,例如用于调整灵敏度的置信度阈值。

参数名称将由工具通过读取 Python 模块进行填充。

定义类标注字段名称(可选)

包含输出要素图层中分类标注的字段名称。

如果未指定字段名称,则会在输出要素图层中生成一个名为 ClassLabel 的新字段。

处理模式

指定处理影像服务中的所有栅格项目的方式。

  • 以镶嵌影像方式处理 - 影像服务中的所有栅格项目都将被镶嵌在一起并进行处理。 这是默认设置。
  • 单独处理所有栅格项目 - 影像服务中的所有栅格项目都将作为单独的影像进行处理。
进行标记。

结果图层名称

将在我的内容中创建并添加到地图中的图层的名称。 默认名称基于工具名称以及输入图层名称。 如果该名称的图层已存在,则系统将提示您提供其他名称。

您可以使用将结果保存在下拉框指定我的内容中的文件夹名称,结果将保存到该文件夹中。

环境

分析环境设置是影响工具执行结果的附加参数。 您可以通过单击工具窗格顶部的齿轮图标 分析环境 来访问该工具的分析环境设置。

该工具支持以下分析环境

  • 范围 - 指定要用于分析的区域。
  • 像元大小 - 要在输出图层中使用的像元大小。
  • 处理工作线程的周期间隔 - 定义要在重新启动工作进程之前处理多少个图像部分。
  • 并行处理因子 - 控制栅格处理 CPU 或 GPU 实例。
  • 发生故障时的重试次数 - 定义当处理作业的过程中出现随机故障时,工作进程将尝试进行重试的次数。

类似的工具和栅格函数

使用“使用深度学习分类对象”工具分类影像中的对象。 其他工具或许在解决类似问题时十分有用。

Map Viewer 经典版 分析工具和栅格函数

使用使用深度学习检测对象工具检测影像中的对象位置。 使用使用深度学习分类像素工具对图像中的每个像素进行分类。

ArcGIS Pro 分析工具和栅格函数

Image Analyst 工具箱中提供了使用深度学习分类对象地理处理工具。 深度学习工具集中的其他工具执行深度学习工作流。

ArcGIS Enterprise 开发人员资源

如果您正在使用 ArcGIS REST API,则请使用 Classify Objects Using Deep Learning 操作。

如果您正在使用 ArcGIS API for Python,请使用 arcgis.learn 模块执行深度学习任务 ArcGIS for Python API 网站