目录
0 相关资料
YOLOV8环境安装教程.:https://www.bilibili.com/video/BV1dG4y1c7dH/
YOLOV8保姆级教学视频:https://www.bilibili.com/video/BV1qd4y1L7aX/
1 SCB-Dataset3-U 数据
这里使用YOLOv8 训练自定义数据集(SCB-Dataset3)
备注:关于SCB-Dataset3我会公开在github中:
https://github.com/Whiffe/SCB-dataset
在平台中上传数据,通过阿里云盘的方式上传
unzip 5k_HRW_yolo_Dataset.zip
unzip 0.355k_university_yolo_Dataset.zip
unzip 0.71k_university_yolo_Dataset.zip
2 YOLOv8 训练
2.1 YOLOv8 安装
PyTorch / 2.0.0 / 3.8(ubuntu20.04) / 11.8
git clone https://github.com/ultralytics/ultralytics
推荐
git clone https://gitee.com/YFwinston/ultralytics
cd ultralytics/
pip install ultralytics
2.2 训练的yaml文件
将下面的文件放到:ultralytics/ultralytics/datasets/
0.71k_university_yolo_Dataset.yaml
train: /root/autodl-tmp/0.71k_university_yolo_Dataset/images/train
val: /root/autodl-tmp/0.71k_university_yolo_Dataset/images/val
# number of classes
nc: 6
# class names
names: [ 'hand-raising','reading','writing','using phone','bowing the head','leaning over the table ']
2.3 YOLOv8 训练
下载与上传模型
2.3.1 yolov8n 训练
yolo task=detect mode=train model=yolov8n.pt data="./ultralytics/datasets/0.71k_university_yolo_Dataset.yaml" batch=8 && /usr/bin/shutdown
2.3.2 yolov8n 验证
yolo task=detect mode=val model=runs/detect/train/weights/best.pt data="./ultralytics/datasets/0.71k_university_yolo_Dataset.yaml"
3 YOLOv7 训练
2.2 训练的yaml文件
将下面的文件放到:yolov7/data/
0.71k_university_yolo_Dataset.yaml
train: /root/autodl-tmp/0.71k_university_yolo_Dataset/images/train
val: /root/autodl-tmp/0.71k_university_yolo_Dataset/images/val
# number of classes
nc: 6
# class names
names: [ 'hand-raising','reading','writing','using phone','bowing the head','leaning over the table ']
0.355k_university_yolo_Dataset.yaml
train: /root/autodl-tmp/0.355k_university_yolo_Dataset/images/train
val: /root/autodl-tmp/0.355k_university_yolo_Dataset/images/val
# number of classes
nc: 6
# class names
names: [ 'hand-raising','reading','writing','using phone','bowing the head','leaning over the table ']
YOLOv7x
训练yolov7
python train.py --weights yolov7x.pt --data data/0.71k_university_yolo_Dataset.yaml --batch 8 --epochs 100 --cfg ./cfg/training/yolov7x.yaml && /usr/bin/shutdown
python train.py --weights yolov7x.pt --data data/0.355k_university_yolo_Dataset.yaml --batch 8 --epochs 100 --cfg ./cfg/training/yolov7x.yaml && /usr/bin/shutdown
断点训练
python train.py --weights runs/train/exp7/weights/last.pt --data data/0.355k_university_yolo_Dataset.yaml --batch 8 --epochs 100 --cfg ./cfg/training/yolov7x.yaml --resume && /usr/bin/shutdown
验证yolov7
python test.py --weights runs/train/exp6/weights/best.pt --data data/0.71k_university_yolo_Dataset.yaml
Class Images Labels P R mAP@.5 mAP@.5:.95:
all 142 4107 0.929 0.75 0.944 0.741
hand-raising 142 1 1 0 0.995 0.697
reading 142 1610 0.884 0.851 0.921 0.746
writing 142 619 0.896 0.859 0.923 0.78
using phone 142 1470 0.936 0.949 0.969 0.806
bowing the head 142 185 0.881 0.859 0.873 0.661
leaning over the table 142 222 0.977 0.982 0.985 0.755
python test.py --weights runs/train/exp7/weights/best.pt --data data/0.355k_university_yolo_Dataset.yaml
Class Images Labels P R mAP@.5 mAP@.5:.95:
all 67 1938 0.911 0.57 0.714 0.551
hand-raising 67 3 1 0 0.000151 0.000136
reading 67 782 0.856 0.729 0.819 0.657
writing 67 329 0.836 0.827 0.883 0.709
using phone 67 631 0.874 0.868 0.928 0.773
bowing the head 67 94 0.922 0.501 0.748 0.543
leaning over the table 67 99 0.98 0.497 0.903 0.621