Skip to main content

训练点云对象检测模型 (3D Analyst 工具)

汇总

使用深度学习训练点云的对象检测模型。

用法

  • 该工具需要安装深度学习基础内容,该内容提供多个神经网络解决方案,包括用于分类点云的神经架构。

    要设置计算机以在 ArcGIS Pro 中使用深度学习框架,请参阅 安装 ArcGIS 的深度学习框架

  • 如果您要在离线环境中训练模型,请参阅 离线环境所需的其他安装 以获取详细信息。

  • 在训练过程中使用预训练模型很有帮助,特别是当您的数据、时间或计算资源有限时。 预训练模型减少了大量训练的需要,并为快速创建有用的模型提供了可靠的起点。 要使用预训练模型,新的训练数据必须与预训练模型兼容。 这意味着新的训练数据必须与用于创建预训练模型的训练数据具有相同的属性和对象代码。 如果训练数据中的目标代码与预训练模型中的代码不匹配,则必须相应地重新映射训练数据的目标代码。

  • 点云对象检测模型只能使用支持 CUDA 的 NVIDIA 显卡进行训练。 当 处理器类型 环境未设置为具有支持 CUDA 的显卡的计算机时,将使用具有最优化硬件的显卡进行训练。 否则,可以在 GPU ID 环境设置中分配特定的显卡。

  • 在训练过程中将报告以下指标:

    • Epoch—与结果相关联的轮数编号

    • Training Loss—针对训练数据求平均的熵损失函数的结果

    • Validation Loss—熵损失函数的结果,该结果通过将在轮数中训练的模型应用于验证数据来确定

    • Average Precision—验证数据中由该轮次训练的模型正确分类的点(正确)与验证数据中所有点的比率

    具有低训练损失和高验证损失的模型被认为过度拟合训练数据,它从训练数据的伪影中检测模式,从而确定导致模型无法良好运行以验证数据的模式。 达到高训练损失和高验证损失的模型被认为对训练数据拟合不足,其中没有足够有效地学习模式来生成可用的模型。

    了解有关评估点云训练结果的详细信息

  • 创建一个文件夹来存储每轮结束时创建的检查点模型。 检查点文件夹名称以与模型相同的名称开头,以 .checkpoints 为后缀。 它存储在输出模型位置参数值中。

参数

标注 说明 数据类型

输入训练数据

将用于训练模型的点云对象检测训练数据(*.pcotd 文件)。

File

输出模型位置

将存储包含深度学习模型的新目录的现有文件夹。

Folder

输出模型名称

输出 Esri 模型定义文件的名称 (*.emd)、深度学习包 (*.dlpk) 以及将创建的用于存储它们的目录。

String

预训练模型定义文件

(可选)

将优化的预训练对象检测模型。 提供预训练的模型时,输入训练数据的属性和最大点数必须与生成此模型的训练数据所使用的相同。

File

架构

(可选)

指定将用于训练模型的架构。

  • Sparsely Embedded Convolutional DetectionThe Sparsely Embedded Convolutional Detection (SECOND) architecture will be used. This is the default.

  • Point Transfomer V3The Point Transformer V3 architecture will be used.

String

属性选择内容

(可选)

指定训练模型时将与分类代码配合使用的点属性。 只有点云训练数据中存在的属性才可用。 默认情况下不包括其他属性。

  • IntensityThe measure of the magnitude of the lidar pulse return will be used.

  • Return NumberThe ordinal position of the point obtained from a given lidar pulse will be used.

  • Number of ReturnsThe total number of lidar returns that were identified as points from the pulse associated with a given point will be used.

  • Red BandThe red band's value from a point cloud with color information will be used.

  • Green BandThe green band's value from a point cloud with color information will be used.

  • Blue BandThe blue band's value from a point cloud with color information will be used.

  • Near Infrared BandThe near infrared band's value from a point cloud with near infrared information will be used.

  • Relative HeightThe relative height of each point in relation to a reference surface, which would typically be a bare earth DEM, will be used.

String

每块的最小点数

(可选)

如要在训练模型时使用,给定块中必须存在的最小点数。 默认值为 0。

Long

重新映射对象代码

(可选)

定义在训练深度学习模型之前如何将目标代码重新映射到新值。

值表列:

  • Current CodeThe object code value in the training data.

  • Remapped CodeThe object code value that the existing code will be changed to.

Value Table

感兴趣的对象代码

(可选)

将用于过滤训练数据中的对象的对象代码。 当提供对象代码时,未包含的对象将被忽略。

Long

仅训练包含对象的块

(可选)

指定是否仅使用包含对象的块或所有块(包括不包含对象的块)来训练模型。

  • 选中The model will be trained using only blocks that contain objects. The data used for validation will not be modified.

  • 未选中The model will be trained using all blocks, including those that do not contain objects. This is the default.

Boolean

对象描述

(可选)

训练数据中每个目标代码的描述。

值表列:

  • Object CodeThe object code value that was learned by the model.

  • DescriptionThe object described by the class code.

Value Table

模型选择条件

(可选)

指定将用于确定最终模型的统计基础。

  • Validation LossThe model that achieves the lowest result when the entropy loss function is applied to the validation data will be used.

  • Average PrecisionThe model that achieves the highest ratio of points in the validation data that were correctly classified by the model trained in the epoch (true positives) over all the points in the validation data will be used. This is the default.

String

最大轮次数

(可选)

每个数据块将通过神经网络向前和向后传递的次数。 默认值为 25。

Long

学习率策略

(可选)

指定在训练期间如何修改学习率。

  • One Cycle Learning RateThe learning rate will be cycled throughout each epoch using Fast.AI's implementation of the 1cycle technique for training neural networks to help improve the training of a convolutional neural network. This is the default.

  • Fixed Learning RateThe same learning rate will be used throughout the training process.

String

学习率

(可选)

用新信息覆盖现有信息的比率。 如果未提供任何值,则系统将在训练过程中从学习曲线中提取最佳学习率。 这是默认设置。

Double

批量大小

(可选)

在任何给定时间将被处理的训练数据块的数量。 默认值为 2。

Long

当模型不再改进时停止训练

(可选)

指定模型训练是否在模型选择条件参数值中指定的指标在连续 5 轮未记录任何改进时停止。

  • 选中The model training will stop when the model is no longer improving.

  • 未选中The model training will continue until the maximum number of epochs has been reached. This is the default.

Boolean

架构设置

(可选)

可以修改架构设置以改善训练结果。

值表列:

  • OptionThe architecture-specific options that can be modified.

    • Voxel WidthThe x- and y-dimensions of the voxel used during training. The corresponding value is in linear units of meters and can be expressed as a double value.

    • Voxel HeightThe z-dimension of the voxel used during training. The corresponding value is in linear units of meters and can be expressed as a double value.

    • Voxel Point LimitThe number of points in a given voxel. The corresponding value should be a positive integer. When no value is provided, this limit is calculated during the training process based on the block size and block point limit of the training data.

    • Maximum Training VoxelsThe maximum number of voxels that can be used in the training data. The corresponding value should be a positive integer. When no value is provided, this limit is calculated during training.

    • Maximum Validation VoxelsThe maximum number of voxels that can be used in the validation data. The corresponding value should be a positive integer. When no value is provided, this limit is calculated during training.

  • ValueThe value that corresponds with the option being modified.

Value Table

派生输出

标注 说明 数据类型

输出模型

生成的输出对象检测模型。

File

输出轮次统计数据

输出 ASCII 表,包含在训练过程中获得的轮数统计信息。

Text File

环境

GPU ID, 处理器类型

许可信息

  • 基本: 需要 3D Analyst
  • 标准: 需要 3D Analyst
  • 高级: 需要 3D Analyst