YOLOv5 环境配置指南

[复制链接]
发表于 2025-7-2 17:06:23 | 显示全部楼层 |阅读模式

系统要求



  • Windows/Linux/MacOS
  • NVIDIA GPU (推荐) 或 CPU
  • Python 3.8+
  • CUDA 11.8+ (如果使用 GPU)
安装步骤

1. 安装 Conda

如果还没有安装 Conda,请先从官网下载并安装 Miniconda。
2. 创建假造环境

  1. # 创建名为 yolov5 的新环境,使用 Python 3.8
  2. conda create -n yolov5 python=3.8 -y
  3. # 激活环境
  4. conda activate yolov5
复制代码
3. 安装 NVIDIA 驱动和 CUDA


  • 访问 NVIDIA 驱动下载页面 下载并安装最新的显卡驱动
  • 检查 NVIDIA 驱动安装:
  1. # 查看显卡和驱动信息
  2. nvidia-smi
复制代码
4. 安装 CUDA 和 cuDNN


  • 访问 NVIDIA CUDA 下载页面 下载 CUDA 11.8
  • 安装 CUDA 11.8,按照安装向导完成安装
  • 访问 NVIDIA cuDNN 下载页面(须要注册 NVIDIA 账户)
  • 下载 cuDNN v8.9.x 版本(与 CUDA 11.8 兼容):

    • 访问 cuDNN 下载页面
    • 选择 “Download cuDNN v8.9.x for CUDA 11.x”
    • 下载实用于 Windows 的 zip 文件

  • 解压下载的 cuDNN 文件,将文件复制到 CUDA 目次:
  1. # 假设 cuDNN 解压在 D:\Downloads\cudnn_11.8
  2. # 复制文件到 CUDA 目录
  3. $CUDA_PATH = "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8"
  4. $CUDNN_PATH = "C:\cuDNN\cudnn"
  5. # 复制 bin 文件
  6. Copy-Item "$CUDNN_PATH\bin\*" "$CUDA_PATH\bin"
  7. # 复制 include 文件
  8. Copy-Item "$CUDNN_PATH\include\*" "$CUDA_PATH\include"
  9. # 复制 lib 文件
  10. Copy-Item "$CUDNN_PATH\lib\*" "$CUDA_PATH\lib\x64"
复制代码

  • 验证 CUDA 安装:
  1. # 检查 CUDA 版本
  2. nvcc --version
  3. # 检查 CUDA 样例
  4. cd "C:\ProgramData\NVIDIA Corporation\CUDA Samples\v11.8\1_Utilities\deviceQuery"
  5. nvcc deviceQuery.cu -o deviceQuery.exe
  6. .\deviceQuery.exe
复制代码
4. 安装 PyTorch

根据你的 CUDA 版本选择符合的安装命令:
对于 CUDA 11.8:
  1. pip install torch torchvision torchaudio
  2. --index-url https://download.pytorch.org/whl/cu118
复制代码
对于 CPU 版本:
  1. pip install torch torchvision torchaudio
复制代码
4. 安装 YOLOv5

  1. # 使用 ultralytics 包(推荐)
  2. pip install ultralytics
  3. # 或者从源码安装
  4. git clone https://github.com/ultralytics/yolov5
  5. cd yolov5
  6. pip install --trusted-host pypi.org --trusted-host files.pythonhosted.org -r requirements.txt
复制代码
5. 验证安装

5.1 CUDA和cuDNN测试脚本

创建文件 test_cuda_cudnn.py:
  1. import torch
  2. import torch.backends.cudnn as cudnn
  3. def test_cuda_cudnn():
  4.     print("PyTorch version:", torch.__version__)
  5.    
  6.     # 检查CUDA是否可用
  7.     print("\nCUDA是否可用:", torch.cuda.is_available())
  8.     if torch.cuda.is_available():
  9.         print("CUDA版本:", torch.version.cuda)
  10.         print("当前CUDA设备:", torch.cuda.current_device())
  11.         print("CUDA设备名称:", torch.cuda.get_device_name(0))
  12.    
  13.     # 检查cuDNN是否可用
  14.     print("\ncuDNN是否可用:", cudnn.is_available())
  15.     if cudnn.is_available():
  16.         print("cuDNN版本:", cudnn.version())
  17.         print("cuDNN是否已启用:", cudnn.enabled)
  18. if __name__ == "__main__":
  19.     test_cuda_cudnn()
复制代码
5.2 YOLOv5 GPU测试脚本

创建文件 test.py:
  1. import torch
  2. from ultralytics import YOLO
  3. # 检查 CUDA 是否可用
  4. print(f"CUDA is available: {torch.cuda.is_available()}")
  5. print(f"PyTorch version: {torch.__version__}")
  6. # 设置默认设备为GPU
  7. device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
  8. print(f"Using device: {device}")
  9. # 如果有GPU,显示GPU信息
  10. if torch.cuda.is_available():
  11.     print(f"GPU: {torch.cuda.get_device_name(0)}")
  12. try:
  13.     # 加载改进版模型到GPU
  14.     print("\n正在加载模型...")
  15.     model = YOLO("yolov5su.pt")  # 使用改进的u版本模型
  16.     model.to(device)  # 将模型移到GPU
  17.    
  18.     # 打印模型信息
  19.     print("\n模型加载成功!")
  20.     print(f"模型类型: {type(model)}")
  21.     print(f"模型任务: {model.task}")
  22.     print(f"模型使用设备: {model.device}")
  23.    
  24.     # 尝试进行一次简单预测来验证模型
  25.     print("\n正在进行测试预测...")
  26.     # 使用一个示例图像,如果没有,可以注释掉这行
  27.     # results = model("path/to/test/image.jpg")
  28.     # print("预测完成!结果:", results)
  29.    
  30. except Exception as e:
  31.     print(f"\n错误: 模型加载或预测失败\n{str(e)}")
复制代码
5.3 cuDNN安装脚本

创建文件 setup_cudnn.ps1:
  1. # Script to copy cuDNN files to CUDA directory
  2. $CUDA_PATH = "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8"
  3. $CUDNN_PATH = "C:\cuDNN\cudnn"
  4. # Create directories if they don't exist
  5. if (-not (Test-Path "$CUDA_PATH\bin")) {
  6.     New-Item -ItemType Directory -Path "$CUDA_PATH\bin" -Force
  7. }
  8. if (-not (Test-Path "$CUDA_PATH\include")) {
  9.     New-Item -ItemType Directory -Path "$CUDA_PATH\include" -Force
  10. }
  11. if (-not (Test-Path "$CUDA_PATH\lib\x64")) {
  12.     New-Item -ItemType Directory -Path "$CUDA_PATH\lib\x64" -Force
  13. }
  14. # Copy bin files
  15. Write-Host "Copying bin files..."
  16. Copy-Item "$CUDNN_PATH\bin\*" "$CUDA_PATH\bin" -Force
  17. # Copy include files
  18. Write-Host "Copying include files..."
  19. Copy-Item "$CUDNN_PATH\include\*" "$CUDA_PATH\include" -Force
  20. # Copy lib files
  21. Write-Host "Copying lib files..."
  22. Copy-Item "$CUDNN_PATH\lib\*" "$CUDA_PATH\lib\x64" -Force
  23. Write-Host "cuDNN setup completed!"
复制代码
常见题目


  • CUDA 错误

    • 确保已安装精确版本的 NVIDIA 驱动
    • 确保 PyTorch 和 CUDA 版本匹配

  • 内存不足

    • 减小批处理大小
    • 使用更小的模型(如 yolov5s 而不是 yolov5x)

  • 依赖冲突

    • 建议在干净的假造环境中安装
    • 按照版本要求严格安装依赖

其他资源



  • YOLOv5 官方文档
  • PyTorch 安装指南
  • CUDA 工具包下载

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
继续阅读请点击广告

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

×
登录参与点评抽奖,加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表