chiachan
chiachan
Published on 2025-03-17 / 15 Visits
0

虚拟机部署ultralytics训练yolo11模型

虚拟机部署ultralytics训练yolo11模型

设备信息

  • ubuntu server 24.01虚拟机, 可以参考这个部署
  • 分配100G以上的硬盘
  • 分配8g以上内存

环境准备

1. 安装依赖

确保系统已安装以下依赖:

  • Python 3.11 或更高版本
  • pip 工具
  • venv虚拟环境

sudo apt update
# sudo apt install python3.11 python3-pip -y
# 默认安装了python3.12
sudo apt install python3-pip -y
# 安装虚拟环境管理venv
sudo apt install python3-venv

2. 创建虚拟环境

为了隔离环境,建议创建一个虚拟环境。

python3 -m venv yolo_env
# 将下面一行添加到.bashrc, 方便后续直接使用(如果本机上需要多个虚拟环境,则每次都执行吧)
source yolo_env/bin/activate

3. 安装ultralytics库

在虚拟环境中安装 ultralytics 库。

pip install ultralytics

或者从源代码安装最新版本:

pip install git+https://github.com/ultralytics/ultralytics@main

4. 安装onnx库

在虚拟环境中安装 ultralytics 库。

pip install onnx

5. 安装PyTorch

pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu

6. 安装缺失的库(如果是nvidia显卡,自行找其他方式,我没试过)

sudo apt update
sudo apt install libgl1 libglx-mesa0 -y

训练模型

1. 下载预训练模型

YOLO11 提供了多种预训练模型,例如 yolo11n.pt。可以直接加载这些模型进行微调或预测。

from ultralytics import YOLO

model = YOLO('yolo11n.pt')  # 加载预训练模型

2. 数据集准备

YOLO11 支持多种任务类型的数据集格式,包括检测、分割、分类和姿态估计。以 COCO 格式为例,数据集需要包含 train.yamlval.yaml 文件。

示例:COCO8 数据集, 更多详细实例见ultralytics/cfg/datasets

# coco8.yaml
train: ../datasets/coco8/images/train/
val: ../datasets/coco8/images/val/

nc: 80
names: ['person', 'bicycle', 'car', ...]

3. 开始训练

使用 model.train() 方法进行模型训练。

model.train(data='coco8.yaml', epochs=3, imgsz=640)
  • data: 数据集配置文件路径。
  • epochs: 训练轮数。
  • imgsz: 输入图像大小。

4. 验证模型

训练完成后,可以使用验证集评估模型性能。

results = model.val()

5. 模型预测

在单张图片上进行预测。

results = model('https://ultralytics.com/images/bus.jpg')

6. 导出模型

将训练好的模型导出为其他格式,例如 ONNX。

success = model.export(format='onnx')

整合脚本:

from ultralytics import YOLO

# Load a model
model = YOLO('yolo11n.yaml')  # build a new model from scratch
model = YOLO('yolo11n.pt')  # load a pretrained model (recommended for training)

# Use the model
results = model.train(data='coco8.yaml', epochs=3)  # train the model
results = model.val()  # evaluate model performance on the validation set
results = model('https://ultralytics.com/images/bus.jpg')  # predict on an image
results = model.export(format='onnx')  # export the model to ONNX format

常用命令

1. 使用 CLI 进行预测

yolo predict model=yolo11n.pt source='https://ultralytics.com/images/zidane.jpg'

2. 验证模型

yolo val model=yolo11n.pt data=coco8.yaml

3. 导出模型

yolo export model=yolo11n.pt format=torchscript

性能优化

1. GPU 加速

确保系统已安装 NVIDIA CUDA 和 cuDNN,并正确配置 GPU 环境。

pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124

2. TensorRT 导出

对于高性能推理,可以将模型导出为 TensorRT 格式。

yolo export model=yolo11n.pt format=tensorrt

参考资料

以上是在 Ubuntu Server 24.04 上部署 YOLO11 训练环境的完整步骤,按照上述指南操作即可快速搭建并开始训练模型。