<h1 style="font-size: 32px; font-weight: bold; border-bottom: 2px solid rgb(204, 204, 204); padding: 0px 4px 0px 0px; text-align: left; margin: 0px 0px 10px;">YOLOv8 官方数据集训练方法</h1><p>训练命令如下,yolov8的训练速度比yolov5快好多!!</p><p>参考博客:<a href="https://blog.csdn.net/qq_39056987/article/details/129621354" target="_blank">https://blog.csdn.net/qq_39056987/article/details/129621354</a></p><pre class="brush:python;toolbar:false"># 从YAML中构建一个新模型,并从头开始训练
yolo detect train data=coco128.yaml model=yolov8n.yaml epochs=100 imgsz=640
# 从预先训练的*.pt模型开始训练
yolo detect train data=coco128.yaml model=yolov8n.pt epochs=100 imgsz=640
# 从YAML中构建一个新的模型,将预训练的权重传递给它,并开始训练
yolo detect train data=coco128.yaml model=yolov8n.yaml pretrained=yolov8n.pt epochs=100 imgsz=640</pre><p><span style="color: rgb(255, 0, 0);">备注:</span></p><p><span style="color: rgb(255, 0, 0);"> 我看网上修改classes值都是在yolov8n.yaml文件里面改,现在yolov8n.yaml找不到了,训练时也不自动下载,据网友不可靠消息,可能是换成了yolov8.yaml文件了</span></p><p><span style="color: rgb(255, 0, 0);"> yolov8.yaml文件目录:./ultralytics/models/v8/yolov8.yaml</span><br/></p><p><br/></p><p><span style="font-style: italic; font-weight: bold; color: rgb(51, 153, 204); line-height: 18px; font-size: 20px;">1、准备工作</span></p><p>训练文件设置在这里,啥都不要动~~</p><p>./ultralytics-main/ultralytics/datasets/coco128.yaml</p><p><span style="color: rgb(0, 176, 80);">说明:</span></p><p><span style="color: rgb(0, 176, 80);"> GPU环境安装方法和命令《</span><a href="/Course?id=0726076000340" target="_blank" title="Detectron2 环境搭建" style="text-decoration: underline;">Detectron2 环境搭建</a><span style="color: rgb(0, 176, 80);">》《</span><a href="/Course?id=0075580000334" target="_blank" title="YOLOv5 GPU训练方法" style="text-decoration: underline;">YOLOv5 GPU训练方法</a><span style="color: rgb(0, 176, 80);">》,其实CUDA安装和相关命令,和这两篇博客中提到的安装方法其实都是一样的!</span></p><p><br/></p><p><span style="font-style: italic; font-weight: bold; color: rgb(51, 153, 204); line-height: 18px; font-size: 20px;">2、开始训练</span></p><p>博主这边使用的命令</p><pre class="brush:python;toolbar:false"># 这个命令训练出来,无法进行预测,不懂啥原因~~
yolo detect train data=coco128.yaml model=yolov8n.yaml epochs=100 imgsz=640 device=0
# 得用下面这个命令,找不到yolov8n.yaml文件,暂时没搞明白~
yolo detect train data=ultralytics/datasets/coco128.yaml model=yolov8n.yaml pretrained=yolov8n.pt epochs=100 imgsz=640 device=0</pre><p><br/></p><p>还有另一种训练方式:</p><p>参考博客:<a href="https://blog.csdn.net/m0_72734364/article/details/128815530" target="_blank">https://blog.csdn.net/m0_72734364/article/details/128815530</a></p><p>新建train.py文件,代码如下:</p><pre class="brush:python;toolbar:false">from ultralytics import YOLO
if __name__ == '__main__':
# Load a model
# yaml会自动下载
model = YOLO("./ultralytics/models/v8/yolov8.yaml") # build a new model from scratch
model = YOLO("yolov8n.pt") # load a pretrained model (recommended for training)
# Train the model
results = model.train(data="./ultralytics/datasets/coco128.yaml", epochs=100, imgsz=640, device=0)</pre><p><span style="color: rgb(0, 176, 80);">说明:</span></p><p><span style="color: rgb(0, 176, 80);"> 自定义数据集种类数和种类名称直接去yolov8.yaml和coco128.yaml文件里面修改即可。<br/></span></p><p><br/></p><p>训练结果:<br/></p><p><img src="/upload/image/6381948511568937278877374.jpg" title="QQ截图20230512104506.jpg" alt="QQ截图20230512104506.jpg"/></p><p><span style="font-style: italic; font-weight: bold; color: rgb(51, 153, 204); line-height: 18px; font-size: 20px;">3、预测测试</span></p><pre class="brush:python;toolbar:false">yolo predict model=./runs/detect/train/weights/best.pt source='bus.jpg'</pre><p><br/></p><p>另一种预测方式,这个方法好像找不到输出文件。。。</p><p>新建predict.py文件,代码如下:</p><pre class="brush:python;toolbar:false">from ultralytics import YOLO
if __name__ == '__main__':
# Load a model
model = YOLO("./runs/detect/train10/weights/best.pt") # load an official model
# Predict with the model
results = model(source="./datasets/coco128/images/train2017/bus.jpg") # predict on an image</pre><p><img src="/upload/image/6381950059703381485266882.jpg" title="QQ截图20230512150318.jpg" alt="QQ截图20230512150318.jpg"/></p>
YOLOv8 官方数据集训练方法 训练命令如下,yolov8的训练速度比yolov5快好多!!
参考博客:https://blog.csdn.net/qq_39056987/article/details/129621354
# 从YAML中构建一个新模型,并从头开始训练
yolo detect train data=coco128.yaml model=yolov8n.yaml epochs=100 imgsz=640
# 从预先训练的*.pt模型开始训练
yolo detect train data=coco128.yaml model=yolov8n.pt epochs=100 imgsz=640
# 从YAML中构建一个新的模型,将预训练的权重传递给它,并开始训练
yolo detect train data=coco128.yaml model=yolov8n.yaml pretrained=yolov8n.pt epochs=100 imgsz=640 备注:
我看网上修改classes值都是在yolov8n.yaml文件里面改,现在yolov8n.yaml找不到了,训练时也不自动下载,据网友不可靠消息,可能是换成了yolov8.yaml文件了
yolov8.yaml文件目录:./ultralytics/models/v8/yolov8.yaml
1、准备工作
训练文件设置在这里,啥都不要动~~
./ultralytics-main/ultralytics/datasets/coco128.yaml
说明:
GPU环境安装方法和命令《 Detectron2 环境搭建 》《 YOLOv5 GPU训练方法 》,其实CUDA安装和相关命令,和这两篇博客中提到的安装方法其实都是一样的!
2、开始训练
博主这边使用的命令
# 这个命令训练出来,无法进行预测,不懂啥原因~~
yolo detect train data=coco128.yaml model=yolov8n.yaml epochs=100 imgsz=640 device=0
# 得用下面这个命令,找不到yolov8n.yaml文件,暂时没搞明白~
yolo detect train data=ultralytics/datasets/coco128.yaml model=yolov8n.yaml pretrained=yolov8n.pt epochs=100 imgsz=640 device=0
还有另一种训练方式:
参考博客:https://blog.csdn.net/m0_72734364/article/details/128815530
新建train.py文件,代码如下:
from ultralytics import YOLO
if __name__ == '__main__':
# Load a model
# yaml会自动下载
model = YOLO("./ultralytics/models/v8/yolov8.yaml") # build a new model from scratch
model = YOLO("yolov8n.pt") # load a pretrained model (recommended for training)
# Train the model
results = model.train(data="./ultralytics/datasets/coco128.yaml", epochs=100, imgsz=640, device=0) 说明:
自定义数据集种类数和种类名称直接去yolov8.yaml和coco128.yaml文件里面修改即可。
训练结果:
3、预测测试
yolo predict model=./runs/detect/train/weights/best.pt source='bus.jpg'
另一种预测方式,这个方法好像找不到输出文件。。。
新建predict.py文件,代码如下:
from ultralytics import YOLO
if __name__ == '__main__':
# Load a model
model = YOLO("./runs/detect/train10/weights/best.pt") # load an official model
# Predict with the model
results = model(source="./datasets/coco128/images/train2017/bus.jpg") # predict on an image