SuperAPI AI 工具集

tao-generate-referring-expressions

设计与创作

查看项目

更新于 10-16 08:11

技能介绍

用途:把(图像 + KITTI 格式边界框标签)转换为统一的 annotations.jsonl,生成有依据的 referring expressions。VLM 充当“teacher”标注器。

主要能力:四步流水线——Step 0 region_expr 为每个 KITTI bbox 输出简短判别短语(bbox_2d、type、color、description);Step 1 image_caption 输出整体场景描述;Step 2 grounding_expr 将 Step 0 对象分组成短语并返回每组 bbox 列表,可用 Step 1 描述作上下文;Step 3 double_check 可选,复查每个 bbox,删除错误匹配并收紧略有偏差的框。Step 0 与 1 在线程池中并行。每步写 step_<N>_*/annotations.jsonl,重跑默认跳过已处理图像,除非 workflow.force_reprocess: true。

使用方式:在 TAO Toolkit 容器(nvcr.io/nvidia/tao/tao-toolkit:6.26.3-pyt)内通过 auto_label CLI 运行。配置 data.image_dir(.jpg/.jpeg/.png)与 data.kitti_label_dir(每图一个 .txt,KITTI 格式,<type> <truncated> <occluded> <alpha> <bbox_left> <bbox_top> <bbox_right> <bbox_bottom>,少于 8 字段的行会被静默跳过);已有统一 annotations.jsonl 时设 data.input_annotations_jsonl 续跑。VLM 端点可选 Gemini(vlm.backend: "gemini",需 GOOGLE_API_KEY)或 OpenAI 兼容端点(vlm.backend: "openai",含 NIM、TAO 推理微服务、vLLM、自定义)。命令示例: auto_label generate -e /path/to/spec.yaml
results_dir=/results
image_referring_expression.data.image_dir=/data/images
image_referring_expression.data.kitti_label_dir=/data/labels
image_referring_expression.vlm.gemini.api_key=$GOOGLE_API_KEY 生成默认 spec:auto_label default_specs results_dir=/results module_name=auto_label,再设 autolabel_type: "image_referring_expression"。所有字段支持 Hydra 点号覆盖。workflow.steps 可选完整流程 ["0","1","2","3"]、无描述 ["0","2","3"]、无复核 ["0","1","2"] 或子集;workflow.output_format 为 jsonl、legacy 或 both(both 为下游工具默认)。

输出:results_dir/ 下的 seed_annotations.jsonl、各步 annotations.jsonl,以及最后完成步骤的副本 annotations.jsonl;legacy/both 时另写 .txt.stepN 文件。

适用场景与限制:适合用图像加 KITTI 标注自动生成指代表达与 grounding 数据。需至少一个支持图像输入的 VLM 端点;种子阶段需 PIL/Pillow(容器内已有)。建议先在 5-10 张图上跑四步并检查各步输出,质量不足时换更强模型或调高 media_resolution / max_output_tokens 后以 force_reprocess=true 重跑。其余收费、价格、平台等信息暂未提供。