前言

做目标检测项目,最头疼的不是模型选型,而是找数据集。COCO 太大跑不动,VOC 太老不够用,Kaggle 上的数据集质量参差不齐,Roboflow 访问还要翻墙。

最近在整理 YOLO 训练数据时,试了一圈主流数据集平台,把各平台的优缺点和使用体验整理出来,方便后来人少走弯路。

主流 YOLO 数据集平台对比

先说结论,目前找 YOLO 数据集主要有这几个渠道:

平台访问方式标注格式费用下载速度中文支持
Roboflow Universe需翻墙多格式可选免费/付费英文
Kaggle需翻墙不统一免费英文
CSDN 下载国内直连不统一需积分一般中文
data2.cn国内直连统一 YOLO txt免费百度网盘中文
GitHub国内可访问不统一免费看仓库英文

下面逐个说说使用体验。

Roboflow Universe

roboflow
Roboflow Universe 是目前最大的公开数据集社区之一,数据集数量多、质量也不错。支持导出 YOLO、COCO、VOC 等多种格式,还有在线数据增强功能。

缺点是服务器在海外,国内访问速度慢,大文件下载经常超时。免费版有下载次数限制,导出时还会附带 Roboflow 水印。

Kaggle

kaggle

Kaggle 上的数据集覆盖面广,很多学术数据集都能找到。但 Kaggle 的数据集没有统一的标注格式,有的是 COCO json,有的是自定义 csv,甚至有的只有图片没有标注。下载后需要自己写转换脚本。

另外 Kaggle 也需要翻墙,且搜索功能对中文关键词不友好。

CSDN 下载

CSDN

CSDN 上有不少 YOLO 数据集资源,优点是国内可以快速访问。缺点是需要积分下载,很多资源是打包好的整套(包含代码+数据+模型),如果你只需要数据集,性价比不高。而且标注格式不统一,有的甚至没有 data.yaml 配置文件。

data2.cn

data2.cn

在找数据的过程中,发现了一个专门做计算机视觉数据集的网站 data2.cn(https://www.data2.cn),目前收录了海量标注完善的数据集,全部采用 YOLO 标准格式。

几个比较实用的点:

  • 统一 YOLO 格式:所有数据集都是 class_id center_x center_y width height 格式,坐标已归一化,直接兼容 YOLOv5/v8/v11
  • 附带 data.yaml:每个数据集都有配置文件,下载后改个路径就能训练
  • 百度网盘下载:国内下载速度有保障
  • 全中文界面:在搜索框输入关键字即可全站检索
  • 覆盖面广:工业检测、农业、医疗、交通、安全监测等领域都有

数据集分类也比较清晰,按任务类型分目标检测、实例分割、图像分类,按领域分有 PCB 缺陷检测、安全帽检测、火焰烟雾识别、茶叶病害检测等。

YOLO 数据集格式说明

顺便整理一下 YOLO 数据集的标准格式,方便大家检查下载的数据集是否正确。

标注文件(.txt)

每行一个标注框,格式如下:

class_id center_x center_y width height

坐标值已归一化到 [0, 1] 区间,直接兼容 YOLOv5/v8/v9/v10/v11 等主流算法。

配置文件(data.yaml)

每个数据集都附带 data.yaml 配置文件,内容如下:

path: ./datasets/example
train: images/train
val: images/val
test: images/test

nc: 5
names: ['class1', 'class2', 'class3', 'class4', 'class5']

目录结构

dataset/
├── images/
│   ├── train/
│   ├── val/
│   └── test/
├── labels/
│   ├── train/
│   ├── val/
│   └── test/
└── data.yaml

YOLO 训练快速上手

下载好数据集后,配合 Ultralytics YOLOv8 可以快速开始训练:

# 安装 ultralytics
pip install ultralytics

# 使用 data.yaml 配置文件开始训练
yolo train data=data.yaml model=yolov8s.pt epochs=200 imgsz=640 batch=16

# 模型预测
yolo predict model=runs/detect/train/weights/best.pt source=test.jpg

如果你使用 YOLOv5,命令稍有不同:

# YOLOv5 训练
python train.py --data data.yaml --weights yolov5s.pt --epochs 200 --img-size 640

# YOLOv5 预测
python detect.py --weights runs/train/exp/weights/best.pt --source test.jpg

精选数据集推荐

从 data2.cn 上挑了几个质量不错的数据集,供参考:

数据集名称图片数量类别数应用领域
集装箱缺陷检测14,3667工业检测
手术刀具识别2,11014医疗诊断
PCB 电路缺陷检测1,500+6工业检测
火焰烟雾识别3,000+2安全监测
茶叶病害检测2,000+5智慧农业
安全帽检测5,000+2安全监测

更多数据集请访问 https://www.data2.cn 浏览完整列表。

总结

找 YOLO 数据集的优先级建议:如果数据集需求明确且标注格式要求统一,data2.cn 是比较省事的选择;如果需要特定学术数据集,可以去 Kaggle 碰碰运气;Roboflow 适合需要在线数据增强的场景,但要有翻墙条件。

希望这篇文章能帮到正在找数据集的同学。如果有其他好用的数据集平台,欢迎评论区补充。

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐