YOLO11 数据集目录检查
629 字
3 分钟
YOLO11 数据集目录检查
YOLO11 数据集目录检查
准备训练 YOLO11 时,最容易卡住的地方不是模型代码,而是数据集路径。图片放错位置、标签文件名对不上、data.yaml 写错目录,都会导致训练时找不到数据。
今天记录一套训练前的检查步骤,先把目录确认清楚,再开始跑模型。
1、推荐的数据集结构
一个常见的检测数据集可以整理成这样:
datasets/ my_yolo_data/ images/ train/ val/ labels/ train/ val/ data.yaml其中 images/train 放训练图片,labels/train 放训练标签;images/val 放验证图片,labels/val 放验证标签。
2、检查图片和标签是否同名
YOLO 标签文件需要和图片文件同名,只是后缀不同。例如:
images/train/0001.jpglabels/train/0001.txt如果图片是 0001.jpg,标签却写成 1.txt,训练时就会认为这张图片没有标注。
可以用 Python 简单检查:
from pathlib import Path
img_dir = Path("datasets/my_yolo_data/images/train")label_dir = Path("datasets/my_yolo_data/labels/train")
imgs = {p.stem for p in img_dir.glob("*.*")}labels = {p.stem for p in label_dir.glob("*.txt")}
print("只有图片没有标签:", sorted(imgs - labels)[:10])print("只有标签没有图片:", sorted(labels - imgs)[:10])如果两个输出都是空列表,说明文件名基本对应。
3、检查 data.yaml
data.yaml 可以先写成这样:
path: datasets/my_yolo_datatrain: images/trainval: images/val
names: 0: person 1: car这里要注意 path 和 train、val 的组合路径是否真的存在。可以手动拼一下:
datasets/my_yolo_data/images/traindatasets/my_yolo_data/images/val如果项目在 Windows 上,路径也尽量使用 /,这样复制到命令里更稳定。
4、先跑一个小命令验证
正式训练前,可以先用较小参数跑一轮:
yolo detect train data=datasets/my_yolo_data/data.yaml model=yolo11n.pt epochs=1 imgsz=640 batch=2这一步不是为了训练效果,而是为了确认数据能被正常读取。只要能进入训练流程,就说明目录、标签和配置大体没问题。
5、常见错误记录
我目前遇到比较多的是这几类:
1. data.yaml 的 path 写成了不存在的相对路径2. images 和 labels 目录层级不一致3. 标签 txt 文件为空或类别编号超过 names 范围4. 图片后缀混用,但检查脚本只匹配了 jpg5. 命令行运行目录不是项目根目录遇到报错时,可以先从这几个点反查。
总结
YOLO11 训练前先不要急着调参数。把数据集目录、图片标签对应关系和 data.yaml 检查清楚,比直接跑训练更节省时间。数据能稳定读进去,后面的模型效果才有讨论意义。
文章分享
如果这篇文章对你有帮助,欢迎分享给更多人!
相关文章智能推荐
1
YOLO11 标签文件检查清单
计算机视觉记录训练 YOLO11 前检查 label 文件的几个关键点,包括类别编号、坐标范围和图片对应关系。
2
YOLO11 第一次预测图片
计算机视觉在 YOLO11 环境配置完成后,记录使用预训练模型完成第一张图片预测的流程。
3
图像数据集版本怎么记录
计算机视觉记录图像数据集在新增、清洗、划分和增强后如何保留版本信息。
4
图像训练集泄漏怎么发现
计算机视觉记录相似图片、视频抽帧和重复样本导致验证集虚高的排查方法。
5
数据集 train val 划分
计算机视觉整理计算机视觉数据集 train 和 val 划分时的比例、随机种子和数据泄漏问题。
随机文章随机推荐













