赞
踩
YOLOV8环境安装教程.:https://www.bilibili.com/video/BV1dG4y1c7dH/
YOLOV8保姆级教学视频:https://www.bilibili.com/video/BV1qd4y1L7aX/
b站视频:https://www.bilibili.com/video/BV12p4y1c7UY/
PyTorch / 2.0.0 / 3.8(ubuntu20.04) / 11.8
SCB-Dataset3 数据集【百度云】:链接:https://pan.baidu.com/s/1ROnHmndynlzNiLWyzSMA3g?pwd=5qyf
提取码:5qyf
训练数据【百度云】:链接:https://pan.baidu.com/s/1Of6cG4X0FP015c1mQKnfng?pwd=sm7k
提取码:sm7k
这里使用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
将下面的文件放到:ultralytics/ultralytics/datasets/
5k_HRW_yolo_Dataset.yaml
train: /root/autodl-tmp/5k_HRW_yolo_Dataset/images/train
val: /root/autodl-tmp/5k_HRW_yolo_Dataset/images/val
# number of classes
nc: 3
# class names
names: [ 'hand-raising','reading','writing']
yolo task=detect mode=train model=yolov8n.pt data="./ultralytics/datasets/5k_HRW_yolo_Dataset.yaml" batch=8 && /usr/bin/shutdown
yolo task=detect mode=val model=runs/detect/train/weights/best.pt data="./ultralytics/datasets/5k_HRW_yolo_Dataset.yaml"
1000(1s)/(preprocess+inference+postprocess)
FPS = 1000/(0.2+3+1)=238.095=238.1
yolo task=detect mode=val model=runs/detect/train/weights/best.pt data="./ultralytics/datasets/5k_HRW_yolo_Dataset.yaml"
1000(1s)/(preprocess+inference+postprocess)
BSI
yolo task=detect mode=predict model=runs/detect/train/weights/best.pt source=/root/autodl-tmp/5k_HRW_yolo_Dataset/images/val/ save_txt
python BehaviorSimilarityCalculation2.py --labels_path runs/detect/predict/labels
all_count_category: {‘0’: 2606, ‘2’: 904, ‘1’: 3210}
all_count_overlap: {‘1 2’: 143, ‘0 1’: 9, ‘0 2’: 1}
1 2: 0.158 0.045
0 1: 0.003 0.003
0 2: 0.000 0.001
yolo task=detect mode=train model=yolov8s.pt data="./ultralytics/datasets/5k_HRW_yolo_Dataset.yaml" batch=8 && /usr/bin/shutdown
yolo task=detect mode=val model=runs/detect/train2/weights/best.pt data="./ultralytics/datasets/5k_HRW_yolo_Dataset.yaml"
1000(1s)/(preprocess+inference+postprocess)
FPS = 1000/(0.2+3.6+1.2)=200
BSI
yolo task=detect mode=predict model=runs/detect/train2/weights/best.pt source=/root/autodl-tmp/5k_HRW_yolo_Dataset/images/val/ save_txt
python BehaviorSimilarityCalculation2.py --labels_path runs/detect/predict2/labels
all_count_category: {‘0’: 2505, ‘1’: 3134, ‘2’: 847}
all_count_overlap: {‘0 1’: 8, ‘1 2’: 131, ‘0 2’: 1}
0 1: 0.003 0.003
1 2: 0.042 0.155
0 2: 0.000 0.001
yolo task=detect mode=train model=yolov8m.pt data="./ultralytics/datasets/5k_HRW_yolo_Dataset.yaml" batch=8 && /usr/bin/shutdown
yolo task=detect mode=val model=runs/detect/train3/weights/best.pt data="./ultralytics/datasets/5k_HRW_yolo_Dataset.yaml"
1000(1s)/(preprocess+inference+postprocess)
FPS = 1000/(0.2+6.2+1.1)=133.33
BSI
yolo task=detect mode=predict model=runs/detect/train3/weights/best.pt source=/root/autodl-tmp/5k_HRW_yolo_Dataset/images/val/ save_txt
python BehaviorSimilarityCalculation2.py --labels_path runs/detect/predict3/labels
all_count_category: {‘0’: 2413, ‘2’: 813, ‘1’: 2910}
all_count_overlap: {‘0 1’: 9, ‘1 2’: 105, ‘0 2’: 2}
0 1: 0.004 0.003
1 2: 0.129 0.036
0 2: 0.001 0.002
yolo task=detect mode=train model=yolov8l.pt data="./ultralytics/datasets/5k_HRW_yolo_Dataset.yaml" batch=8 && /usr/bin/shutdown
yolo task=detect mode=val model=runs/detect/train4/weights/best.pt data="./ultralytics/datasets/5k_HRW_yolo_Dataset.yaml"
1000(1s)/(preprocess+inference+postprocess)
FPS = 1000/(0.2+9.8+0.9)=91.74
BSI
yolo task=detect mode=predict model=runs/detect/train4/weights/best.pt source=/root/autodl-tmp/5k_HRW_yolo_Dataset/images/val/ save_txt
python BehaviorSimilarityCalculation2.py --labels_path runs/detect/predict4/labels
all_count_category: {‘0’: 2415, ‘1’: 2886, ‘2’: 753}
all_count_overlap: {‘0 1’: 9, ‘0 2’: 2, ‘1 2’: 89}
0 1: 0.004 0.003
0 2: 0.001 0.003
1 2: 0.031 0.118
yolo task=detect mode=train model=yolov8x.pt data="./ultralytics/datasets/5k_HRW_yolo_Dataset.yaml" batch=8 && /usr/bin/shutdown
yolo task=detect mode=val model=runs/detect/train5/weights/best.pt data="./ultralytics/datasets/5k_HRW_yolo_Dataset.yaml"
1000(1s)/(preprocess+inference+postprocess)
FPS = 1000/(0.2+14.4+0.8)=64.94
BSI
yolo task=detect mode=predict model=runs/detect/train5/weights/best.pt source=/root/autodl-tmp/5k_HRW_yolo_Dataset/images/val/ save_txt
python BehaviorSimilarityCalculation2.py --labels_path runs/detect/predict5/labels
all_count_category: {‘0’: 2351, ‘1’: 2686, ‘2’: 705}
all_count_overlap: {‘1 2’: 65, ‘0 1’: 3}
1 2: 0.024 0.092
0 1: 0.001 0.001
下面内容来自:YOLOV8最强操作教程.
https://blog.csdn.net/qq_37706472/article/details/128679699
model
pt模型路径或者yaml模型配置文件路径。这次的v8稍有不同,这个model参数可以是pt也可以是yaml。
pt
相当于使用预训练权重进行训练,比如选择为yolov8n.pt,就是训练一个yolov8n模型,并且训练前导入这个pt的权重。
yaml
相当于直接初始化一个模型进行训练,比如选择为yolov8n.yaml,就是训练一个yolov8n模型,权重是随机初始化。
data
数据配置文件的路径,也就是第三点中的data.yaml。
epochs
训练次数。
patience
在精度持续一定epochs没有提升时,过早停止训练。也就是早停机制。
batch
batch size大小。
imgsz
输入图像大小。
save
是否保存模型。
cache
是否采用ram进行数据载入,设置True会加快训练速度,但是这个参数非常吃内存,一般服务器才会设置。
device
所选择的设备训练。
workers
载入数据的线程数。windows一般为4,服务器可以大点,windows上这个参数可能会导致线程报错,发现有关线程报错,可以尝试减少这个参数,这个参数默认为8,大部分都是需要减少的。
project
project name.一个保存文件夹的名字,一般不用改动。
name
训练保存的文件夹名字。
exist_ok
是否覆盖现有的保存文件夹。
pretrained
是否使用预训练模型,这个参数我并没有使用,因为在model参数中我直接设置pt模型路径。
optimizer
优化器选择。直接SGD、Adam、AdamW、RMSProp。
verbose
是否打印详细输出。
seed
随机种子。
deterministic
设置为True,保证实验的可复现性。
single_cls
如果你的数据集是多类别,这个参数设置为True的话,其会当做一个类别来进行训练,相当于只负责识别目标,不负责识别类别。
image_weights
使用加权图像选择进行训练。
rect
是否采用矩形训练。这个参数不好解释,想了解的同学可以自行百度。
cos_lr
是否采用cor lr调度器。
close_mosaic
默认值为10,意思就是在最后10个epochs关闭马赛克数据增强,其思想来源于YOLOX。
resume
是否继续上一次没完成的训练。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。