ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • 帮助
  • Sign Out
ArcGIS Desktop

ArcGIS Online

专为贵组织打造的制图平台

ArcGIS Desktop

全面的专业性 GIS

ArcGIS Enterprise

面向企业的 GIS

ArcGIS for Developers

用于构建位置感知应用程序的工具

ArcGIS Solutions

适用于行业的免费模板地图和应用程序

ArcGIS Marketplace

获取适用于组织的应用程序和数据

  • 文档
  • 支持
Esri
  • 登录
user
  • 我的个人资料
  • 登出

ArcMap

  • 主页
  • 入门
  • 地图
  • 分析
  • 管理数据
  • 工具
  • 扩展模块

导出训练数据进行深度学习

需要 Spatial Analyst 许可。

  • 摘要
  • 用法
  • 语法
  • 代码示例
  • 环境
  • 许可信息

摘要

使用遥感影像将标注的矢量或栅格数据转换为深度学习训练数据集。输出为影像芯片文件夹和指定格式的元数据文件文件夹。

用法

  • 该工具将创建训练数据集以支持第三方深度学习应用程序,如 Google TensorFlow 或 Microsoft CNTK。

  • 使用现有的分类训练样本数据或 GIS 要素类数据(如建筑物覆盖区图层)生成包含来自源影像的类样本的影像芯片。影像芯片通常有 256 个像素行和 256 个像素列,除非训练样本大小更大。

  • 深度学习类训练样本基于包含感兴趣的要素或类的小型子影像,该子影像被称为影像芯片。

语法

ExportTrainingDataForDeepLearning (in_raster, out_folder, in_class_data, image_chip_format, {tile_size_x}, {tile_size_y}, {stride_x}, {stride_y}, {output_nofeature_tiles}, {metadata_format}, {start_index})
参数说明数据类型
in_raster

输入源影像,通常是多光谱影像。

输入源影像类型的示例包括多光谱卫星影像、无人机影像、航空影像或国家农业影像计划 (NAIP) 影像。

Raster Dataset; Raster Layer
out_folder

指定存储输出影像芯片和元数据的文件夹。

Directory
in_class_data

矢量或栅格形式的标注数据。

矢量输入应当遵循 ArcGIS Desktop 影像分类工具栏生成的训练样本格式。

栅格输入应当遵循分类栅格工具生成的分类栅格格式。

Feature Dataset; Feature Layer; Raster Dataset; Raster Layer
image_chip_format

影像芯片输出的栅格格式。

  • TIFF —TIFF 格式
  • PNG —PNG 格式
  • JPEG —JPEG 格式
  • MRF —MRF(元栅格格式)
String
tile_size_x
(可选)

影像芯片的大小,针对 X 维度。

Long
tile_size_y
(可选)

影像芯片的大小,针对 Y 维度。

Long
stride_x
(可选)

在创建下一个影像芯片时 X 方向上移动的距离。

当步幅等于切片大小时,将不会发生重叠。当步幅等于切片大小的一半时,将有 50% 的重叠。

Long
stride_y
(可选)

在创建下一个影像芯片时 Y 方向上移动的距离。

当步幅等于切片大小时,将不会发生重叠。当步幅等于切片大小的一半时,将有 50% 的重叠。

Long
output_nofeature_tiles
(可选)

选择是否导出具有重叠标注数据的影像芯片。

  • ALL_TILES —导出所有影像芯片,包括标注数据不发生重叠的影像芯片。这是默认设置。
  • ONLY_TILES_WITH_FEATURES —仅导出标注数据重叠的影像芯片。
Boolean
metadata_format
(可选)

输出元数据标注的格式。针对训练数据的输出元数据标注,系统提供 3 个选项:KITTI 矩形、PASCAL VOC 矩形和分类切片(类地图)。如果输入训练样本数据是诸如建筑物图层等的要素类图层或者标准分类训练样本文件,请使用 KITTI 或 PASCAL VOC 矩形选项。输出元数据是包含训练样本数据的 .txt 文件或 .xml 文件,其中训练样本包含在最小外接矩形中。元数据文件的名称与输入源影像名称相匹配。如果输入训练样本数据是类地图,请使用分类切片作为输出元数据格式选项。

  • KITTI_rectangles —元数据遵循与卡尔斯鲁厄理工学院和丰田工业大学 (KITTI) 对象检测评估数据集相同的格式。KITTI 数据集是一款视觉基准套件。这是默认设置。标注文件是纯文本文件。所有的值(数值或字符串)均由空格分隔开,每行对应一个对象。
  • PASCAL_VOC_rectangles —元数据遵循与模式分析、统计建模和计算学习、可视化对象类 (PASCAL_VOC) 数据集相同的格式。PASCAL VOC 数据集是用于对象类识别的标准化影像数据集。标注文件是 XML 文件,包含有关影像名称、类值和边界框的信息。
  • Classified_Tiles —此选项将针对每个输入影像芯片,输出一个分类影像芯片。对于每个影像芯片,没有其他元数据。只有统计数据输出具有更多关于类的信息,如类名称、类值和输出统计数据。

下表介绍了 KITTI 元数据格式中的 15 个值。此工具中仅使用可能存在的 15 个值中的 5 个:类名称(1 列)以及由四个影像坐标位置(5-8 列)构成的最小外接矩形。最小外接矩形包含用于深度学习分类器中的训练芯片。

列名称描述

1

类值

对象的类值,在 stats.txt 文件中列出。

2

未使用

3

未使用

4

未使用

5 - 8

Bbox

影像中对象的二维边界框,基于以 0 为基础的影像空间坐标索引。该边界框包含左、上、右、下像素的 4 个坐标。

9 - 11

未使用

12 - 14

未使用

15

未使用

有关详细信息,请参阅 KITTI 元数据格式 KITTI 元数据。

以下是 PASCAL VOC 的示例。

<?xml version=”1.0”?>
- <layout>
      <image>000000000</image>
      <object>1</object>
    - <part>
         <class>1</class>
       - <bndbox>
            <xmin>31.85</xmin>
            <ymin>101.52</ymin>
            <xmax>256.00</xmax>
            <ymax>256.00</ymax>
         </bndbox>
      </part>
  </layout>

有关详细信息,请参阅 PASCAL 可视化对象类PASCAL 可视化对象类。

String
start_index
(可选)

允许设置影像芯片序列的起始索引。由此可将更多影像芯片添加到现有序列。默认值为 0。

Long

代码示例

ExportTrainingDataForDeepLearning 示例 1(Python 窗口)

本示例将针对深度学习创建训练样本。

from arcpy.sa import *

ExportTrainingDataForDeepLearning("c:/test/image.tif", "c:/test/outfolder", 
                                 "c:/test/training.shp", "TIFF", "256", 
                                 "256", "128", "128", "NO", "KITTI_rectangles")
ExportTrainingDataForDeepLearning 示例 2(独立脚本)

本示例将针对深度学习创建训练样本。

# Import system modules and check out ArcGIS Spatial Analyst extension license
import arcpy
arcpy.CheckOutExtension("Spatial")
from arcpy.sa import *

# Set local variables
inRaster = "c:/test/image.tif"
out_folder = "c:/test/outfolder"
in_training = "c:/test/training.shp"
image_chip_format = "TIFF"
tile_size_x = "256"
tile_size_y = "256"
stride_x="128"
stride_y="128"
output_nofeature_tiles="NO"
metadata_format="KITTI_rectangles"

# Execute 
ExportTrainingDataForDeepLearning(inRaster, out_folder, in_training, 
                                 image_chip_format,tile_size_x, tile_size_y, 
                                 stride_x, stride_y,output_nofeature_tiles, 
                                 metadata_format)

环境

  • 范围

许可信息

  • ArcGIS Desktop Basic: 需要 Spatial Analyst
  • ArcGIS Desktop Standard: 需要 Spatial Analyst
  • ArcGIS Desktop Advanced: 需要 Spatial Analyst

相关主题

  • 影像分割和分类工具集概述

ArcGIS Desktop

  • 主页
  • 文档
  • 支持

ArcGIS 平台

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

关于 Esri

  • 关于我们
  • 招贤纳士
  • Esri 博客
  • 用户大会
  • 开发者峰会
Esri
分享您的想法。
Copyright © 2019 Esri. | 隐私政策 | 法律声明