Pytorch及Yolov5环境配置及踩坑
Pytorch及Yolov5环境配置及踩坑
1.何为Yolov5
yolo是计算机视觉方面用来进行目标检测的一个十分出名的开源框架,我搜不到官方的对此概括性的定义,但实际上也没什么必要,更重要的是会使用,更更重要的是理解其底层的实现逻辑
对于我现在的数学水平,想了解底层实现逻辑的10%,都有些天方夜谭了,之后我可能会开一个文章专门跟进我学习的进度,也可能会在这篇文章的下面更新学习流程
1.何为卷积?
2.环境配置
1.Python
其实也可以在C++下进行Yolo的配置,但是我不想费事了,直接就在Python下搞了,而且我也推荐人们在Python下使用Yolo,虽然效率确实没有C++高,但实际上都是调用API,也没有什么差别
想要配置yolo这个大家伙,需要分为几个步骤
CUDA、CUDNN、显卡驱动
首先说一下安装这三个东西的原因,如果我们要进行物品识别,那就肯定要对视频进行一个分析,我们有两条路可以选,一条是不用你的GPU进行加速,另一条是用你的GPU进行加速,有什么区别呢?如果你不用GPU加速,那么你的CPU就会很难受,因为完全在用CPU跑训练,但是CPU根本就不是用来图形渲染的,你这不是难为人家吗?况且Pytorch辛辛苦苦写了这么多GPU加速,你视而不见,有点可惜了不是吗?
所以我们必须要搞一手GPU加速,为了我们好,也为了电脑多活几天
登录英伟达官网,选择相应的显卡型号,安装显卡驱动即可,验证安装是否成功的方式是在cmd中输入nvidia smi
CUDA的安装也是一样的,在英伟达官方根据你的显卡型号选择对应的CUDA版本即可,一般不是安培架构的GPU的话,推荐还是选择10.2这个版本,图灵架构在这个版本下会有更优越的表现
至于CUDNN,这个东西有点麻烦,你需要注册一个英伟达的账号才可以在官网下载
Anaconda
Anaconda指的是一个开源的Python发行版本,其包含了conda、Python等180多个科学包及其依赖项。
Anaconda的安装也没有问题,在官网搜索下载,注意在安装程序时加入系统变量即可了
Pytorch
Pytorch的安装也没问题,搜索官网,唯一需要注意的是选择与你的CUDA版本所相对应的Pytorch版本安装即可,至于在哪里安装。
首先打开Anaconda prompt,输入anaconda create --name <env_name>,这里的env_name是你要创建的环境的名字
之后输入anaconda activate <env_name>进入你所要安装至的环境中,在Pytorch官网找到与你的CUDA版本所相对应的Pytorch安装指令,输入即可
用过Linux的应该都知道的,由于网络原因,下载之前要先进行一个换源的操作,推荐换清华源来进行安装,这个百度即可
Paddle
终于到了最后一步,我们需要安装百度的一个深度学习平台Paddle
同Pytorch的安装方法一样,进行你的Pytorch环境,在Paddle官网选择与你的CUDA版本相对应的Paddle版本安装指令进行安装即可,这里使用的是百度源,下载速度还是可以的
看似安装过程没什么问题,那么到底是哪里可能出问题呢?
我的问题出在环境安装结束后,缺少了很多其他第三方库的安装,例如torch进度条可视化,Scipy库等等,解决方法很简单,我们在anaconda下进入对应的pytorch环境,利用pip安装即可,注意换源的问题
之后又遇到了CUDA版本或是Torchvision与Torch不对应的问题,这个问题要到Pytorch在github上的开源仓库中进行解决,不幸的是我们只能先卸载我们辛苦安装的torch,之后找到与CUDA版本对应的pytorch进行安装即可
最后遇到的问题是模型训练时无法调用CUDA进行GPU加速,但实际上我是已经安装了CUDA的,这个问题的出现是因为没有安装CUDNN,去官网下载CUDNN添加至系统变量后重启电脑即可
这么大一个东西配置下来总而言之就是玄学,多踩坑也是学习了……
Pytorch及Yolov5环境配置及踩坑的更多相关文章
- Opencv环境配置及踩坑
Opencv环境配置及踩坑 1.什么是Opencv OpenCV是一个基于Apache2.0许可(开源)发行的跨平台计算机视觉和机器学习软件库,可以运行在Linux.Windows.Android和[ ...
- pycharm+PyQt5+python最新开发环境配置,踩坑过程详解
安装工具:Pycharm 专业版2017.3PyQT5python3 pyqt5-tools 设置扩展工具的参数找到setting->tools->external tools,点击加号新 ...
- React Native Android配置部署踩坑日记
万事开头难 作为一只进入ECMAScript世界不久的菜鸟,已经被React Native的名气惊到了,开源一周数万星勾起了我浓烈的兴趣.新年新气象,来个HellWorld压压惊吧^_^(故意少打个' ...
- android开发环境配置和一些坑
要开发安卓应用,首先就是要配置安卓的开发环境. 新手在这个步骤时,会发现安卓的开发环境配置不是一般的麻烦,因为一般人是选择eclipse+a sdk+adt的,需要java环境,需要翻 墙,需要有非一 ...
- Flutter开发环境(Window)配置及踩坑记录
Flutter 是 Google 用以帮助开发者在 iOS 和 Android 两个平台开发高质量原生 UI 的移动 SDK.Flutter 兼容现有的代码,免费且开源,在全球开发者中广泛被使用. F ...
- Linux 初始环境配置 以及避坑 (详细)
没事儿喜欢自己装个虚拟机捣鼓捣鼓,经过几次装一些Linux 经验, 有时候 电脑了 .想重新系统了,又要重新去配置环境, 有时候又要去查很多很多命令 . 记录分享下Linux 下配置开发环境以及桌面 ...
- spring零配置AOP踩坑指南
今天照着书,试着配了AOP(全注解),结果踩了各种坑,后来参考书附带的源码,终于走出来了,现在总结一下 除了spring的jar包以外,还需要导入以下包: 1.Spring核心配置文件beans.xm ...
- 小白linux安装php 5.6+nginx配置(踩坑版)
因为要搭建个知识库,直接用wordpress,这前提是得先装php,实在不喜欢XAMPP,所以自己折腾,没想到php这一来还不少啊,从头到尾折腾了一个小时多.记录下主要的流程和遇到的坑. 首先官网下载 ...
- seg代码配置的踩坑记录
01. SEGMENTATION FAULT 正在配置OCNET的代码,在自己的本地运行没有任何问题,但是在服务器上一直报错:SEGMENTATION FAULT 这属于很概括的报错,无法直接看明白到 ...
随机推荐
- C#程序设计的6大原则
设计模式:面向对象语言开发过程中,遇到各种场景和问题,解决方案和思路沉淀下来,就是设计模式.俗称,套路 设计模式的六大原则:理解为面向对象语言开发过程中推荐的一些指导性的原则,通俗的说是套路的 套路 ...
- WPF 制作 Windows 屏保
分享如何使用WPF 制作 Windows 屏保 WPF 制作 Windows 屏保 作者:驚鏵 原文链接:https://github.com/yanjinhuagood/ScreenSaver 框架 ...
- python 异常捕捉与异常处理
简介 在实际开发中,为了防止异常界面直接被用户看到,往往我们会采用捕捉异常的方式来进一步处理异常. 异常捕捉 如下代码由于下标越界会导致异常 data = range(10) print(data[1 ...
- python迭代器、生成器、yield理解
简介 yield关键字是python的一种高阶用法,使用yield的函数会返回一个生成器对象,生成器又是一个迭代器,与迭代器相类似的则是可迭代对象,下面首先介绍一下迭代器吧. 迭代器 在python中 ...
- YII场景
YII在模型中定义场景后 public function scenarios(){//场景 return [ 'sco1'=>['aid','uphone'], 'sco2'=>['aid ...
- 关于mybatis-plus出现Not Found TableInfoCache. 的解决方法
查看自己的pom里面是不是导入了多个mybatis相关,若是的话就全部删去,然后添加如下代码段即可 <dependency> <groupId>com.baomidou< ...
- Spring源码 07 IOC refresh方法2
参考源 https://www.bilibili.com/video/BV1tR4y1F75R?spm_id_from=333.337.search-card.all.click https://ww ...
- Java SE 9 多版本兼容 JAR 包示例
Java SE 9 多版本兼容 JAR 包示例 作者:Grey 原文地址:Java SE 9 多版本兼容 JAR 包示例 说明 Java 9 版本中增强了Jar 包多版本字节码文件格式支持,也就是说在 ...
- 图解OSI七层模型
七层模型,亦称OSI(Open System Interconnection)参考模型,是参考模型是国际标准化组织(ISO)制定的一个用于计算机或通信系统间互联的标准体系.它是一个七层的.抽象的模型体 ...
- Python逆向爬虫之scrapy框架,非常详细
爬虫系列目录 目录 Python逆向爬虫之scrapy框架,非常详细 一.爬虫入门 1.1 定义需求 1.2 需求分析 1.2.1 下载某个页面上所有的图片 1.2.2 分页 1.2.3 进行下载图片 ...