YOLOv5配置过程详解
测试结果展示:
目录
参考:
YOLOv5(PyTorch)目标检测:原理与源码解析-yolov5损失函数,yolov5检测框,yolov5非极大值抑制-深度学习视频教程-人工智能-优快云程序员研修院
〇、相关项简介
CUDA(Compute Unified Device Architecture,统一计算架构)是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。
cuDNN 是基于CUDA的用于深度神经网络的GPU加速库,有了它才能在GPU上完成深度学习的计算。
cuDNN是插入式设计,即所谓安装只需把cuDNN文件复制到CUDA对应文件夹就可以了。
(关于CUDA 与 cuDNN,CUDA与cuDNN - 简书)
Anaconda 是一个用于科学计算的Python发行版,里面预装好了conda、某个版本的python以及一般可能用到的numpy、scipy、pandas等常见的科学计算包及其依赖项。
Conda 是一个包管理器。
PyTorch 是torch的python版本,是由facebook开源的神经网络框架,专门针对GPU加速的深度神经网络(DNN)编程。
Torch 是一个经典的对多维矩阵数据进行操作的张量(tensor)库。
(关于PyTorch 与 Torch,pytorch简介_bestrivern的博客-优快云博客_pytorch简介)
相关官网:
英伟达CUDA Toolkit历史工具包的网址:
https://developer.nvidia.com/cuda-toolkit-archive
cuDNN官网
https://developer.nvidia.com/cudnn
pytorch官网
https://pytorch.org/get-started/locally/
pytorch历史版本
https://pytorch.org/get-started/previous-versions/
以下演示示例环境为Windows10/11操作系统,Linux操作系统官网查询下载链接时请选择对应操作系统。
一、CUDA&cuDNN
(一)Windows
Windows11安装CUDA11.8(包含环境配置),参考:
Windows11安装CUDA11.3(包含环境配置),参考
Windows11安装CUDA10.2,如下:
1.官网下载CUDA
查看本机支持的CUDA版本
nvidia-smi
选择安装的CUDA版本号 <= 支持的CUDA版本号
这里(2021年),我使用cuda10.2,建议可以使用显卡支持的更高版本。
英伟达CUDA Toolkit历史工具包的网址:
https://developer.nvidia.com/cuda-toolkit-archive
2.官网下载cuDNN
cuDNN官网
https://developer.nvidia.com/cudnn
注意与CUDA版本相匹配!
3.安装CUDA
注:安装位置建议保持默认位置。
我为了更清晰地查看安装目录,更改了安装位置。不推荐。
3.1temp_path(默认就好)
该位置的文件只是按照时的临时文件,安装完成后会自动删除的。
默认:
我的位置:
3.2自定义选项
可以全选,因为里面的一些项目我已经安装,故未勾选:
3.3选择安装位置(建议默认)
建议选择默认安装位置,但我选择自定义安装位置。
默认位置:
我的安装位置:
3.4安装结果:
3.5 在系统中添加五个环境变量
按照默认安装位置的路径: C:\ProgramData\NVIDIA Corporation\CUDA Samples\v10.2添加如下五个:
CUDA_SDK_PATH = C:\ProgramData\NVIDIA Corporation\CUDA Samples\v10.2
CUDA_LIB_PATH = %CUDA_PATH%\lib\x64
CUDA_BIN_PATH = %CUDA_PATH%\bin
CUDA_SDK_BIN_PATH = %CUDA_SDK_PATH%\bin\win64
CUDA_SDK_LIB_PATH = %CUDA_SDK_PATH%\common\lib\x64
绿框中为自动添加的,需手动添加红框中的其余五个:
(图示为按照我的安装路径设置的环境变量,默认安装路径按照上述文字设置即可)
3.6 在系统变量 Path 的末尾添加环境变量
添加位置:
3.6.1添加
%CUDA_LIB_PATH%;%CUDA_BIN_PATH%;%CUDA_SDK_LIB_PATH%;%CUDA_SDK_BIN_PATH%;
3.6.2添加另外五个环境变量
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\lib\x64
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\include
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\extras\CUPTI\lib64
C:\ProgramData\NVIDIA Corporation\CUDA Samples\v10.2\bin\win64
C:\ProgramData\NVIDIA Corporation\CUDA Samples\v10.2\common\lib\x64
添加后的变量如下:(图示为按照我的安装路径设置的环境变量,默认安装路径按照上述文字设置即可)
4.安装cuDNN
4.1解压
解压下载好的压缩包,得到cuda文件夹:
cuda文件夹中的结构:
4.2复制
将解压出的cuda文件夹中对应文件夹的文件复制到NVIDIA GPU Computing Toolkit\CUDA\v10.2\对应文件夹中
复制到
include文件夹 、lib/x64文件夹中的文件同理
5.测试安装成功
nvcc -V
(二)Linux
以CUDA11.6为例
参考:
CUDA11.6网站:
按照网站中的命令进行安装
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin
sudo mv cuda-ubuntu2004.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget https://developer.download.nvidia.com/compute/cuda/11.6.0/local_installers/cuda-repo-ubuntu2004-11-6-local_11.6.0-510.39.01-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu2004-11-6-local_11.6.0-510.39.01-1_amd64.deb
sudo apt-key add /var/cuda-repo-ubuntu2004-11-6-local/7fa2af80.pub
sudo apt-get update
sudo apt-get -y install cuda
其中
wget https://developer.download.nvidia.com/compute/cuda/11.6.0/local_installers/cuda-repo-ubuntu2004-11-6-local_11.6.0-510.39.01-1_amd64.deb
这一步如果服务器上速度较慢,可以尝试在本地下载,直接在浏览器中输入
https://developer.download.nvidia.com/compute/cuda/11.6.0/local_installers/cuda-repo-ubuntu2004-11-6-local_11.6.0-510.39.01-1_amd64.deb
这个网址即可
然后,到/usr/local 文件夹下
配置环境变量
sudo vim ~/.bashrc
在末尾添加
export PATH=/usr/local/cuda-11.6/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-11.6/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
export CUDA_HOME=/usr/local/cuda-11.6
i 进入编辑
Esc 然后 :wq 关闭并保存
接着更新系统环境
source ~/.bashrc
sudo ldconfig
检查是否安装成功:
nvcc -V
二、Anaconda&PyTorch
(一)Windows
1.官网下载Anaconda
2.安装Anaconda(建议使用默认安装位置)
建议按照默认安装位置。
默认安装位置:
我的安装位置:
如果安装位置不是默认位置,要找到文件夹,右键属性->安全,用户的权限 允许“完全控制”
3.运行、配置Anaconda
3.1运行
3.2添加镜像
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
(二)Linux
----------------------------------------------------------
4.创建虚拟环境、安装PyTorch
注:
pytorch官网
https://pytorch.org/get-started/locally/
pytorch历史版本网站
https://pytorch.org/get-started/previous-versions/
4.1创建虚拟环境
conda create -n yolov5_cuda10.2 python=3.8
其中 “yolov5_cuda10.2” 是虚拟环境的名字 随便起
这就是虚拟环境具体的位置(其中D:\software\anaconda\Anaconda3为我的anaconda安装位置):
4.2激活环境
conda activate yolov5_cuda10.2
4.3在所创建虚拟环境下安装pytorch
在所创建环境下安装pytorch:
conda install pytorch torchvision cudatoolkit=10.2 -c pytorch
至此已经安装好Anaconda,使用其创建了虚拟环境,并在虚拟环境中安装了pytorch。
下面下载YOLOv5源码并尝试运行。
三、YOLOv5
1.下载源码及权重文件
GitHub - ultralytics/yolov5: YOLOv5 🚀 in PyTorch > ONNX > CoreML > TFLite
最下面:
解压
这是源码的文件结构,weights文件夹是存放权重文件的地方:
下载权重文件到weights文件夹中:
2.在激活的虚拟环境中,cd到源码文件夹下
3.在源码文件夹下安装所需库
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
4.测试运行
尝试运行:
python detect.py --source ./data/images/ --weights weights/yolov5s.pt --conf 0.4
我的环境:
操作系统:Windows10/11
显卡:NVIDIA GeForce GTX1650
CUDA版本:10.2
YOLOv5版本:4.0
运行结果:
如有错误,欢迎大家指出。