问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

YOLOv8在无显卡的电脑上安装配置全流程(小白CPU版)

创作时间:
作者:
@小白创作中心

YOLOv8在无显卡的电脑上安装配置全流程(小白CPU版)

引用
CSDN
1.
https://blog.csdn.net/2303_79505315/article/details/142681740

YOLOv8是目前最流行的计算机视觉项目之一,但是很多小白用户在没有显卡的电脑上安装和配置时会遇到各种问题。本文将从环境搭建、配置环境、新建训练目录、标注数据、训练模型到验证模型等多个方面进行详细的讲解,帮助小白用户快速上手YOLOv8。

工欲善其事必先利其器,学YOLOv8必须首先学会环境搭建。以下是所需的文件下载地址:

链接:https://pan.xunlei.com/s/VO9hWSj8G8c65Fi21y6WQzruA1?pwd=v7ks#

安装Anaconda Python虚拟环境管理器

  1. 官方下载地址(有点慢):https://repo.anaconda.com/archive/(最好下载旧版本的)
  2. 一路next即可,安装位置可改到D盘,建议安装在非系统盘,正常情况下勾了就不用添加环境变量了。
  • 下载安装好了anaconda,启动这个软件,新建一个虚拟环境
  • 点击create按钮,新建一个虚拟环境,这里名字叫做yolotest为例子,可以是其他名称,Python版本选择3.8.19,点击Create等待环境创建成功。

  • 提醒(在创建虚拟环境前,可以自己改默认虚拟环境创建路径,但本教程就不改,虚拟环境默认安装在C盘,需要的自己网上搜有教程)
  1. 选择yolotest右边的绿色三角号按钮,会弹出选项,选择Open Terminal选项,进入了终端

终端前面带有 yolotest 虚拟环境名称的说明成功了

配置环境

  • 接上面的步骤,安装需要的Python类库
  • 先将安装位置换到D盘,输入以下命令
  • 然后在终端依次输入输入以下命令(默认装CPU版的torch)
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple/
pip config set install.trusted-host pypi.tuna.tsinghua.edu.cn
pip install torch==1.12.1+cpu torchvision==0.13.1+cpu torchaudio==0.12.1 --extra-index-url https://download.pytorch.org/whl/cpu
pip install yolo
pip install ultralytics
pip install ncnn
pip install labelimg  

针对ultralytics网络不好的同学,我这里上传了一份:https://pan.xunlei.com/s/VO9hWSj8G8c65Fi21y6WQzruA1?pwd=v7ks#

或者直接指定克隆下载(8.1.0版本),先引导到D盘,再下载(推荐装这个版本)

git clone https://gitee.com/xiaohuxuezhang/ultralytics-v8.1.0.git  

下载后,将ultralytics复制到D盘上,然后继续在终端逐条输入以下指令

cd ultralytics
pip install -e .

以下是yolo,ultralytics成功安装结束的图,可能版本号不同,但没关系。

验证labelimg图片标注工具是否正常,控制台输入labelimg,即可打开labelimg程序,然后关闭程序。

新建训练目录

方法1:(YOLOv8支持不止这一种格式)

  • 找个空目录(可以去E盘里),新建文件夹,名称叫做 yolotrain,也可以是其他名称,这里的例子是在E盘的yolotrain文件夹

  • 在 yolotrain 新建labels和images文件夹,在images文件夹新建test,train,val三个文件夹,在labesl下面新建train,val两个文件夹

  • images文件夹下面的test,train,val三个文件夹,存放的要训练的图片,例如train下面是 1.png,2.png,将这个两个文件复制一份到val,再复制一份到test文件夹

  • labels下面的train,val两个文件夹存放的是用labelimg标注的标签数据文件,等会 labelimg 使用会用到这个文件夹

方法2:

划分数据集法

  • 找个空目录(可以去E盘里),新建文件夹,名称叫做 yolotrain,也可以是其他名称,这里的例子是在E盘的yolotrain文件夹
  • 在 yolotrain 里面新建train,val,test三个文件夹,
  • 在train文件夹新建images和labesl三个文件夹
  • 在val文件夹新建images和labesl三个文件夹
  • 在test文件夹新建images和labesl三个文件夹,如下图
├── yolotrain
    └── train
        └── images (存放训练集照片)
        └── labels (存放训练集标签数据)
    └── val
        └── images (存放验证集集照片)
        └── labels (存放验证集标签数据)
    └── test                        #测试集可以不放任何数据
        └── images (存放测试集集照片)
        └── labels (存放测试集标签数据)  

标注数据

  • 将准备好的图片放到 images/train 文件夹,下面并且复制一份到 images/val 和 images/test两个文件夹

  • 接上步骤 配置环境 的命令控制台,输入 labelimg 命令,即可打开 labelimg 程序

  • 点击 Open Dir 按钮,选择到你的 images/train 文件夹即可,例如 E:/yolotest/images/train

  • 点击 Change Save Dir 按钮,选择到你的 labels/train 文件夹即可,例如 E:/yolotest/labels/train

  • 点击Save 下面的格式按钮,调整到 YOLO 格式的模式即可,请看下图
    下面开始标注数据

  • 例子是 某音的 点赞 和 评论 按钮

  • 在图片上右键菜单,选择 Create RectBox 选项,或者点击左侧的 Create RectBox

  • 在 点赞 图片区域拉出选框,会弹出框,输入分类名称,这里填写的是 aixin,点击ok即可保存 ,这分类名称注意后面函数调用要用到

  • 在 评论 图片区域拉出选框,会弹出框,输入分类名称,这里填写的是 pinglun,点击ok即可保存

  • 第一个图片标注完成后,点击左侧的 Save 按钮保存,然后点击 Next Image 切换标注下一张图片,操作和第一张图片类似

  • 图标标注保存后,会在 labels/train 文件夹存储了标注的数据,classes.txt内容就是分类名称,其他的是和图片相同的名称的txt标注文件

  • 将 labels/train 文件夹数据复制到 labels/val 文件夹,等会验证模型的时候使用

训练模型

在 yolotrain 文件下新建一个训练的配置文件,例如文件名称叫 aixin.yaml,使用记事本打开,填写内容如下

path: E:/yolotrain
train: images/train
val: images/val
test: images/test
nc: 2
names: ["aixin","pinglun"]

参数解释:

  • path: 代表训练的根目录,这里的 yolotrain 在E盘,就写 E:/yolotrain,其他盘的路径自己修改
  • train: 代表要训练的图片文件夹,相对于path路径
  • val: 代表要验证的图片文件夹,相对于path路径
  • test: 代表要测试的图片文件夹,相对于path路径
  • nc: 代表分类名称数量,这是2个,因为使用labelimg标注的是2个类别,如果是多个数据就跟和实际类别数量一样的即可
  • names: 是一个json数组,代表的是标注的分类名称,labelimg使用的是aixin和pinglun两个分类名称,这里就这样写即可
  • 名称的顺序不要写错,会影响训练结果

开始训练

  • 在控制台输入命令
    在cmd窗口,输入
    e:
    回车,再输入
    cd yolotrain
    ,进入这个文件夹
    yolotrain
    ,其他路径自行进入
  • 执行训练命令,下面两个任选一个,截图参数看ultralytics官网
yolo detect train data=e:/yolotrain/aixin.yaml model=e:/yolotrain/yolov8s.pt imgsz=640

或者使用指定训练次数的指令,epochs=100表示训练100次。(推荐用下面指令)

yolo detect train data=e:/yolotrain/aixin.yaml model=e:/yolotrain/yolov8s.pt epochs=100 imgsz=640

这个时候系统会下载yolov8s.pt的基础训练文件,如果下载失败,直接到本章节的开头,直接下载我上传的文件,然后下载解压复制 yolov8s.pt 到 e:/yolotrain/下存放

  • 也可以到网址下载 https://docs.ultralytics.com/models/yolov8/#performance-metrics
    环境配置成功,一切无误,开始训练中
    训练完毕,注意这里的 Results saved后面的路径是动态的,截图中是在 runs/detect/train文件夹下,就是E:/yolotrain文件夹下

  • 在训练完成的目录中可以找到
    best.pt
    的训练模型以及训练中被标记和选中目标的图片结果集,best.pt就是我们训练出来最好的模型。

验证模型

  • 训练完成后,可以对图片进行验证
  • cmd控制台输入命令
  • model 参数代表是 需要验证的模型
  • data 代表检测的配置
yolo detect val data=e:/yolotrain/aixin.yaml model=e:/yolotrain/runs/detect/train/weights/best.pt

验证结果,这里的 Results saved后面的路径是动态的,请到对应的文件下查看图片标注结果

至此模型训练已经结束啦。。。。。。。。。
差点忘了,模型格式的转换,Yolo的pt模型转onnx格式指令

yolo mode=export model=d:/ultralytics/runs/detect/train/weights/best.pt format=onnx simplify=True

注意:需修改成自己的best.pt的路径才能成功导出自己想要的onnx格式的模型。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号