YOLO11模型训练、转换及使用流程
1. 安装Anaconda
1.1 官网下载
官网地址:Anaconda | The Operating System for AI
下载地址:Download Anaconda Distribution | Anaconda
打开下载地址,点击右上角 Free Download 进行下载,下载需要填写邮箱,填好后点 Submit 即可。
1.2 镜像站下载
也可以去清华大学开源软件镜像站下载
清华大学开源软件镜像站 | Tsinghua Open Source Mirror
2. 安装Pytorch
具体操作,可以参照B站视频:五分钟教你安装pytorch环境咿咿咿咿bilibili
2.1 创建虚拟环境
打开 Anaconda Prompt
其中<name>替换成你的环境名字(自定义名称),python版本根据自己实际需要填写。可以在base中输入python --version查看自己计算机的python版本。python不建议选择过高的版本,可能不支持。
输入好后回车等待完成安装,安装好后会提示:
# To activate this environment, use
# $ conda activate <name>
# To deactivate an active environment, use
# $ conda deactivate
输入:
激活刚刚安装的环境2.2 PyTorch安装
进入PyTorch官网,选择自己的环境,可以参考以下配置(我的计算机选择是Windows-CPU版本):
| PyTorch Build | Stable(2.1.2) |
|---|---|
| Your OS | Windows |
| Package | Conda |
| Language | Python |
| Compute Platform | CPU |
| Run This Command | conda install pytorch torchvision torchaudio cpuonly -c pytorch |
在刚刚激活的虚拟环境中,输入Run This Command中的命令,安装Run This Command,如果中途报错,可以查看是否是python版本不兼容。
2.3 PyTorch测试
安装好PyTorch后,关闭Anacond Prompt,在程序列表中会出现Spyder()应用,打开它,测试如下代码执行:
# 首先我们需要导入PyTorch库
import torch
# 然后我们可以创建一个新的tensor。以下是一些创建tensor的方法
# 创建一个未初始化的5x3矩阵
x = torch.empty(5, 3)
print(x)
# 创建一个随机初始化的5x3矩阵
x = torch.rand(5, 3)
print(x)
# 创建一个5x3的零矩阵,类型为long
x = torch.zeros(5, 3, dtype=torch.long)
print(x)
# 直接从数据创建tensor
x = torch.tensor(5, 3)
print(x)
注意:实测中,安装完labelImg后,spyder无法正常启动,报错:
Warning: None of the following fonts is installed: ['simSun']
Quidget: Must construct a QApplication before a Quidget
第二行报错导致Spyder无法正常启动。
附录:Anaconda 常用命令
1. 环境管理命令
-
① 创建虚拟环境:
conda create -n environment_name python=3.x。 -
② 激活 / 切换环境:
conda activate environment_name。 -
③ 删除环境:
conda remove -n environment_name --all,该命令可删除整个环境及其中的所有包。 -
④ 列出所有虚拟环境:
conda info --envs或conda env list,可查看所有可用的虚拟环境。 -
⑤ 复制环境:
conda create --name new_env_name --clone old_env_name,可复制现有环境。
2. 包管理命令
-
① 安装包:在激活的环境中使用
conda install package_name安装指定的包。 -
② 更新包:
conda update package_name,可更新已安装的包。 -
③ 移除包:
conda remove package_name,可删除指定的包;示例命令(用于修复 Spyder 启动报错等场景):
其中remove为删除命令,clean为清除缓存等命令,install为安装命令、、、、。
- ④ 列出环境中的包:
conda list,可查看当前环境中安装的所有包。
3. 其他常用命令
-
① 设置镜像源:
conda config --add channels ``https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free,添加国内镜像源可提高下载速度、。 -
② 导出和导入环境:
conda env export > environment.yml导出当前环境的依赖关系,conda env create -f environment.yml从 yml 文件创建环境。
3. 安装 PyCharm
3.1 下载 PyCharm
-
打开 PyCharm 官网:PyCharm: the Python IDE for data science and web development。
-
点击官网中的 “Download” 按钮。
-
向下滑动页面,下载 “PyCharm Community Edition”(社区版,免费)。
3.2 配置 Python 解析器
将 PyCharm 的 Python 解析器配置为前文新建的 Anaconda 虚拟环境。
4. 测试 YOLO11
4.1 下载 YOLO11 源码
-
前往 GitHub 下载 YOLO11 源码,若无法打开 GitHub,可搜索相关教程解决。
-
源码地址:ultralytics/ultralytics: Ultralytics YOLO11 🚀。
-
下载方式:可直接用 Git 命令拉取到本地,或点击页面中的 “<> Code” 按钮,选择 “Download Zip” 下载源码压缩包。
4.2 测试 YOLO11 推理
4.2.1 编写推理代码
-
新建 Python 文件,命名为
detect.py。 -
粘贴以下示例代码:
# -*- coding: utf-8 -*-
from ultralytics import YOLO
if __name__ == '__main__':
# Load a model
model = YOLO(model=r'b:\2-Python\1-YOLO\YOLOv11\ultralytics-8.3.2\yololin-seg.pt')
model.predict(
source=r'b:\2-Python\1-YOLO\YOLOv11\ultralytics-8.3.2\ultralytics\assets\bus.jpg',
save=True,
show=True,
)
其中:
-
①
model = YOLO(model=r'b:\2-Python\1-YOLO\YOLOv11\ultralytics-8.3.2\yololin-seg.pt'):其中 “路径” 为 YOLO11 模型文件(如 yolo11n-seg.pt)的实际存储路径、。 -
②
model.predict(source=r'b:\2-Python\1-YOLO\YOLOv11\ultralytics-8.3.2\ultralytics\assets\bus.jpg', save=True, show=True):中的路径为需要推理内容的路径,可以是图片或视频 ,save=True表示保存推理结果,show=True表示显示推理过程。
4.3 测试YOL011模型训练
创建yolo训练配置文件data.yaml
train: E:\Desktop\new-yo1ov9\yo1otest\images\train # train images (relative to 'path') 4 images
val: E:\Desktop\new-yo1ov9\yo1otest\images\val # val images (relative to 'path') 4 images
nc: 2
# class names
names: ['dog','cat']
其中:
- train路径为训练集路径,即图片的路径
- val参数填验证集的路径,即图片的路径
- nc填标签类别的总数
- name填类别的名称
创建train.py
# -*- coding: utf-8 -*-
import warnings
warnings.filterwarnings('ignore')
from ultralytics import YOLO
if __name__ == '__main__':
# model.load('yo1ol1n.pt') # 加载预训练权重,改进或者做对比实验时候不建议打开,因为用预训练模型整体精度没有很明显的提升
model = YOLO(model='D:\\2-Python\\1-YOLO\\YOLO\\11\\ultralytics-8.3.2\\ultralytics\\cfg\\models\\11\\yo1ol1.yaml')
model.train(
data='data.yaml',
imgsz=640,
epochs=50,
batch=4,
workers=0,
device='',
optimizer='SGD',
close_mosaic=10,
resume=False,
project='runs/train',
name='exp',
single_cls=False,
cache=False,
)
4.4 导出YOLO11模型(.pt)
训练:
训练完成后,会自动在ultralytics/runs/train文件夹下生成相关训练文件,进入本次的exp文件夹,其中weights权重文件夹下边即为我们所需要的模型,有best.pt和last.pt,exp文件夹下的其他文件为训练信息
推理:
训练完成后,会自动在ultralytics/runs/detect文件夹下生成相关推理文件(如果推理配置了保存),进入本次的predict文件夹,即可看到本次推理文件
5. 安装labelimg
可以在配置好解释器的PyCharm终端安装,也可以在Anacond中安装,在base环境和我们配置的环境中都可以,因为只是用labelimg打标签而已。
安装指令:
如果报错:
尝试:
6. 参考
可参考:YOLOv11来了,使用YOLOv11训练自己的数据集和推理(附YOLOv11网络结构图)
声明:参考文件版权归原作者所有