
CVAT 中 Ultralytics YOLO Classification 格式图像分类数据集的导出与导入详解【免费下载链接】cvatComputer Vision Annotation Tool (CVAT) is a leading platform for building high-quality visual datasets for vision AI. It offers open-source, cloud, and enterprise products, as well as labeling services, for image, video, and 3D annotation with AI-assisted labeling, quality assurance, team collaboration, analytics, and developer APIs.项目地址: https://gitcode.com/GitHub_Trending/cvat/cvatCVAT 内置的 Ultralytics YOLO Classification 1.0 格式面向图像分类任务支持将带标签Tags的图片标注数据集导出为可直接喂给 YOLOv8 分类训练流程的 ZIP 归档也支持将此类归档重新导入回 CVAT。读完本文你将掌握该格式的适用范围与限制、导出产物的目录结构与labels.json扩展文件的用途并能从 格式实现源码 与测试用例理解导出/导入背后的完整调用链。格式适用性与能力边界Ultralytics YOLO Classification 是 CVAT 官方支持的导出格式之一对应任务类型为Classification分类目标模型为YOLOv8产出文件为.jpg图片归档内按类别组织。这是 CVAT 各 YOLO 系列格式中唯一面向分类任务的变体与检测、分割、姿态估计等格式互不重叠。该格式的能力边界在官方文档中明确列出导出图片时的约束如下能力项支持情况支持的标注类型仅 Tags图像级标签属性Attributes不支持轨迹Tracks不支持这意味着如果你的任务里混入了形状类标注矩形、多边形、椭圆等或依赖属性值的分类语义该格式并不适用——应改用支持更完整标注集的格式例如支持全部属性的 COCO 或 Datumaro 格式可参考 格式总览。YOLO 分类格式只消费图像级标签将其一对一映射为训练集的类别目录。导出产物的目录结构选择该格式导出后下载的文件是一个.zip归档其目录结构如下与官方文档完全一致archive.zip/ ├── train │ ├── labels.json # CVAT extension. Contains original ids and labels │ │ # is not needed when using dataset with YOLOv8 framework │ │ # but is useful when importing it back to CVAT │ ├── label_0 │ │ ├── image_name_0.jpg │ │ ├── image_name_1.jpg │ │ ├── image_name_2.jpg │ │ ├── ... │ ├── label_1 │ │ ├── image_name_0.jpg │ │ ├── image_name_1.jpg │ │ ├── image_name_2.jpg │ │ ├── ... ├── ...结构要点按类别分目录train/label_0、train/label_1等子目录分别对应 CVAT 中的一个类别。YOLOv8 分类训练器正是依靠类别目录名隐式定义类别CVAT 导出的每个目录即是一个类别样本集。图片直接落盘每张被标注为某类别的图片以原文件名.jpg放在对应类别目录下无需逐图生成 txt 标注文件。labels.json是 CVAT 的扩展文件它保存了原始类别 id 与标签名的映射。用 YOLOv8 训练时可以直接忽略它但在把数据集重新导入 CVAT 时非常有用因为它保留了原始标签语义有助于恢复类别与标签的对应关系。源码实现导出与导入如何落地上述格式在 CVAT 后端由 yolo.py 统一实现分类格式的检测、分割、姿态、OBB 等变体都集中在这一文件中。导出调用链分类格式的导出入口是一个装饰器注册函数yolo.py#L130-L132exporter(nameUltralytics YOLO Classification, extZIP, version1.0) def _export_yolo_ultralytics_classification(*args, **kwargs): _export_common(*args, format_nameyolo_ultralytics_classification, **kwargs)可以看到三个关键信息注册名为Ultralytics YOLO Classification版本1.0扩展名ZIP——这与 API 和前端下拉框中显示的 Ultralytics YOLO Classification 1.0 一致真正的工作交给通用的_export_commonyolo.py#L30-L43通过GetCVATDataExtractor把 CVAT 任务/项目数据转换为 Datumaro 的StreamDataset调用dataset.export(temp_dir, yolo_ultralytics_classification, save_mediasave_images)——即archive.zip中每类一个目录 labels.json的布局是由 Datumaro 的yolo_ultralytics_classification导出器生成的CVAT 层负责提供数据与压缩最后用make_zip_archive(temp_dir, dst_file)把临时目录打包成最终 ZIP。save_images参数控制是否把媒体文件一并写入归档对应前端Save images选项。导入调用链导入同样在 yolo.py#L171-L173 注册importer(nameUltralytics YOLO Classification, extZIP, version1.0) def _import_yolo_ultralytics_classification(*args, **kwargs): _import_common(*args, format_nameyolo_ultralytics_classification, **kwargs)通用导入逻辑_import_commonyolo.py#L51-L91完成四步shutil.unpack_archive解压上传的 ZIPdetect_dataset校验归档是否符合该格式布局防止导入错误结构通过StreamDataset.import_from(temp_dir, format_name, envdm_env, image_infoimage_info)用 Datumaro 解析器读取数据集image_info提供已知图片的宽高用于归一化坐标还原import_dm_annotations把解析出的标注写回 CVAT 的任务/项目。格式注册机制所有格式的注册中心在 registry.py。exporter与importer装饰器registry.py#L81-L123以DISPLAY_NAME即名称 版本号为键写入EXPORT_FORMATS/IMPORT_FORMATS全局字典因此 API 返回的可用格式列表与代码中的注册名一一对应断言机制还保证了同名格式不会被重复注册。文件底部的 import 列表registry.py#L134-L156会导入包括yolo在内的所有格式模块触发装饰器的注册副作用。测试用例提供的行为佐证CVAT 的格式测试套件对该格式做了专门覆盖可作为行为验证依据test_formats.py#L365-L419(Ultralytics YOLO Classification 1.0, yolo_ultralytics_classification),test_empty_images_are_exported用例明确将(Ultralytics YOLO Classification 1.0, yolo_ultralytics_classification)列入支持空标注图片导出的格式名单并验证对无标注任务导出后用 Datumaro 的yolo_ultralytics_classification解析器重新加载样本数与任务帧数一致。test_exportstest_formats.py#L345-L363遍历get_export_formats()中全部已启用格式含本格式对save_images取True/False两种取值分别验证导出文件非空。从测试结构可以推断只要格式在EXPORT_FORMATS中注册且ENABLED为真就会进入这套自动化回归这为格式名称必须与注册名完全一致提供了工程上的保证。使用要点小结何时选择本格式任务是纯图像分类、目标框架是 YOLOv8 分类训练且不需要属性、轨迹时。导出在 CVAT 的 Export 界面选择Ultralytics YOLO Classification 1.0可选 Save images 控制归档中是否包含图片本体产物为 ZIP类别按train/label_*目录组织labels.json为 CVAT 扩展训练时可忽略。导入将符合上述布局的 ZIP 上传导入CVAT 会执行结构校验后再解析原始标签语义可借助labels.json保留。不适用场景含形状/轨迹标注、需要保留属性值的任务请改用支持相应标注类型的格式见 Dataset formats 总览。【免费下载链接】cvatComputer Vision Annotation Tool (CVAT) is a leading platform for building high-quality visual datasets for vision AI. It offers open-source, cloud, and enterprise products, as well as labeling services, for image, video, and 3D annotation with AI-assisted labeling, quality assurance, team collaboration, analytics, and developer APIs.项目地址: https://gitcode.com/GitHub_Trending/cvat/cvat创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考