Ultralytics YOLO 安装与使用教程
一、安装内容说明
使用 Ultralytics YOLO,主要需要安装以下组件:
- Python
- PyTorch
- Ultralytics
- NVIDIA 显卡驱动(使用 NVIDIA GPU 时)
- 可选的 ONNX、OpenVINO 等导出组件
推荐使用虚拟环境安装。虚拟环境只需要创建和安装一次,以后使用时重新激活即可,不需要每次重新安装。
二、Windows 安装方法
1. 检查 Python
打开 PowerShell 或 CMD,输入:
python --version或者:
py --version能够显示类似下面的内容即可:
Python 3.14.3然后检查 pip:
python -m pip --version如果提示找不到 Python,需要先安装 Python,并在安装界面勾选:
Add Python to PATH2. 检查 NVIDIA 显卡驱动
使用 NVIDIA 显卡训练 YOLO,需要先确认系统能够识别显卡:
nvidia-smi正常情况下会显示:
NVIDIA GeForce RTX 3060 Driver Version CUDA Version 显存使用情况如果提示无法识别nvidia-smi,应先安装或更新 NVIDIA 显卡驱动。
3. 创建项目目录
例如在 D 盘创建 YOLO 项目:
D: mkdir yolo_project cd yolo_project也可以进入已有项目目录:
cd C:\Users\admin\Videos\aimlab_training4. 创建虚拟环境
执行:
python -m venv .venv创建完成后,项目目录中会出现:
.venv激活虚拟环境:
PowerShell
.\.venv\Scripts\Activate.ps1CMD
.venv\Scripts\activate.bat成功激活后,命令行开头通常会出现:
(.venv)例如:
(.venv) PS D:\yolo_project>如果 PowerShell 提示禁止运行脚本,可以执行:
Set-ExecutionPolicy -Scope CurrentUser RemoteSigned重新打开 PowerShell,再激活虚拟环境。
5. 更新 pip
python -m pip install --upgrade pip setuptools wheel以后建议始终使用:
python -m pip而不是直接使用:
pip这样可以避免把软件安装到错误的 Python 环境。
三、安装支持 NVIDIA GPU 的 PyTorch
1. RTX 3060 推荐安装方式
安装 CUDA 12.8 版本的 PyTorch:
python -m pip install torch torchvision --index-url https://download.pytorch.org/whl/cu128安装完成后检查:
python -c "import torch; print('PyTorch:', torch.__version__); print('CUDA运行库:', torch.version.cuda); print('GPU可用:', torch.cuda.is_available()); print('显卡:', torch.cuda.get_device_name(0) if torch.cuda.is_available() else '未检测到GPU')"正常结果类似:
PyTorch: 2.x.x+cu128 CUDA运行库: 12.8 GPU可用: True 显卡: NVIDIA GeForce RTX 3060最重要的是:
GPU可用: True如果显示:
GPU可用: False说明当前 PyTorch 无法调用 NVIDIA 显卡。
2. 只使用 CPU
没有 NVIDIA 显卡时,可以安装 CPU 版本:
python -m pip install torch torchvision --index-url https://download.pytorch.org/whl/cpuCPU 也能运行 YOLO,但训练和推理速度通常比 NVIDIA GPU 慢很多。
四、安装 Ultralytics YOLO
执行:
python -m pip install -U ultralytics安装过程中会自动安装 OpenCV、NumPy、Pillow、PyYAML 等依赖。
安装完成后检查版本:
yolo version也可以执行:
python -c "import ultralytics; print(ultralytics.__version__)"运行环境检查:
yolo checks能够正常输出 Python、PyTorch、CUDA、显卡等信息,说明安装基本成功。
五、运行第一次 YOLO 推理
1. 使用命令行推理
执行:
yolo detect predict model=yolo11n.pt source="https://ultralytics.com/images/bus.jpg" imgsz=640 conf=0.25 device=0 save=True第一次运行时会自动下载:
yolo11n.pt参数含义:
detect 目标检测任务 predict 推理模式 model 使用的模型 source 图片、视频或摄像头来源 imgsz 输入模型的图像尺寸 conf 最低置信度阈值 device=0 使用第0块显卡 save=True 保存检测结果检测结果一般保存在:
runs\detect\predict如果多次运行,会依次保存在:
runs\detect\predict2 runs\detect\predict32. 检测本地图片
将图片放到项目目录,例如:
D:\yolo_project\test.jpg运行:
yolo detect predict model=yolo11n.pt source="test.jpg" device=0 show=True save=True3. 检测视频
yolo detect predict model=yolo11n.pt source="test.mp4" imgsz=640 conf=0.25 device=0 show=True save=True4. 使用摄像头
电脑的第一个摄像头通常编号为 0:
yolo detect predict model=yolo11n.pt source=0 device=0 show=True如果存在多个摄像头,可以尝试:
source=1或者:
source=2六、使用 Python 程序运行 YOLO
新建文件:
predict_test.py写入:
import torch from ultralytics import YOLO def main() -> None: print(f"PyTorch版本:{torch.__version__}") print(f"CUDA是否可用:{torch.cuda.is_available()}") if torch.cuda.is_available(): print(f"使用显卡:{torch.cuda.get_device_name(0)}") device = 0 else: print("未检测到CUDA,将使用CPU") device = "cpu" # 第一次运行时会自动下载模型 model = YOLO("yolo11n.pt") model.predict( source="test.jpg", imgsz=640, conf=0.25, device=device, show=True, save=True, ) if __name__ == "__main__": main()运行:
python predict_test.py七、使用自己训练好的 best.pt
例如模型位于:
runs\aimlab_v5nu\weights\best.pt检测图片:
yolo detect predict model="runs\aimlab_v5nu\weights\best.pt" source="test.jpg" imgsz=320 conf=0.1 device=0 show=True save=True检测视频:
yolo detect predict model="runs\aimlab_v5nu\weights\best.pt" source="aimlab_test.mp4" imgsz=320 conf=0.1 device=0 show=True save=TrueWindows 路径中存在空格时,必须使用双引号:
model="C:\Users\admin\Videos\aimlab training\runs\best.pt"八、训练自定义数据集
1. 数据集目录
推荐结构:
dataset ├─ images │ ├─ train │ └─ val └─ labels ├─ train └─ val图片和标签文件名必须对应:
images/train/0001.jpg labels/train/0001.txt2. 编写数据集配置文件
例如创建:
aimlab.yaml内容:
path: C:/Users/admin/Videos/aimlab_training/dataset train: images/train val: images/val nc: 1 names: 0: aimlab_target其中:
nc表示类别数量。
3. 开始训练
yolo detect train model="yolo11n.pt" data="aimlab.yaml" epochs=100 imgsz=320 batch=-1 device=0 workers=4 project="runs" name="aimlab_yolo11n"如果继续使用 YOLOv5 Ultralytics 模型,也可以写成:
yolo detect train model="yolov5nu.pt" data="aimlab.yaml" epochs=100 imgsz=320 batch=-1 device=0 workers=4 project="runs" name="aimlab_v5nu"训练完成后,最佳模型一般位于:
runs\aimlab_yolo11n\weights\best.pt最后一次训练权重位于:
runs\aimlab_yolo11n\weights\last.pt九、导出 ONNX 模型
使用命令行导出:
yolo export model="runs\aimlab_yolo11n\weights\best.pt" format=onnx imgsz=320 opset=12 simplify=True导出完成后一般会生成:
best.onnx也可以用 Python:
from ultralytics import YOLO model = YOLO(r"runs\aimlab_yolo11n\weights\best.pt") model.export( format="onnx", imgsz=320, opset=12, simplify=True, )对于 RK3566 部署,通常流程为:
训练得到 best.pt ↓ 使用 Ultralytics 导出 best.onnx ↓ 使用 RKNN-Toolkit2 转换 best.rknn ↓ 将 best.rknn 复制到 RK3566 ↓ 使用 RKNN Runtime 或 RKNN-Toolkit-Lite2 推理十、Ubuntu或WSL2安装
1. 安装基础工具
sudo apt update sudo apt install -y python3 python3-pip python3-venv2. 创建项目目录
mkdir -p ~/yolo_project cd ~/yolo_project3. 创建虚拟环境
python3 -m venv .venv激活:
source .venv/bin/activate激活成功后会显示:
(.venv)4. 更新 pip
python -m pip install --upgrade pip setuptools wheel5. 安装 PyTorch
NVIDIA GPU 环境:
python -m pip install torch torchvision --index-url https://download.pytorch.org/whl/cu128CPU 环境:
python -m pip install torch torchvision --index-url https://download.pytorch.org/whl/cpu6. 安装 YOLO
python -m pip install -U ultralytics7. 检查环境
python -c "import torch; print(torch.__version__); print(torch.cuda.is_available())"yolo checks十一、虚拟环境下次怎么使用
虚拟环境只需要安装一次。
Windows 下次使用:
cd D:\yolo_project .\.venv\Scripts\Activate.ps1Ubuntu或WSL2下次使用:
cd ~/yolo_project source .venv/bin/activate退出虚拟环境:
deactivate关闭终端以后,虚拟环境会自动退出,但其中安装的软件不会消失。
十二、常见问题
1. 提示“yolo不是内部或外部命令”
原因通常是虚拟环境没有激活。
Windows:
.\.venv\Scripts\Activate.ps1Ubuntu:
source .venv/bin/activate然后重新安装或检查:
python -m pip install -U ultralytics yolo version2. CUDA不可用
执行:
nvidia-smi然后执行:
python -c "import torch; print(torch.__version__); print(torch.version.cuda); print(torch.cuda.is_available())"常见原因包括:
- 安装了 CPU 版本的 PyTorch
- NVIDIA 驱动没有安装
- 虚拟环境中使用了另一个 Python
- pip 和 python 不属于同一个环境
- 当前显卡驱动不支持所安装的 CUDA 运行库
可以先卸载 PyTorch:
python -m pip uninstall -y torch torchvision torchaudio再重新安装 GPU 版本:
python -m pip install torch torchvision --index-url https://download.pytorch.org/whl/cu1283. 显存不足
训练时出现:
CUDA out of memory可以减小以下参数:
batch imgsz 模型大小例如:
yolo detect train model=yolo11n.pt data=aimlab.yaml epochs=100 imgsz=320 batch=8 device=0仍然显存不足时:
yolo detect train model=yolo11n.pt data=aimlab.yaml epochs=100 imgsz=256 batch=4 device=04. 下载速度慢
可以先安装 GPU 版 PyTorch,然后用镜像安装 Ultralytics:
python -m pip install -U ultralytics -i https://pypi.tuna.tsinghua.edu.cn/simple不要直接用普通镜像安装全部依赖后再判断 CUDA,因为镜像可能安装到 CPU 版本的 PyTorch。
5. 安装环境混乱
最简单的处理方式是重新建立干净的虚拟环境:
Windows:
deactivate rmdir /s /q .venv python -m venv .venv .\.venv\Scripts\activatePowerShell 删除目录可以使用:
Remove-Item -Recurse -Force .venv然后重新安装:
python -m pip install --upgrade pip python -m pip install torch torchvision --index-url https://download.pytorch.org/whl/cu128 python -m pip install -U ultralytics十三、针对RK3566项目的推荐安装位置
YOLO训练环境建议安装在:
Windows电脑 或者 WSL2 Ubuntu主要用于:
训练模型 测试 best.pt 导出 ONNX 转换 RKNNRK3566板端通常不需要安装完整的 PyTorch 和 Ultralytics训练环境,而是运行:
RKNN-Toolkit-Lite2 Python接口 或者 RKNN Runtime C/C++接口因此完整部署路径为:
Windows训练 ↓ best.pt ↓ WSL2导出/转换 ↓ best.onnx ↓ best.rknn ↓ RK3566运行RKNN推理