🚀 什么是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环境配置完成!