Linux环境下YOLOv5配置完整指南

从零开始搭建深度学习目标检测环境

🚀 什么是YOLOv5?

YOLOv5(You Only Look Once version 5)是当前最流行的实时目标检测算法之一。它能够在图像中快速准确地识别和定位多个物体,广泛应用于安防监控、自动驾驶、工业检测等领域。本指南将带你在Linux环境下从零开始配置YOLOv5开发环境。

高性能

实时检测,速度快

🎯

高精度

准确识别多种目标

🔧

易使用

简单易上手的API

1安装Anaconda/Miniconda

首先我们需要安装Python包管理工具。Miniconda是轻量级的选择,包含了conda包管理器和Python。

# 下载Miniconda安装包
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh

# 运行安装程序
bash Miniconda3-latest-Linux-x86_64.sh

# 重新加载bash配置
source ~/.bashrc

小贴士

如果下载速度慢,可以使用国内镜像源,如清华大学镜像:https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/

2创建专用虚拟环境

为了避免包冲突,我们创建一个专门用于YOLOv5的Python虚拟环境。

# 创建名为yolov5的Python 3.8环境
conda create -n yolov5 python=3.8 -y

# 激活环境
conda activate yolov5

注意事项

建议使用Python 3.8版本,因为它与YOLOv5的兼容性最好。Python版本过高或过低可能会导致依赖包安装失败。

3下载YOLOv5源码

从GitHub克隆官方YOLOv5仓库到本地。

# 克隆YOLOv5仓库
git clone https://github.com/ultralytics/yolov5.git

# 进入项目目录
cd yolov5

4安装PyTorch深度学习框架

PyTorch是YOLOv5的核心依赖。根据你的硬件配置选择合适的版本:

🖥️ 如果有NVIDIA GPU(推荐):

# 首先检查CUDA版本
nvidia-smi

# 安装支持CUDA 11.8的PyTorch
conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia

# 或安装支持CUDA 12.1的PyTorch
conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia

💻 如果只有CPU:

# 安装CPU版本的PyTorch
conda install pytorch torchvision torchaudio cpuonly -c pytorch

性能提示

GPU版本的训练速度比CPU快10-100倍!如果你计划训练自己的模型,强烈建议使用支持CUDA的GPU。

5安装YOLOv5依赖包

安装YOLOv5运行所需的所有Python包。

# 方法1:一键安装所有依赖(推荐)
pip install -r requirements.txt

# 方法2:手动安装主要依赖
pip install opencv-python pillow pyyaml requests scipy tqdm tensorboard seaborn pandas

安装进度:75% 完成

6验证安装

运行测试命令确保一切正常工作。

# 使用预训练模型测试目标检测
python detect.py --weights yolov5s.pt --source data/images/

# 验证PyTorch GPU支持
python -c "import torch; print('CUDA available:', torch.cuda.is_available())"

# 检查YOLOv5版本
python -c "import yolov5; print(yolov5.__version__)"

成功标志

如果看到检测结果保存在runs/detect/文件夹中,并且CUDA显示为True(GPU版本),说明安装成功!

7常见问题解决

🔧 OpenCV相关问题:

# 解决OpenCV冲突
pip uninstall opencv-python opencv-python-headless -y
pip install opencv-python-headless

🔧 权限问题:

# 添加执行权限
chmod +x detect.py train.py val.py

🔧 内存不足问题:

# 使用较小的batch size
python train.py --batch-size 8 # 默认是16

常见错误

如果遇到"ModuleNotFoundError"错误,通常是因为忘记激活yolov5环境。请确保每次使用前都运行conda activate yolov5

8环境管理与维护

掌握这些命令,让你的开发环境管理更轻松。

# 激活YOLOv5环境
conda activate yolov5

# 退出当前环境
conda deactivate

# 查看已安装的包
conda list

# 导出环境配置(方便在其他机器上复现)
conda env export > yolov5_env.yml

# 从配置文件创建环境
conda env create -f yolov5_env.yml

# 删除环境(如果不再需要)
conda env remove -n yolov5

9下一步:开始使用YOLOv5

环境配置完成后,你可以开始探索YOLOv5的强大功能:

📷

图像检测

检测图片中的物体

🎥

视频检测

实时视频流检测

🏋️

模型训练

训练自定义数据集

# 检测单张图片
python detect.py --weights yolov5s.pt --source path/to/image.jpg

# 检测视频
python detect.py --weights yolov5s.pt --source path/to/video.mp4

# 使用摄像头实时检测
python detect.py --weights yolov5s.pt --source 0

# 训练自定义数据集
python train.py --data custom_dataset.yaml --weights yolov5s.pt --epochs 100

🎉 恭喜!YOLOv5环境配置完成!