YOLOv8源码(旧版本的,大家可以拿去学习)
放在这里啦,请自取!!!点个赞吧
YOLO训练方式
先了解一下几种训练方式,为了方便调参和学习各个参数,我们使用调用配置文件的方式
这次使用第3种方式!!!
1. 使用命令行接口
YOLOv8提供了用户友好的命令行接口,允许用户通过简单的命令来训练、验证和预测模型。这种方式特别适用于那些喜欢使用终端或脚本进行自动化操作的用户。
示例命令:
训练模型:yolo task=detect mode=train model=yolov8n.pt data=my_dataset.yaml epochs=100 imgsz=640
验证模型:yolo task=detect mode=val model=best.pt data=my_dataset.yaml
预测图像:yolo task=detect mode=predict model=best.pt source=image.jpg
2. 使用代码
示例代码:
from ultralytics import YOLO
# 加载预训练模型(和train.py同一文件夹下)
model = YOLO("yolov8n.pt")
# 训练模型
results = model.train(data="my_dataset.yaml", epochs=100, imgsz=640)
当然也可以这样写:
# Yolo预训练模型
model = "yolov8n.pt"
YOLO(model).train(data=data,
device=device,
epochs=300,
batch=-1)
3. 调用配置文件(.yaml文件)
1.打开yolov8源码,可见配置文件地址在ultralytics/yolo/cfg/default.yaml
2.复制一份一样的下来,改成自己项目需要的名字(用于自己的调参),我这里是train_beetle.yaml(当然也可以在default.yaml下改)
3.修改train.py(路径:ultralytics/yolo/v8/detect/train.py)
可以把train函数修改成如下:
def train(cfg=DEFAULT_CFG, use_python=True):
"""
用cfg配置文件(地址:ultralytics/yolo/cfg/default.yaml)
"""
# 配置文件(改成你自己的)
cfg = "train_beetle.yaml"
model = 'yolov8x.pt' # 加载预训练模型 (推荐)
# data =