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" :"TensorFlow",
    "ModelConfiguration": "ObjectDetectionAPI",
    
    "ModelFile": ".\\CoconutTreeDetection.model",
    "ModelType": "ObjectDetection",
    "ImageHeight": 850,
    "ImageWidth": 850,
    "ExtractBands": [0,1,2],
    "ImageSpaceUsed": "MAP_SPACE"
    "Classes": [
    {
        "Value": 0,
        "Name": "CoconutTree",
        "Color": [0, 255, 0]
    }
    ]
}

选中该框以启用非极大值抑制标识和移除对象检测中重复的要素。

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

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

参数说明
选择用于检测对象的图像

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

选择用于检测对象的深度学习模型

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

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

指定深度学习模型参数

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

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

从输出中移除重复的要素(可选)

指定是否将执行非极大值抑制,其中将标识重复找到的对象,并移除置信度值较低的重复要素。

  • 未选中 - 所有检测到的对象都将位于输出要素类中。 这是默认设置。
  • 选中 - 将移除检测到的重复对象。

置信度得分字段

要素服务中的字段,该字段包含将由对象检测方法输出的置信度得分。

当选中了非极大值抑制参数时需要用到该参数。

类值字段

输出要素服务中的类值字段。 若未指定,则工具将使用标准类值字段 ClassvalueValue。 若这些字段不存在,则所有要素将被视为相同的对象类。

当选中了非极大值抑制参数时需要用到该参数。

最大重叠比

两个重叠要素的最大重叠比,其定义为交集区域与并集区域之比。 默认值为 0。

当选中了非极大值抑制参数时需要用到该参数。

处理模式

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

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

结果图层名称

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

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

环境

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

该工具支持以下分析环境

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

类似的工具和栅格函数

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

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

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

ArcGIS Pro 分析工具和栅格函数

使用深度学习检测对象地理处理工具在 Image Analyst 工具箱中可用。 深度学习工具集中的其他工具执行深度学习工作流。

ArcGIS Enterprise 开发人员资源

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

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