赞
踩
YOLOv8是Ultralytics开发的一种sota模型(哔哩吧啦省略一堆字)
本文主要简述YOLOv8 pytorch环境部署以及其如何使用命令行进行便捷训练的方法(以目标检测为例,后续有空再补充一下)
https://github.com/ultralytics/ultralytics # yolov8 github源码
该步骤省略了anaconda的下载与安装,具体可以去查询其他博客大佬的文章
win+r打开终端命令窗口,然后输入以下命令行创建环境
your-env-name: 自定义的环境名称
python=x.x: 使用的python版本
conda create -n your-env-name python=x.x
创建完成后,查看anaconda环境列表,刚才创建的环境是否在列表中
conda env list
创建环境后就可以进行激活环境,在虚拟环境中进行配置;当然创建错了也可以删除后进行重新创建
activate your-env-name #激活环境
remove -n your-env-name -all # 删除环境
YOLOv8源码页面介绍有阐述,使用pip install ultralytics即可使用,但是本人在直接进行安装时,配置pytorch库出现超时问题,且pytorch库未必会适合你当前的使用环境。
该章节主要解决pytorch的配置问题,不使用指令进行下载pytorch。
在cmd终端命令窗口中输入以下指令,查看左上角CUDA Version的打印信息,我这里是11.1版本
nvidia-smi
如果未安装CUDA驱动的,可以根据Driver Version信息去NVIDA官网安装驱动
在pytorch版本查询页面,查看与自己的NVIDA Version相匹配的安装指令,从中查看匹配的pytorch和torchvision的版本号
如下图所示可以看到Linux and Window环境下CUDA 11.1,所对应的pytorch版本是1.9.1,torchvision版本是0.10.1
进入pytorch官网安装页面
找到对应的pytorch和torchvision的安装包(cp代表python版本,如果其中一个文件找不到对应版本,则重复上一步骤查询可匹配的其他版本)
下载完后把压缩包放到喜欢的路径下
在cmd终端命令窗口上,激活配置环境,并使用pip install进行配置
pip install torch-1.9.1+cu111-cp38-cp38-win_amd64.whl
pip install torchvision-0.10.1+cu111-cp38-cp38-win_amd64.whl
按照源码介绍,输入命令进行安装
pip install ultralytics
至此,环境配置已经完成了,剩下看环境运行缺什么就安装什么就好了,当然,作者在源码中也添加了配置清单,下载源码进行解压后,使用cd指令进入源码路径,使用以下命令进行配置
pip install -r requirements.txt
准备工作:数据集准备 + 数据集yaml描述文件 + v8模型yaml描述文件 + 预训练权重,除数据集外其余文件都放在同一文件夹中(方便处理,如果不适合在下面操作中补充文件绝对路径即可)
网络好的可以直接略过这里,后续步骤使用命令行操作时候,会自动下载权重,后续我想办法放一下权重文件(第一次写博客,有空再整一整)
如果下载好了yolov8n.pt模型,可以在终端窗口中进行以下步骤测试一下,成功后会在当前路径生成一个结果文件夹
activate your-env-name #激活环境
cd xxx #进入权重文件所在路径
yolo predict
创建一个yaml文件(不会则创建txt文件后更改后缀成yaml),按以下内容填写
(当然,不用划分数据集也可以,调整路径即可,path不变,train和val指向同一文件夹,test可以空着)
# data path
path: 数据集路径(底下放置train、val、test等数据文件夹)
train: train/images(path下训练数据集图片所在路径)
val: val/images(path下验证数据集图片所在路径)
test: test/images(path下测试数据集图片所在路径)
# classes num 类别数
nc: xx
#classes name
name:
0: 'xxx'
1: 'xxx'
...
在训练之前可以查看一下yolo的配置参数有哪些,使用以下命令进行查看
yolo cfg
在终端中,可以使用以下命令进行训练:
任务:taskdetect、segment、pos
模式: modetrain、val、predict
模型: modelyolov8n.yaml、yolov8m.yaml、yolov8l.yaml、yolov8x.yaml 文件夹下只要有yolov8.yaml即可
输入大小: imgsz640、320、160
驱动:device0 、cpu
yolo task=detect mode=train model=yolov8x.yaml data=数据集.yaml batch=xx epochs=xx imgsz=xx device=xx
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。