TAO v5.5.0

数据分析

注意

数据分析目前仅设计用于使用 KITTI 或 COCO 格式的目标检测数据集。

数据分析服务分析目标检测标注文件和图像文件,计算洞察,并生成图表和摘要。此服务支持以下任务

  • analyze - 此任务分析输入文件并生成计算统计数据的图表。它还可以生成带有边界框的图像。

  • validate - 此任务通过计算无效坐标并建议是否需要修改数据来验证输入文件。

  • kpi_analyze - 此任务计算给定测试集的准确率和平均精度 (AP)。

这些任务可以使用命令行上的以下约定从 TAO Launcher 调用

复制
已复制!
            

tao dataset analytics <sub_task> <args_per_subtask>

其中 args_per_subtask 是给定子任务所需的命令行参数。以下各节详细解释了每个子任务。

数据分析需要一个图像目录和一个标注的 KITTI 文本文件目录或一个 COCO JSON 文件。

有关数据格式的更多信息,请参阅数据标注格式 KITTICOCO 部分。

这是一个用于分析 KITTI 输入数据的示例规范文件。

复制
已复制!
            

data: input_format: "KITTI" output_dir: /path/to/results_dir/ image_dir: /path/to/images_dir/ ann_path: /path/to/annotation_dir/ workers: 36 image: generate_image_with_bounding_box: False image_sample_size: 100 graph: generate_summary_and_graph: True height: 15 width: 15 show_all: False wandb: visualize: False project: "tao data analytics"

参数 数据类型 默认值 描述
data dict config 数据集的配置
workers int 用于数据加载的工作进程数
image dict config 图像生成的配置
graph dict config 生成的图表的配置
wandb dict config wandb 的配置

data

参数 数据类型 默认值 描述 支持的值
input_format string
输入标注文件的格式 KITTI, COCO
output_dir string
输出结果目录的路径
image_dir string
输入图像目录的路径
ann_path string
标注目录的路径

image

参数 数据类型 默认值 描述
sample_size int 100 要可视化的图像样本大小
generate_image_with_bounding_box bool False 一个标志,指定是否生成带有渲染边界框的图像

graph

参数 数据类型 默认值 描述
generate_summary_and_graph bool True 为计算的统计数据生成图表和摘要
height int 15 图表的高度(不适用于 wandb 可视化)
width int 15 图表的宽度(不适用于 wandb 可视化)
show_all bool False 一个标志,指定是将所有数据放在图表上,还是 (True) 仅可视化前 100 个候选对象 (False)

wandb

参数 数据类型 默认值 描述
project string
实验数据上传到的项目名称
entity string
项目创建所在的实体(组)的名称。
name string
实验的名称
notes string
实验的简短描述
tags list
可用于标记实验的字符串列表
visualize bool False 一个标志,指定是否启用 wandb 上的可视化

这是一个用于验证 COCO 输入数据的示例规范文件。

复制
已复制!
            

apply_correction: True data: output_dir: /path/to/result_dir/ input_format: "COCO" image_dir: /path/to/images_dir/ ann_path: /path/to/annotation_dir/ workers: 36

参数 数据类型 默认值 描述
data dict config 数据集的配置
workers int 用于数据加载的工作进程数
apply_correction bool False 一个标志,指定是否应用数据校正

data

参数 数据类型 默认值 描述 支持的值
input_format string
输入标注文件的格式 KITTI, COCO
output_dir string
输出结果目录的路径
image_dir string
输入图像目录的路径
ann_path string
标注目录的路径

使用以下命令分析数据

复制
已复制!
            

tao dataset analytics analyze -e <experiment_spec>

必需参数

  • -e, --experiment_spec_file: 用于设置 analyze 实验的实验规范文件

这是一个使用数据 analyze 命令的示例

复制
已复制!
            

tao dataset analytics analyze -e $DEFAULT_SPEC

结果

结果目录或 wandb 包含生成的带有边界框的图像和以下属性的图表 PDF。

  • 边界框区域

  • 对象计数

  • 遮挡(仅适用于 kitti 输入)

  • 截断(仅适用于 kitti 输入)

  • 图像大小

  • 无效的边界框坐标(包含有关反转和超出范围坐标的信息)

使用以下命令验证数据

复制
已复制!
            

tao dataset analytics validate -e <experiment_spec>

必需参数

  • -e, --experiment_spec_file: 用于设置 validate 实验的实验规范文件

这是一个使用数据 validate 命令的示例

复制
已复制!
            

tao dataset analytics validate -e $DEFAULT_SPEC

结果

控制台输出包含验证摘要。如果指定了 apply_correction=True,则结果目录包含已校正的输入文件。以下是边界框坐标的校正条件。

  • 将负坐标设置为 0。

  • 交换反转的坐标。

  • 如果 xmax 大于 image_width,则设置 xmax = image_width

  • 如果 ymax 大于 image_height,则设置 ymax = image_height

这是一个用于使用 KITTI 数据计算 KPI 准确率和平均精度 (AP) 的示例规范文件。

复制
已复制!
            

data: input_format: KITTI output_dir: /path/to/result_dir/ kpi_sources: - image_dir: /path/to/raw_images_dir/ ground_truth_ann_path: /path/to/gt_annotation_dir/ inference_ann_path: /path/to/infer_annotation_dir/ mapping: /path/to/mapping_json/ visualize: platform: wandb kpi: iou_threshold: 0.5 filter: False num_recall_points: 11 conf_threshold: 0.3 ignore_sqwidth: 40 wandb: visualize: True project: kpi_calculation

参数 数据类型 默认值 描述
data dict config 数据集的配置
visualize dict config 可视化的配置
kpi dict config KPI 计算的配置
wandb dict config WandB 的配置

data

参数 数据类型 默认值 描述 支持的值
input_format string
输入标注文件的格式 KITTI, COCO
output_dir string
输出结果目录的路径
image_dir string
输入图像目录的路径
ann_path string
标注目录的路径
mapping string
用于类映射的 JSON 文件的路径

kpi_sources

dict

-

KPI 序列的字典列表。所需的值是
:code:image_dir, :code:ground_truth_ann_path, :code:inference_ann_path

visualize

参数 数据类型 默认值 描述 支持的值
platform string local 可视化的位置 local, wandb
tag string
要添加到最终指标表的标签

kpi

参数 数据类型 默认值 描述 支持的值
iou_threshold float 0.5 用于匹配边界框的 IoU 阈值 >=0, <=1
filter bool False 一个标志,指定是否过滤小于 ignore_sqwidth 的边界框

ignore_sqwidth

int

0

面积小于 ignore_sqwidth x ignore_sqwidth 的边界框将被
过滤(如果 filter 设置为 True)。

>=0

num_recall_points int 11 用于绘制精确率-召回率曲线的召回点数 >0
conf_threshold float 0.5 用于过滤预测的置信度阈值 >=0, <=1

wandb

参数 数据类型 默认值 描述
project string
实验数据上传到的项目名称
entity string
项目创建所在的实体(组)的名称
name string
实验的名称
notes string
实验的简短描述
tags list
可用于标记实验的字符串列表
visualize bool False 一个标志,指定是否启用 WandB 上的可视化

使用以下命令计算数据上的 KPI

复制
已复制!
            

tao dataset analytics kpi_analyze -e <experiment_spec>

必需参数

  • -e, --experiment_spec_file: 用于配置 kpi_analyze 实验的实验规范文件

这是一个使用数据 kpi_analyze 命令的示例

复制
已复制!
            

tao dataset analytics kpi_analyze -e $DEFAULT_SPEC

结果

精确率-召回率曲线将作为图像保存在输出结果目录 (output_dir) 中或显示在 WandB 中。

上一页 自动标注
下一页 发行说明
© 版权所有 2024, NVIDIA。 上次更新时间:2024 年 10 月 15 日。