由于要用到yolov5,而自己从未接触过此方面。于是写下来记录一下,以便以后有需要能够方便的找到问题或者进行环境的配置。
我也是小白一枚,文中冗余、纰漏在所难免。
本文主要记录所安装的各种软件以及过程。
win10家庭版+pycharm2020.1专业版+python3.8.5
ps:仅介绍一下开始安装之前所具有的环境,并没有用到,有没有无所谓
1.从官网或者镜像源下载安装包
官网:https://www.anaconda.com/products/individual#macos
清华源:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
选择对应的版本下载。比如我下载的就是
2.双击安装程序进行安装
这里我选择的是所有用户
选择安装路径
第一个是加入系统环境变量,第二个是把Anaconda3的自带的python3.9作为系统的python。(比如我这里已经有python3.8.5,会把系统优先的python设置为anaconda自带的3.9版本)
建议这两个也都勾选,尤其是第一个,否则还需要自行配置环境变量
接下来就是等待安装结束。结束后可以win+r,输入cmd,在终端输入
conda -V
3.换源
可以使用conda install 包名 进行安装,但是速度太慢,建议使用国内开源镜像源
打开C:\Users\User下的.condarc文件,编辑成下图
ps:若是没有,在终端输入conda config --set show_channel_urls yes
channels:
- http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
- http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
- http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
show_channel_urls: true
把里面的 --default删除,设置show_channel_urls: true
或者也可以使用命令
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
1:有的电脑是只能用http,有的是https,我的电脑就是只能用http,故而需要把https改成http才可以(这一步根据之后conda install 时候如果有报错只能用http,可以在换源这里把https进行修改为http即可)
2:http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/ 这个是为了使用conda安装torch才需要加入的,通过终端conda install 的方式安装pytorch,因为速度太慢,需要加入对应的源。但是不推荐用conda命令安装torch,不知道为什么,每次下载的都是cpu版本的,如果需要下载gpu版本的,不能用conda下载,直接去镜像源自己下载
4.创建一个虚拟环境,并作为之后yolov5的使用环境
进入终端(win+r,cmd),或者anaconda prompt
输入conda create -n python38 python=3.8
创建一个名为python38的环境,并指定python版本为3.8,之后会自动为你下载对应的python解释器
输入conda info -e
查看存中的环境(base环境是自带的默认环境)
5.激活对应的虚拟环境
输入activate python38
进入刚刚创建的python38环境
输入python,即可查看到当前的python解释器版本
退出当前环境,使用conda deactivate
(deactivate 已被弃用)
至此,已经成功安装Anaconda并成功创建一个带3.8版本解释器的python虚拟环境
yolov5
1.从官网clone到本地或者直接下载zip到本地,然后解压
进入yolov5的文件夹,并在这里打开终端
activate python38
进入python38环境
2.在该环境中,输入pip install -r requirements.txt
注意:
1.需要先进入对应的环境,不然默认安装到了base环境中
2.双击requirements.txt 查看yolov5所需要的环境
由于我直接pip install -r requirements.txt
始终安装不下来,最后只能
pip install matplotlib -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
这样一个一个把所需要的包下载下来。requirements.txt中未注释的都要下载
注意:其中有一个tensorboard>=2.4.1,我是用conda install tensorboard
下载下来的,用pip安装不成功
安装成功后可以通过pip show 包名
查看安装包的版本,这里大概率安装的pytorch是cpu版本的而不是gpu版本的。之后使用yolov5的时候再把torch换成gpu版本
3.检测yolov5是否安装成功
进入yolov5的文件夹,在这个文件夹下打开终端(在文件夹上方输入cmd),进入到python38的环境中(activate python38),运行detect.py
成功运行后,最后一句应该是Results saved to runs\detect\exp
可以到yolov5\runs\detect\exp看到结果
则说明yolov5安装成功
1.查看电脑对应的CUDA的版本
在桌面上右键打开NVIDIA控制面板----左下角系统信息----组件
可以知道自己对应的CUDA的版本号为11.1版本
到官网下载对应的版本的CUDA,官网
下载对应的CUDA版本到本地
2.本地安装CUDA,双击cuda安装程序
这是CUDA的临时解压文件存储位置,安装完会自动删除,不用管
之后,这里勾选自定义
只用安装第一个CUDA(去除VS Integration),之后会弹出安装路径。记住这三个安装路径,之后要去添加环境变量用到
ps:我在第一次安装的时候,装着装着就自动重启电脑,找不到原因,但是再次重新安装时候正常安装成功
3.安装成功后,查看环境变量是否添加
右击此电脑 - - 属性 - - 高级系统设置 - - 环境变量
在系统变量中,看到
在终端输入nvcc -V
则说明CUDA安装成功
最后,在系统环境变量的PATH中添加NVIDIA GPU Computing Toolkit\CUDA\v11.1下的bin、lib、include、libnvvp四个文件夹的路径
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.1\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.1\lib
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.1\include
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.1\libnvvp
1.进入官网,查看对应CUDA11.1的cudnn版本官网
选择对应的版本,进行下载。下载之前需要用到注册,不需要收费。但是可能需要科学上网
2.下载之后解压,在子文件夹CUDA下有三个子文件夹
把bin、include、lib三个文件夹下面的文件,分别复制到CUDA的对应文件夹下面
CUDA安装位置下面同样有bin、include、lib三个文件夹,需要一一对应,别搞错了
3.把C:\Program Files\NVIDIA Corporation\NVSMI 添加到系统环境变量PATH中去
由于之前安装的cpu版本的,现在要更换为gpu版本的
终端输入activate python38,进入对应环境。python,import torch, print(torch.cuda.is_available())
上图是我已经换过torch之后的显示结果,你们在这里应该是False 这是因为torch与cuda的版本不匹配所造成的。现在就要把这个问题解决,让torch能够使用GPU加速
1.进入PyTorch官网,查看对应的版本
找到对应CUDA11.1的torch版本。根据官网给出的命令,进入之前的python38环境,可以进行在线安装(速度过慢甚至直接崩了,不推荐)
2.使用离线安装的方式(推荐)
进入命令后面的网址,手动下载文件
其中cu111代表cuda11.1 是GPU版本的,cp38代表的是对应python3.8版本的
主要下载torch和torchvision两个whl文件
3.进入下载好的两个文件所在处,在此处打开终端,进入python38的环境,使用pip install 安装torch和torchvision
ps:在安装torch的时候,最后会报红说所要求的torchvision版本不匹配,最后安装成功的提示。不用管它,接着安装torchvision即可匹配成功
4.最后,终端输入activate python38,进入对应环境。python,import torch, print(torch.cuda.is_available()) 即可显示一开始的一幕
5.查看torch和torchvision的版本
至此,Anaconda、yolov5、PyTorch、CUDA、cudnn已经全部成功安装