COCO(Common Objects in Context)是一个广泛使用的计算机视觉数据集和基准,主要用于以下任务:
- 目标检测(Object Detection)
- 实例分割(Instance Segmentation)
- 此外还包括关键点检测、全景分割、图像描述等任务。
下面分别解释 COCO 目标检测 与 COCO 实例分割 的含义:
1. COCO 目标检测(Object Detection)
目标:在图像中定位并识别出属于特定类别的物体。
- 输入:一张图像。
- 输出:
- 每个检测到的物体的类别(如“人”、“汽车”、“狗”等,共80个类别);
- 一个边界框(Bounding Box),用
(x, y, width, height)表示,框出物体的位置; - 一个置信度分数(表示模型对该检测结果的信心)。
示例:一张街景图中,模型检测出3辆汽车、2个人,并为每个物体画出矩形框。
2. COCO 实例分割(Instance Segmentation)
目标:不仅要知道每个物体在哪里(像目标检测那样),还要精确地分割出每个物体的像素级轮廓。
- 输入:一张图像。
- 输出:
- 每个物体的类别;
- 一个像素级掩码(Mask),精确标出该物体所占的像素区域;
- 通常也包含对应的边界框(因为掩码可以生成边界框)。
与语义分割的区别:
- 语义分割:只区分类别,不区分同一类别的不同个体(例如所有“人”都标为同一颜色)。
- 实例分割:区分每一个独立的物体实例(例如两个人会被分成两个不同的掩码)。
示例:图像中有两只猫挨在一起,实例分割会为每只猫生成独立的、精确到像素的轮廓。
COCO 数据集特点
- 包含超过 33 万张图像;
- 标注了 超过 200 万个实例;
- 涵盖 80 个常见物体类别;
- 注重物体在真实场景中的上下文(in context),即物体出现在自然、复杂背景中,而非孤立存在;
- 提供高质量的边界框 + 像素级掩码标注。
常用评价指标(COCO 官方)
- mAP(mean Average Precision):
- 对 IoU(交并比)从 0.5 到 0.95(步长 0.05)取平均;
- 同时考虑不同尺度(小、中、大物体)的表现;
- 是 COCO 榜单上最核心的评估标准。
典型模型(在 COCO 上训练/评测)
- Faster R-CNN
- Mask R-CNN(同时做目标检测 + 实例分割)
- YOLO 系列(如 YOLOv5, YOLOv8)
- DETR
- Cascade R-CNN
- SOLO(专用于实例分割)
总结
| 任务 | 输出内容 | 关键区别 |
|---|---|---|
| 目标检测 | 类别 + 边界框 | 定位粗略(矩形框) |
| 实例分割 | 类别 + 像素级掩码(+ 边界框) | 定位精细(轮廓级别),区分同一类别的不同实例 |
COCO 是衡量这些任务性能的黄金标准之一,广泛用于学术研究和工业应用。