目标检测项目标注格式选型指南:VOC、COCO与YOLO深度对比
第一次接触目标检测项目时,面对VOC、COCO、YOLO这些专业术语,我完全摸不着头脑。直到在工业质检项目中因为选错标注格式,导致团队多花了三周时间重新标注数据,才真正明白格式选择的重要性。本文将结合实战经验,为你剖析三大主流格式的核心差异与选型策略。
1. 三大标注格式 技术 解析
1.1 VOC格式:经典XML结构VOC( Visual Object Classes)是最早广泛使用的标注格式,采用XML文件存储标注信息。其目录结构通常包含:
VOCdevkit/
├── Annotations/ # 存放XML标注文件
├── ImageSets/ # 数据集划分文件
│ └── Main/
│ ├── train.txt
│ └── val.txt
└── JPEGImages/ # 原始图像文件
典型XML标注示例:
<annotation>
<size>
<width>800</width>
<height>600</height>
</size>
<object>
<name>dog</name>
<bndbox>
<xmin>100</xmin>
<ymin>200</ymin>
<xmax>300</xmax>
<ymax>400</ymax>
</bndbox>
</object>
</annotation>
xml
优势场景:
传统机器学习项目兼容性要求高时 需要详细标注物体属性(如truncated、difficult等) 使用LabelImg等传统标注工具的工作流程 1.2 COCO格式:JSON 标准化 方案COCO(Common Objects in Context)采用统一的 JSON文件 存储所有标注信息,一个典型的COCO标注文件包含:
{ "images": [{ "id": 1, "file_name": "001.jpg", "width": 640, "height": 480 }], "annotations": [{ "id": 1, "image_id": 1, "category_id": 1, "bbox": [100, 200, 200, 200], "area": 40000 }], "categories": [{ "id": 1, "name": "person" }] }
json
<
于 2026-01-27 15:00:32 发布 · 305 阅读