赞
踩
关于这一部分的前段时间花了很长时间,踩了很多坑走了很多弯路,由于目前课题已接近尾声,今天一次性把yolo这一部分个人经验总结出来,有些部分并非原创,如遇到问题可以留言讨论,共同进步。
下载anaconda和pytorch之前,确保CUDA CUDNN Pytorch 三者相匹配且对应同一一版本。
!!! 这一点相当重要,如出不一致后面遇到问题会很麻烦
具体可参考博客:https://www.cnblogs.com/wzmm/articles/16478692.html
下载对应版本anaconda后,首先打开主程序查看程序能否打开,可以打开进行下一步。
输入win+R输入cmd再输入python查看当前python版本,(推荐python3.9)查看后关闭。
打开anaconda prompt 配置环境,输入以下代码搭建环境。
conda create -n pytorch python=3.9
输入清华镜像源代码:
- conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
-
- conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
-
- conda config --set show_channel_urls yes
输入完成之后,检查通道:
conda config --show channels
搭建完成后进入环境:
activate pytorch
### 介绍几个指令,可自行使用 ###
退出/关闭环境:
conda deactivate
查看已有的环境:
conda env list
删除环境:
conda remove -n mypytorch –all
进入环境后,输入下载pytorch代码安装:(根据自己对应的cuda版本下载,我这里是11.7,所以只下载这个版本的)
conda install pytorch torchvision torchaudio pytorch-cuda=11.7 -c pytorch -c nvidia
下载完成后输入:
pip list
查看torch与cuda的兼容性
在prompt中输入 python, 并输入以下代码:
- import torch
-
- print(torch.__version__) #查看torch版本
-
- print(torch.cuda.is_available()) #看安装好的torch和cuda能不能用,也就是看GPU能不能用
如显示True ,则GPU可用,继续进行以下步骤。
在对应网站https://github.com/ultralytics/yolov5
下载相应版本的yolo文件包,解压到当前文件夹,通过pycharm打开。
点击设置,配置解释器,添加解释器,找到此路径D:\anaconda3\envs\pytorch 下的python文件,调出后看到torch包则成功。
配置解释器后,还不能直接运行测试程序,需要先加载。
点击pycharm下方的终端,输入
python -m pip install --upgrade pip
更新pip加载程序。
再输入
pip install -r requirements.txt
加载所需插件。
到此,配置成功,点击detect.py,并运行。
成功后进入train.py,在前排位置加一段代码:
- import os
- os.environ["GIT_PYTHON_REFRESH"] = "quiet"
- import json
- from git.repo import Repo
- from git.repo.fun import is_git_dir
之后运行train.py,若成功,找到与yolov5同目录下的datasets文件,里面查看coco128,若已出现此文件夹,则此步骤结束。
训练开始之前,需要安装labelimg标注插件,且有若干张图片。
首先复制coco128文件夹并粘贴到同目录下重命名ceshi,然后删除ceshi里面除文件夹以外的所有图片与cache等文件,并将自己要训练标注的图片拷贝至刚才创建到的目录下
实例:D:\LANMZ\Desktop\chongzuo\datasets\ceshi\images\train2017
输入win+R调出cmd 输入pip install lambelimg 安装标注软件。
(此步骤确保python版本要低于3.10,如果版本为3.10或者3.10以上的话会出现闪退的情况,亲测过!)
接着就可在cmd中输入labelimg,打开标注软件。
点击选择到以上创建好的文件夹,然后点击PascalVOC调出yolo,然后点击Change save Dir,选择到创建好的label文件夹。(save Dir代表的是标签位置)
实例:D:\LANMZ\Desktop\chongzuo\datasets\ceshi\labels\train2023
接着勾选三项,开始标注,标注完成后,查看label下的文件夹类别,记住类别的数量。
回到pycharm,找到data/coco128.yaml文件,将其复制并重命名ceshi.yaml,按照下图更改。(names需从0开始计数!!!不然会报错)
再复制models/yolov5s.yaml文件,重命名yolov5s_ceshi.yaml,并打开将nc值调为当前记下来的数量。
(PS:测试集和训练集理论上是二八定律,但我们学习途中可以直接都用同一路径)
完成后找到train.py
调整以下参数并运行
运行成功后,找到训练完成的根目录
将best.py文件复制,拷贝到yolov5-7.0的文件下。
在终端输入:
tensorboard --logdir=runs/train
可查看训练参数。
再次打开detect.py文件,将yolov5s.pt修改成best.pt
并将需要验证的图片或视频放到路径下
第三行修改到data/ceshi.yaml
修改完成后运行,即可达到相应效果,Yolo训练模型制作完成。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。