CVAT 集成#
CVAT 直接导入功能即将登陆 Ultralytics Platform,届时 CVAT 图像目标检测或分割导出文件无需选择格式即可原样上传。
在此之前,你现在就可以通过一个简单流程完成导入,因为 CVAT 已支持导出 Platform 可读取的 Ultralytics YOLO 格式。
现在从 CVAT 导入#
- 从 CVAT 导出。打开任务,选择 操作 > 导出任务数据集(如果从作业进入,则选择 菜单 > 导出作业数据集)。
- 选择格式。选择与你的任务相匹配的 Ultralytics YOLO 条目 — CVAT 会分别列出
Ultralytics YOLO Detection 1.0、Ultralytics YOLO Detection Track 1.0、Ultralytics YOLO Segmentation 1.0、Ultralytics YOLO Oriented Bounding Boxes 1.0、Ultralytics YOLO Pose 1.0和Ultralytics YOLO Classification 1.0。 - 启用“保存图像”,为
.zip命名,然后点击 确定。“保存图像”是 CVAT Online 的付费功能;如果不启用,压缩包中只会包含标签,因此请在上传前将图像添加到一个与labels/目录结构相同的images/文件夹中。 - 下载压缩包。导出任务会在后台运行 — 完成后,请前往 CVAT 的请求页面获取压缩包。
- 上传到 Platform。从 ZIP 创建新数据集。
- 开始训练。无需离开工作区,即可编辑标注、训练并部署。

使用 CLI 导出#
CVAT 的 CLI 可以在终端中导出相同的压缩包:
pip install cvat-cli
cvat-cli project export-dataset --format "Ultralytics YOLO Detection 1.0" --with-images yes 104 dataset.zip将 104 替换为你的项目 ID,并将格式字符串替换为与你的任务相匹配的变体。--with-images yes 等同于 CLI 中的 保存图像开关;如果不启用,压缩包中只会包含标签,因此请在上传前添加一个与 labels/ 目录结构相同的 images/ 文件夹。
CVAT 的 Ultralytics YOLO 导出会生成 Platform 所需的目录结构,因此无需转换:
archive.zip/
├── data.yaml # class names Platform reads
├── images/train/
└── labels/train/各类导出保留的内容#
每种 Ultralytics YOLO 格式只会写入 CVAT 任务所支持的形状,因此请选择与你的标注方式相匹配的格式:
- 目标检测保留矩形,但会跳过旋转矩形 — 请用 有向边界框格式导出这类标注
- 目标检测跟踪保留矩形和跟踪 ID;Platform 会将其导入为边界框,并忽略跟踪 ID
- 分割保留多边形和掩码,将掩码转换为多边形,并舍弃矩形
- 姿态仅保留骨架;不会导出独立点
- 分类保留标签,没有标签的图像会归入
no_label类别
这些格式都不会写入折线。
选择导出格式#
CVAT 提供多种导出格式。与此处相关的格式如下:
| CVAT 格式 | 是否可用 | 备注 |
|---|---|---|
| Ultralytics YOLO | 最佳 | 包含 data.yaml,因此标签名称会完整保留 |
| COCO 1.0 | 是 | 也可读取;多边形和边界框混合的标注会作为分割导入,而仅含边界框的标注会被舍弃 |
| COCO Keypoints 1.0 | 是 | 会作为姿态数据集导入,关键点数量取自最常见的形状 |
| YOLO 1.1 | 部分支持 | 边界框可以导入,但不会读取其 obj.names 文件 — 类别会以 class0、class1、……的形式导入 |
| CVAT for images | 否 | 目前不会读取 XML 标注;CVAT for video 也一样 |
每条 COCO 标注都必须包含 bbox 才能被读取,众数区域("iscrowd": 1)会被跳过。CVAT 会将掩码作为众数区域写入 COCO,因此请改用 Ultralytics YOLO Segmentation 导出掩码。类别名称会成为类别名称,类别 ID 会在压缩包中的所有 JSON 文件之间统一,因此按数据集划分分别导出时也能保持类别 ID 一致。存储为多个多边形的对象会合并为一个多边形。
Platform 不会读取 CVAT for images、CVAT for video 或 Pascal VOC XML 标签;这些导出会静默失败,而不是明确报错:图像会导入,但标注不会导入,并且导出五张或更多图像时,还会将图像文件夹名称添加为类别。请改用 Ultralytics YOLO 或 COCO。
集成将带来的功能#
集成将省去选择正确导出格式这一步。集成上线后,你可以导出任何 CVAT 图像目标检测或分割格式并上传,Platform 会自动将标注映射到匹配的 YOLO 任务。
- 无需选择格式 — CVAT 的图像目标检测和分割导出会映射为 YOLO 数据集,并保留标签名称
- 统一工作区 — 标注、训练和部署不再需要跨多个工具操作或使用转换脚本
- 继续标注 — 导入的数据集可在 Platform 的标注编辑器中打开,包括由 SAM 驱动的智能标注功能
- 立即训练 — 数据集处理完成后即可用于云端训练
常见问题#
选择与你的任务匹配的 Ultralytics YOLO 条目,并开启 Save images。该格式会附带
data.yaml,因此类别名称会完整保留。COCO 1.0 和 COCO Keypoints 1.0 也可以导入,而 YOLO 1.1 会丢失类别名称,CVAT XML 和 Pascal VOC 导入后则没有标注。Save images 开关处于关闭状态,或者 CLI 导出时没有使用
--with-images yes。这样生成的压缩包就只包含标签。如果你使用的是不支持 Save images 的 CVAT Online 计划,请重新导出并包含图像;或者在 ZIP 中添加一个images/文件夹,其目录结构与labels/一致。支持。使用
Ultralytics YOLO Segmentation 1.0或Ultralytics YOLO Pose 1.0,也可以使用 COCO 格式。掩码需要通过 Ultralytics YOLO Segmentation 导出,该格式会将掩码转换为多边形;姿态则需要 CVAT 骨架。混合导出多边形和框的 COCO 文件会作为分割数据集导入,并丢弃仅包含框的标注。你可以按原样上传任何 CVAT 图像检测或分割导出文件,Platform 会自行将其映射到对应的 YOLO 任务。你现在使用 Ultralytics YOLO 导出格式导入的数据集仍可照常使用。