导出训练数据进行深度学习 (影像分析工具)
汇总
使用遥感影像将标注的矢量或栅格数据转换为深度学习训练数据集。 输出为影像片文件夹和指定格式的元数据文件文件夹。
用法
该工具将创建训练数据集,以支持第三方深度学习应用程序,如 PyTorch、Microsoft CNTK 等。
深度学习类训练样本基于包含感兴趣的要素或类的小型子影像,该子影像被称为影像片。
可以使用现有的分类训练样本数据或 GIS 要素类数据(如建筑物覆盖区图层)生成包含来自源影像的类样本的影像片。 影像片通常有 256 个像素行和 256 个像素列,除非训练样本大小更大。 每个影像片可以包含一个或多个对象。 如果使用元数据格式参数的标注切片选项,则每个影像片只能有一个对象。
通过指定参考系统参数值,可以将训练数据导出到地图空间或像素空间中,以便将其用于深度学习模型训练。
该工具支持从影像集合中导出训练数据。 您可以将影像文件夹添加为输入栅格参数值。 如果输入栅格值为镶嵌数据集或影像服务,则您也可以将处理模式参数指定为将镶嵌作为一个输入进行处理或每个栅格项目分别处理。
使用影像服务作为输入栅格值时,该工具会遵循影像服务的
maxImageHeight和maxImageWidth属性限制,用于确定服务允许在客户端请求中使用的最大行数和列数。 如果超出此限制,此工具将失败并显示错误。可以使用地理处理环境设置来调整像元大小和范围。
此工具支持并行处理因子环境。 当未指定环境时,该工具将在单核上运行。 当使用大型数据集时,对于环境,设置该工具可用于分配工作负载的核心数。
有关运行此工具的要求以及您可能遇到的问题的信息,请参阅深度学习常见问题。
参数
| 标注 | 说明 | 数据类型 |
|---|---|---|
|
输入栅格 |
输入源影像,通常是多光谱影像。 输入源影像类型的示例包括多光谱卫星影像、无人机影像、航空影像和国家农业影像计划 (NAIP)。 输入可以是影像的文件夹。 |
Raster Dataset; Raster Layer; Mosaic Layer; Image Service; Map Server; Map Server Layer; Internet Tiled Layer; Folder |
|
输出文件夹 |
将存储输出影像片和元数据的文件夹。 该文件夹还可以是使用云存储连接文件 ( |
Folder |
|
输入要素类或分类栅格或表 |
矢量或栅格形式的训练样本数据。 矢量输入应当遵循使用训练样本管理器窗格生成的训练样本格式。 栅格输入应当遵循分类栅格工具生成的分类栅格格式。 栅格输入也可以来自分类栅格的文件夹。 分类栅格输入需要相应的栅格属性表。 输入表应当遵循通过训练样本管理器窗格中的深度学习标注对象按钮生成的训练样本格式。 遵循正确的训练样本格式将使用统计信息生成最佳结果。 但是,输入也可以是没有类值字段的点要素类,或不具有类信息的整型栅格。 |
Feature Class; Feature Layer; Raster Dataset; Raster Layer; Mosaic Layer; Image Service; Table; Folder |
|
图像格式 |
指定将用于影像片输出的栅格格式。 PNG 和 JPEG 格式最多支持 3 个波段。
|
String |
|
分块大小 X (可选) |
影像片的大小,针对 x 维度。 |
Long |
|
分块大小 Y (可选) |
影像片的大小,针对 y 维度。 |
Long |
|
步幅 X (可选) |
在创建下一个影像片时 x 方向上移动的距离。 当步幅等于切片大小时,将不会发生重叠。 当步幅等于切片大小的一半时,将有 50% 的重叠。 |
Long |
|
步幅 Y (可选) |
在创建下一个影像片时 y 方向上移动的距离。 当步幅等于切片大小时,将不会发生重叠。 当步幅等于切片大小的一半时,将有 50% 的重叠。 |
Long |
|
输出无要素切片 (可选) |
指定是否将导出不捕获训练样本的影像片。 如果选中选项,不捕获标注数据的影像片也会被导出。 如果未选中选项,这些影像片将不会被导出。
|
Boolean |
|
元数据格式 (可选) |
指定将用于输出元数据标注的格式。 如果输入训练样本数据是诸如建筑物图层等的要素类图层或者标准分类训练样本文件,请使用 KITTI 标注或 PASCAL 可视化对象类选项(Python 中的 对于 KITTI 元数据格式,将创建 15 个列,但此工具中仅使用其中 5 个列。 第一个列是类值。 然后,跳过之后 3 个列。 5 至 8 列用于定义最小外接矩形,该矩形将由以下 4 个影像坐标位置构成:左、上、右和下像素。 最小外接矩形包含用于深度学习分类器中的训练片。 系统将不会使用其他列。
|
String |
|
起始索引 (可选) |
旧版本:此参数已弃用。 |
Long |
|
类值字段 (可选) |
包含类值的字段。 如果未指定任何字段,则系统将搜索 |
Field |
|
缓冲半径 (可选) |
每个训练样本周围的缓冲区半径,将用于描绘训练样本区域。 您可以借此从点创建圆形面训练样本。 系统将使用输入要素类或分类栅格或表参数值的空间参考的线性单位。 |
Double |
|
输入掩膜面 (可选) |
此面要素类用于描绘将创建影像片的区域。 系统仅会创建完全位于面内的影像片。 |
Feature Layer |
|
旋转角度 (可选) |
将用于生成影像片的旋转角度。 将首先在不进行旋转的情况下生成影像片。 随后系统将以指定的角度旋转该片,以创建其他影像片。 将对图像进行旋转,并创建影像片,直到对其进行完全旋转为止。 例如,如果指定旋转角度为 45 度,则该工具将创建 8 个影像片。 将在以下角度创建 8 个影像片:0、45、90、135、180、255、270 和 315 度。 默认旋转角度为 0,将创建一个默认影像片。 |
Double |
|
参考系统 (可选) |
指定用于解释输入影像的参考系类型。 指定的参考系必须与训练深度学习模型所使用的参考系相匹配。
|
String |
|
处理模式 (可选) |
指定处理镶嵌数据集或影像服务中的所有栅格项目的方式。 当输入栅格是镶嵌数据集或影像服务时,将应用此参数。
|
String |
|
将周围要素变黑 (可选) |
指定是否对每个影像切片中的每个对象或要素周围的像素进行掩膜。 仅当元数据格式参数设置为标注切片且已指定输入要素类或分类栅格时,此参数才适用。
|
Boolean |
|
裁剪模式 (可选) |
指定是否将裁剪导出的切片,从而使其大小均相同。 仅当元数据格式参数设置为标注切片或 Imagenet 且已指定输入要素类或分类栅格时,此参数才适用。
|
String |
|
附加输入栅格 (可选) |
将用于影像转换方法的附加输入影像源。 当元数据格式参数设置为分类切片、导出切片或 CycleGAN 时,此参数有效。 |
Raster Dataset; Raster Layer; Mosaic Layer; Image Service; Map Server; Map Server Layer; Internet Tiled Layer; Folder |
|
实例要素类 (可选) |
采集的训练样本数据,包含用于实例分割的类。 输入也可以是没有类值字段的点要素类,或不具有类信息的整型栅格。 仅当元数据格式参数设为全景分割时,此参数才有效。 |
Feature Class; Feature Layer; Raster Dataset; Raster Layer; Mosaic Layer; Image Service; Table; Folder |
|
实例类值字段 (可选) |
包含实例分割的类值的字段。 如果未指定任何字段,则该工具将使用值或类值字段(如果存在)。 如果要素不包含类字段,则工具将确定所有记录均属于一个类。 仅当元数据格式参数设为全景分割时,此参数才有效。 |
Field |
|
最小面重叠比 (可选) |
要包含在训练数据中的要素的最小重叠百分比。 如果重叠百分比小于指定的值,则将从训练片中排除该要素,并且不会将其添加到标注文件中。 百分比值以小数表示。 例如,要指定 20% 重叠,请使用值 0.2。 默认值为 0,这意味着将包含所有要素。 此参数可以改善工具的性能,也可以改善推断能力。 由于创建的训练片较少,因此速度得到了改进。 由于将对模型进行训练以仅检测大块对象,而忽略要素的小角落,因此推断得到了改进。 这意味着将检测到较少的误报,并且非最大抑制工具将移除较少的误报。 当输入要素类或分类栅格或表参数值为要素类时,此参数处于活动状态。 |
Double |
环境
像元大小, 当前工作空间, 范围, 并行处理因子, 临时工作空间
许可信息
- 基本: 需要 Image Analyst 或 Spatial Analyst
- 标准: 需要 Image Analyst 或 Spatial Analyst
- 高级: 需要 Image Analyst 或 Spatial Analyst