数据集与标注工作流

核心06-实践工程预计 25 分钟数据集标注COCO 格式主动学习

前置知识点

kp-016 图像分类与 ImageNet 里程碑

一句话定义

视觉模型的上限由数据决定:数据集工程覆盖「采集分布设计 → 标注规范 → 质量抽检 → 格式转换」的全流程,主流标注形态是分类标签、边界框、多边形与掩码,交换格式以 COCO JSON 与 VOC XML 为事实标准。

为什么重要

「垃圾进、垃圾出」在视觉领域格外真实:标注不一致带来的噪声上限会直接封死模型精度,训练技巧再强也救不回;数据环节通常占项目总工时的一半以上,是工程团队最需要流程化能力的环节。

直观类比

数据集像教材、标注像课本上的重点划线:划线标准含糊(「重要的都划」),两个老师划出的重点互不相同,学生(模型)自然学出四不像;好的标注规范像一份精确到「哪种笔、划到哪个字」的考试大纲。

前置知识

kp-016(训练数据如何被消费)。

核心概念

原理与机制

数据工程的因果链:部署形态决定采集分布(摄像头高度、镜头、光照),分布外的样本进不了模型能力;标注规范把「主观判断」变成「可执行规则」,边界案例(截断、遮挡、密集重叠)必须有明文与示例;质量体系靠「抽检 + 一致性双标」闭环——规范改进先于返工。格式层面要理解三种主流格式的字段映射(bbox 归一化与否、坐标系原点、分割的 RLE 编码),转换脚本必须单元测试:坐标错一位、宽高互换是最常见且最难察觉的事故。预算分配上,主动学习与辅助标注把「每框成本」压低一个量级,但两者都依赖一个可用的初始模型,因此真实流程常是「小规模种子集 → 首版模型 → 辅助标注扩量」的螺旋。

公式与模型

COCO 注释条目的关键字段(示意):

json
{ "image_id": 1, "category_id": 3,
  "bbox": [x, y, width, height],
  "segmentation": [[x1, y1, x2, y2, …]],
  "iscrowd": 0 }

YOLO txt 行格式:class cx cy w h(全部除以图像宽高归一化到 0–1)。双人一致性可用 Cohen's κ 概念:κ = (p_o − p_e) / (1 − p_e),p_o 为观测一致率,p_e 为随机一致率。

图示

采集设计 标注规范 标注+双标 质检与转换 训练与评测 模型挑难例 → 回流标注(主动学习闭环)

实例与案例

零售货架检测:先按「每类 SKU ≥ 800 实例、覆盖 5 种光照 × 3 种拍摄高度」设计采集清单,规范明确「相邻同 SKU 边界框允许重叠、截断超过一半仍标注并记 truncated」,双标一致率达标后再扩量。长尾类目:用 CLIP/SAM 辅助预标注,人工只做确认,单位成本下降数倍。数据合规则性:采集自公开网络的人脸数据集需留存授权链路(见 kp-031),工程与合规在这里交汇。

# VOC XML bbox → YOLO txt(关键换算:中心点 + 归一化)
def voc_to_yolo_line(box, w, h, cls):
    x1, y1, x2, y2 = box
    cx, cy = (x1 + x2) / 2 / w, (y1 + y2) / 2 / h
    bw, bh = (x2 - x1) / w, (y2 - y1) / h
    return f"{cls} {cx:.6f} {cy:.6f} {bw:.6f} {bh:.6f}"

常见误区

与其他知识点的关系

本站产出直接供给 kp-026 训练;类不平衡与 iscrowd 设计影响 kp-017 评测口径;SAM 辅助标注依赖 kp-021 基础模型;数据合规与 kp-031 伦理条款衔接。

自测题

  1. 标注规范为什么要配示例图库?

答案要点:文字规则对边界情形无法穷尽,示例图把「截断到多少算截断」这类判断可视化,是拉齐多人一致性的最快手段。

  1. COCO 与 YOLO 的框坐标差异是什么?

答案要点:COCO 是像素单位左上角 x, y 与宽高;YOLO 是归一化中心点 cx, cy 与宽高,两者换算必须同时改基准点与归一化。

  1. 主动学习省钱的原理是什么?

答案要点:模型对「不确定且多样」的样本学习增益最大,优先标注这些样本可用更少标注达到相同精度。

延伸阅读

相关知识点

kp-026 训练调优:增强、迁移与评估kp-017 目标检测:IoU、mAP 与两阶段流程