yolov3多目标检测(YOLOv7(目标检测)入门教程详解—环境安装)
目录
一.前言
二.yolov7环境搭建
直接进入正题 ,环境搭建开始:
Anaconda:
Pycharm:
cuda:
cuda安装:
cudnn:
三.虚拟环境安装
创建虚拟python环境:
Pytorch:
四.总结
一.前言
由于最近博主在参加一个无人机的比赛 ,需要对障碍物进行识别 。所以根据调查考究 ,决定使用YOLO算法对障碍物进行目标检测 ,yolo算法的系列非常之多 ,那么最新的就是前段时间AB大神团队(yolov4的作者)出的yolov7 。那么作为零基础深度学习的我 ,在这半个月探索的过程中可谓是经历了风风雨雨百般挫折 ,好在最终修成正果 。可以说使用yolo进行目标检测的门槛挺高的 ,如果像博主我这种一开始完全不懂的零基础的小白而言 ,要搜索将近几百篇博客才可能真正的能够跑通并且使用yolov7进行推理 ,训练 。那么我对接下来要出的yolov7相关博客的主要内容进行一个前言总结:1. 对网上相关博客进行整理归纳总结 ,真正意义上的帮助零基础小白实现yolov7的推理和训练 2.深度学习环境搭建 3.用python和c++分别实现yolov7 4.常见bug的分析
二.yolov7环境搭建
可以说小白yolov7入门的第一个难题就是深度学习相关环境的搭建 ,很多人在尝试了几次环境搭建失败之后就选择放弃,也就不了了之了 ,那么博主毫不夸张的说经历了上百次的失败 ,最终才成功的 。所以在入门yolov7的过程中首先最重要的就是有恒心,每个人的电脑都不一样 ,所以出现的问题也会不同 ,要多去尝试 ,不要轻易放弃 。
直接进入正题 ,环境搭建开始:
b站较好的安装视频教程:https://www.bilibili.com/video/BV1ov41137Z8?spm_id_from=333.337.search-card.all.click&vd_source=b0652e40837b5f6c1f58d67197f17c2f
Anaconda:
安装Anaconda主要是搭建python的虚拟环境 ,之后我们进行yolov7的detect和train都会在终端进行
下载官网:Anaconda | The Worlds Most Popular Data Science Platform
选择对应的电脑版本安装:
勾选环境变量:
在安装Anaconda的过程中基本上是没啥坑的 ,也很少出现安装失败的过程 。如果安装失败 ,可以参考以上的视频链接或者私信我进行讨论 。
Pycharm:
pycharm是编译运行python的平台 ,yolov7的源码基本都是python语言 ,所以安装pycharm有助于之后打开yolov7相关源码进行分析查看
下载官网:PyCharm:JetBrains为专业开发者提供的Python IDE
进入官网点击下载就ok ,下载community就行了
pycharm的安装也不会有什么大问题的 ,就是正常的安装路径 ,大概率不会出错 。
cuda:
cuda这里我直接标红了,对于第一次安装cuda的小白来说 ,这会存在非常之多的问题 。所以这里我会详细的进行介绍 。
cuda是什么:
cuda:CUDA(Compute Unified Device Architecture ,统一计算架构[1])是由英伟达NVIDIA所推出的一种集成技术,是该公司对于GPGPU的正式名称 。透过这个技术 ,用户可利用NVIDIA的GPU进行图像处理之外的运算 ,亦是首次可以利用GPU作为C-编译器的开发环境。CUDA 开发包(CUDA Toolkit )只能将自家的CUDA C-语言(对OpenCL只有链接的功能[2]) ,也就是执行于GPU的部分编译成PTX中间语言或是特定NVIDIA GPU架构的机器代码(NVIDIA 官方称为 "device code");而执行于中央处理器部分的C / C++代码(NVIDIA 官方称为 "host code")仍依赖于外部的编译器 ,如Microsoft Windows下需要Microsoft Visual Studio;Linux下则主要依赖于GCC
上面是对cuda的介绍 ,简要来说cuda是我们电脑gpu必要的开发包 ,我们后面所有的训练推理以及转onnx模型乃至于pytorch的安装都需要cuda与GPU的结合 。直白的说 ,你没有cuda ,你的GPU在深度学习中啥也不是 ,就是个摆设而已 。(当然你要是没有GPU ,就当我说的都是废话吧)我相信大多数同学的电脑还是带有GPU的 ,并且毕竟是图像处理 ,深度学习,在后面我们就会知道GPU推理速度可以是CPU的几十倍 ,只有使用GPU才能把yolov7的强大表现出来。
cuda安装:
我们先不急着去找cuda官网进行安装 ,首先我们要先知道自己显卡的属性,我们的显卡支持什么版本的cuda 。首先 WIN +R cmd运行:
输入nvidia-smi
然后我们会看到表格的右上角有一个 CUDA Version:11.6 博主我的电脑显卡是RTX 3070 ,所以最高支持CUDA 11.6版本 ,所以说如果超过11.6版本的cuda我的电脑是没能力支持的 ,我只能安装cuda 11.6以下的版本 。11.6是当前较新的版 ,强烈建议:不要安装最新的版本cuda ,这样后续其他环境的安装可能就找不到对应的版本 ,导致重新安装会非常的麻烦 所以我安装的是cuda 11.0版本 如果你的显卡不支持11.0以上版本就安装你相对应能够匹配的版本 。
接下来 ,删掉你电脑里存在的所有nvidia的插件(不要害怕 ,之后可以下载回来)
打开你的控制面板 ,卸载程序:
虽然说可以留那么一两个不卸载 ,但是我觉得能看到我博客的应该都是小白 ,所以我就不跟你们说那么多了 ,直接全部卸载,以绝后患 。
这里仍然还存在一个问题 ,也是之后会导致你安装失败并且百思不得其解的bug ,就是你的cuda和VS版本的问题,我的建议是如果你的显卡支持11.0以上版本cuda ,就先安装vs2019 ,如果是其它版本的VS直接先卸载重装VS 2019 ,如果你的cuda版本只支持10.2以内 ,那么你先把VS卸载 ,并且不要安装 ,我们先老老实实的安装cuda去 。
cuda下载官网:CUDA Toolkit Archive | NVIDIA Developer
选择你要下载的版本:
然后我们进入下载页面后选择local 本地下载 ,方便如果安装失败 ,可进行重新安装 。
选择同意并继续
如果你是按我说的卸载所有的nvidia插件并且卸载了VS ,那么直接精简安装就ok
如果你是第n次安装了 ,并且装有VS ,选择自定义之后 ,就勾选第一个CUDA就ok,其他都不要勾选 ,否则非常容易安装失败
点开CUDA , 取消Visual Studio Integeration的勾选,这也是常见的一个安装失败的原因
接下来不要轻易改动默认路径 ,一般都在c盘
之后一切正常的话就安装成功了
查看环境变量
点击设置-->搜索高级系统设置-->查看环境变量
手动添加以下两个变量
系统会自动生成以下两个变量 ,如果没有 ,也请手动添加
接下来我们就要验证验证我们的cuda安装的是否成功了 。
同样的win +R cmd进入 ,输入nvcc -V
如果能看到自己的版本号 ,就说明基本没有问题了 ,当然网上还有其他更保险的验证方式 ,可以到其他博客去看看 ,有很多 ,这里就不细说了 。接下来我们安装cudnn
cudnn:
下载官网:CUDA Deep Neural Network (cuDNN) | NVIDIA Developer
这里的问题也不大 ,基本不会有啥错误 ,进入网址 ,选择与cuda相对应的cudnn版本进行下载
第一次下载的话,可能需要nvidia的注册 ,自己就注册一下 。然后选择realeases
下载完对应版本的cudnn之后会得到一个文件夹 。
复制bin include lib
然后找到我们cuda的默认路径的文件夹 ,你们的会和我的相同,然后直接将刚刚复制的bin lib include , ctrl v进去就完成了
ok ,到现在我们已经把必要的 Anaconda pycharm cuda cudnn都已经安装完成了 ,外部的这些环境已经安装完毕 ,我们接下来要终端虚拟环境的安装 ,也就是yolov7直接需要的终端环境 。
三.虚拟环境安装
创建虚拟python环境:
win+R cmd进入终端 输入 conda create -n 环境名 python=X.X
环境名自己取 ,python版本建议3.7以上 ,我用的是python 3.8
强调:此刻关掉电脑VPN
创建好自己的虚拟环境之后 ,通过activate yolo(环境名)进入到指定环境 deactivate退出环境
接下来我们就在创建好的环境下 ,安装pytorch
Pytorch:
下载官网:PyTorch
到previous中去寻找对应自己cuda版本的pytorch
选择wheel下的pip下载指令 ,我选择的是对应cuda 11.0的 ,复制pip指令
进入刚刚创建的环境 ,然后将指令复制进去,回车下载安装pytorch
强调:关掉电脑的所有VPN
然后就是一系列的安装 ,我们检查我们的pytorch版本
activate 进入环境之后输入python
进入python命令端后输入import torch
torch.__version__
输出对应型号的时候就说明安装成功了(我cuda是11.0但是我安装pytorch是对应11.3的 ,其实问题也不大,但是不建议 ,之后如果要用export转onnx的时候我会再说)
四.总结
至此python版本所需要的外部环境安装都已经准备好了 ,那么下一篇博客我将会详细的介绍yolov7的推理和训练以及检测
创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!