一、硬件要求(按优先级 / 场景划分)
YOLO 训练 / 推理对硬件的需求差异较大,以下分 "最低可用""推荐配置""工业级配置" 三档,适配不同场景:
| 硬件组件 | 最低可用(仅学习 / CPU 推理) | 推荐配置(GPU 训练 / 实时推理) | 工业级配置(大规模训练 / 高并发) |
|---|---|---|---|
| CPU | 4 核 Intel i5/AMD Ryzen 5 | 8 核 Intel i7/i9/AMD Ryzen 7+ | 16 核 Intel Xeon/AMD EPYC |
| GPU | 无(仅 CPU) | NVIDIA GTX 1660/RTX 3060(6-8G 显存) | NVIDIA RTX 3090/4090/A100(24G + 显存) |
| 内存 | 8G DDR4 | 16G DDR4/DDR5 | 32G+ DDR5 |
| 硬盘 | 100G 机械硬盘(HDD) | 512G 固态硬盘(SSD) | 2T NVMe SSD(训练数据集 / 模型存储) |
| 其他 | - | 支持 CUDA 的主板 / 500W 以上电源 | 多 GPU 集群 / 散热系统 |
关键提醒:
- GPU 是核心:NVIDIA 显卡必须支持CUDA(算力≥6.0,如 GTX 10 系列及以上),AMD 显卡适配性差(需用 ROCm,仅部分版本支持);
- 显存决定 batch size:8G 显存可设 batch=8-16,24G 显存可设 batch=32-64,显存越小训练速度越慢;
- 推理端轻量化:嵌入式设备(Jetson Nano / 树莓派)仅需 2G 显存,适配 YOLOv8n 等轻量化模型。
二、软件环境(分系统 + 步骤)
1. 操作系统选择
| 系统 | 优势 | 适配场景 |
|---|---|---|
| Windows 10/11 | 易用、可视化工具友好 | 新手学习、单机训练 |
| Ubuntu 18.04+/20.04+ | 稳定性高、CUDA 适配最好 | 大规模训练、服务器部署 |
| macOS | 适配 M1/M2 芯片,无需额外配置 | 轻量推理、代码调试 |
2. 核心软件安装步骤(通用流程)
步骤 1:安装 Python(核心版本)
- 推荐版本:3.7~3.10(3.11 + 部分依赖库未适配);
- 安装方式:
- Windows/Mac:从Python 官网下载安装包,勾选「Add Python to PATH」;
- Ubuntu:
sudo apt update && sudo apt install python3.9 python3.9-pip python3.9-venv;
- 验证:终端输入
python --version(Windows)/python3 --version(Linux/Mac),显示对应版本即可。
步骤 2:安装 CUDA+cuDNN(GPU 必备)
- 版本匹配:CUDA 11.7/11.8(适配 PyTorch 2.0+),cuDNN 需与 CUDA 版本对应;
- 安装步骤:
- 卸载旧版本:
sudo apt purge nvidia*(Ubuntu)/ 控制面板卸载(Windows); - 下载 CUDA:从NVIDIA 官网选对应系统版本安装;
- 下载 cuDNN:登录 NVIDIA 账号后,下载对应 CUDA 版本的 cuDNN,解压后复制到 CUDA 安装目录;
- 验证:
nvcc -V(终端),显示 CUDA 版本即成功。
- 卸载旧版本:
步骤 3:安装核心依赖库
python
# 升级pip(避免安装失败)
python -m pip install --upgrade pip
# 基础依赖(图像处理/数值计算)
pip install opencv-python numpy matplotlib pillow
# YOLO专用依赖(Ultralytics库,适配v5/v8)
pip install ultralytics
# 可选:数据标注/可视化工具
pip install labelImg pycocotools seaborn
步骤 4:安装深度学习框架(见第三部分)
3. 环境验证
运行以下代码,无报错则环境正常:
python
import torch
import cv2
from ultralytics import YOLO
# 验证GPU/CUDA
print(f"CUDA可用:{torch.cuda.is_available()}")
print(f"GPU数量:{torch.cuda.device_count()}")
# 验证YOLO
model = YOLO("yolov8n.pt")
results = model.predict("https://ultralytics.com/images/bus.jpg")
print(f"检测结果:{results[0].names}")
三、框架选择(对比 + 适配场景)
YOLO 主流适配 PyTorch/TensorFlow,以下是详细对比和选型建议:
| 维度 | PyTorch(推荐) | TensorFlow/Keras |
|---|---|---|
| YOLO 版本适配 | 完美支持 YOLOv5/v6/v7/v8(官方首选) | 仅适配 YOLOv3/v4(第三方移植) |
| 易用性 | 代码简洁、调试友好,新手易上手 | 语法相对复杂,学习成本高 |
| 生态支持 | GitHub 开源项目多,问题解决资源丰富 | 工业级文档完善,部署工具多 |
| 训练灵活性 | 动态图模式,改代码即时生效 | 静态图模式,需重新编译 |
| 部署适配 | 支持 ONNX/TensorRT/OpenVINO | 支持 TFLite/Core ML(移动端) |
| 硬件加速 | CUDA 适配最优,推理速度快 | 适配 TPU,大规模分布式训练强 |
| 适用场景 | 新手学习、科研、单机 / 服务器部署 | 工业级大规模训练、移动端部署 |
选型建议:
- 新手 / 主流场景 :选 PyTorch + Ultralytics 库(YOLOv8 官方维护,一键安装 / 训练);
- 安装命令:
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118(CUDA 11.8);
- 安装命令:
- 移动端部署:选 TensorFlow + YOLOv3/v4(转 TFLite 格式);
- 大规模分布式训练:选 TensorFlow + TFRecord 数据集(适配多 GPU/TPU 集群);
- 嵌入式设备(Jetson):选 PyTorch + TensorRT(NVIDIA 官方优化,推理速度最快)。
避坑提醒:
- Windows 安装 CUDA 后,需手动配置环境变量(CUDA_PATH、PATH 添加 bin/lib 目录);
- 虚拟环境建议:用
conda/venv隔离环境,避免依赖冲突(python -m venv yolo-env); - macOS M1/M2 芯片:无需安装 CUDA,PyTorch 默认适配 Metal 加速,直接
pip install torch即可。
四、不同系统的 YOLO 环境搭建一键脚本(Windows/Ubuntu/macOS)
以下是适配Windows/Ubuntu/macOS三大系统的 YOLO 环境搭建一键脚本,涵盖 Python、CUDA(仅 NVIDIA GPU)、核心依赖、框架安装,新手直接复制运行即可:
通用说明
- 脚本需在管理员 /root 权限 下运行(Windows 右键终端→以管理员身份运行;Ubuntu 加
sudo); - 优先用虚拟环境隔离依赖,避免污染系统环境;
- 标注:
# [可选]为非必需步骤(如 CUDA 仅 GPU 需要,macOS M 芯片无需 CUDA)。
一、Windows 系统(CMD/PowerShell 脚本)
bash
@echo off
chcp 65001 >nul 2>&1
echo ====================== 开始搭建YOLO环境 ======================
:: 1. 创建并激活虚拟环境
echo 【1/5】创建虚拟环境 yolo-env
python -m venv yolo-env
call yolo-env\Scripts\activate.bat
:: 2. 升级pip并安装基础依赖
echo 【2/5】安装基础依赖库
python -m pip install --upgrade pip
pip install opencv-python numpy matplotlib pillow labelImg pycocotools -i https://pypi.tuna.tsinghua.edu.cn/simple
:: 3. 安装PyTorch+CUDA(GPU版,CUDA 11.8)
echo 【3/5】安装PyTorch(GPU版)
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
:: # [可选] CPU版PyTorch(无NVIDIA GPU时执行)
:: pip install torch torchvision torchaudio -i https://pypi.tuna.tsinghua.edu.cn/simple
:: 4. 安装YOLO核心库(Ultralytics适配v8/v5)
echo 【4/5】安装YOLO官方库
pip install ultralytics -i https://pypi.tuna.tsinghua.edu.cn/simple
:: 5. 环境验证
echo 【5/5】验证环境
python -c "import torch, cv2; from ultralytics import YOLO; print('CUDA可用:', torch.cuda.is_available()); print('YOLO导入成功'); print('OpenCV版本:', cv2.__version__)"
echo ====================== 环境搭建完成 ======================
echo 激活环境命令:yolo-env\Scripts\activate.bat
pause
运行方式:
- 新建
yolo_windows_setup.bat文件,复制上述代码; - 右键→以管理员身份运行;
- 若提示 "Python 未找到":先安装 Python 3.8-3.10 并勾选「Add Python to PATH」。
二、Ubuntu/Linux 系统(Shell 脚本)
bash
#!/bin/bash
echo -e "\033[32m====================== 开始搭建YOLO环境 ======================\033[0m"
# 1. 更新系统并安装Python3.9
echo -e "\033[33m【1/6】安装Python3.9\033[0m"
sudo apt update && sudo apt install -y python3.9 python3.9-dev python3.9-venv python3-pip
# 2. 创建并激活虚拟环境
echo -e "\033[33m【2/6】创建虚拟环境 yolo-env\033[0m"
python3.9 -m venv yolo-env
source yolo-env/bin/activate
# 3. 升级pip并安装基础依赖
echo -e "\033[33m【3/6】安装基础依赖库\033[0m"
pip install --upgrade pip
pip install opencv-python numpy matplotlib pillow labelImg pycocotools -i https://pypi.tuna.tsinghua.edu.cn/simple
# 4. [可选] 安装CUDA 11.8(NVIDIA GPU)
echo -e "\033[33m【4/6】安装CUDA依赖(可选)\033[0m"
sudo apt install -y nvidia-driver-535
wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.run
sudo sh cuda_11.8.0_520.61.05_linux.run --silent --toolkit
echo "export PATH=/usr/local/cuda-11.8/bin:\$PATH" >> ~/.bashrc
echo "export LD_LIBRARY_PATH=/usr/local/cuda-11.8/lib64:\$LD_LIBRARY_PATH" >> ~/.bashrc
source ~/.bashrc
# 5. 安装PyTorch+YOLO核心库
echo -e "\033[33m【5/6】安装PyTorch+YOLO库\033[0m"
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
# 无GPU时替换为:pip install torch torchvision torchaudio -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install ultralytics -i https://pypi.tuna.tsinghua.edu.cn/simple
# 6. 环境验证
echo -e "\033[33m【6/6】验证环境\033[0m"
python -c "import torch, cv2; from ultralytics import YOLO; print('CUDA可用:', torch.cuda.is_available()); print('YOLO导入成功'); print('OpenCV版本:', cv2.__version__)"
echo -e "\033[32m====================== 环境搭建完成 ======================\033[0m"
echo -e "激活环境命令:source yolo-env/bin/activate"
运行方式:
- 新建
yolo_ubuntu_setup.sh文件,复制上述代码; - 赋予执行权限:
chmod +x yolo_ubuntu_setup.sh; - 运行:
sudo ./yolo_ubuntu_setup.sh; - 若无需 CUDA:删除第 4 步 "安装 CUDA 11.8" 相关代码。
三、macOS 系统(Shell 脚本,适配 Intel/M1/M2 芯片)
bash
#!/bin/bash
echo -e "\033[32m====================== 开始搭建YOLO环境 ======================\033[0m"
# 1. 安装Homebrew(无则安装)
if ! command -v brew &> /dev/null; then
echo -e "\033[33m【1/5】安装Homebrew\033[0m"
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
fi
# 2. 安装Python3.9
echo -e "\033[33m【2/5】安装Python3.9\033[0m"
brew install python@3.9
ln -s /usr/local/bin/python3.9 /usr/local/bin/python
# 3. 创建并激活虚拟环境
echo -e "\033[33m【3/5】创建虚拟环境 yolo-env\033[0m"
python -m venv yolo-env
source yolo-env/bin/activate
# 4. 安装依赖+PyTorch+YOLO
echo -e "\033[33m【4/5】安装依赖库\033[0m"
pip install --upgrade pip
pip install opencv-python numpy matplotlib pillow labelImg pycocotools -i https://pypi.tuna.tsinghua.edu.cn/simple
# M1/M2芯片自动适配Metal加速,无需CUDA
pip install torch torchvision torchaudio -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install ultralytics -i https://pypi.tuna.tsinghua.edu.cn/simple
# 5. 环境验证
echo -e "\033[33m【5/5】验证环境\033[0m"
python -c "import torch, cv2; from ultralytics import YOLO; print('MPS可用(M1/M2):', torch.backends.mps.is_available()); print('YOLO导入成功'); print('OpenCV版本:', cv2.__version__)"
echo -e "\033[32m====================== 环境搭建完成 ======================\033[0m"
echo -e "激活环境命令:source yolo-env/bin/activate"
运行方式:
- 新建
yolo_macos_setup.sh文件,复制上述代码; - 赋予执行权限:
chmod +x yolo_macos_setup.sh; - 运行:
./yolo_macos_setup.sh; - M1/M2 芯片验证时,
torch.backends.mps.is_available()返回True即加速生效。
避坑补充
- 若 pip 安装慢:全程添加清华镜像
-i https://pypi.tuna.tsinghua.edu.cn/simple; - 虚拟环境激活后,终端前缀会显示
(yolo-env),代表环境生效; - 验证失败排查:
- CUDA 问题:检查 NVIDIA 驱动版本是否匹配 CUDA(如 535 驱动适配 CUDA 11.8);
- 依赖缺失:重新运行
pip install -r https://raw.githubusercontent.com/ultralytics/ultralytics/main/requirements.txt。