linux学习指令与现有环境解决问题笔记
linux学习指令与现有环境笔记
注意:我将pytorch和cuda安装在了pytorch这个虚拟环境中
pytorch安装及注意问题
注意版本对应,稳定版2.0.1对应cuda11.7,别按错了
按错导致重新安装
cuda安装过程与对应问题
- 注意上述内容,里面告诉了添加环境变量,如何删除cuda,cuda下载的位置,下载对应驱动等信息。
现在已有cuda11.7.0
若第1步提示Existing package manager installation of the driver found. It is strongly recommended that you remove this before continuing.,选择continue,在下一步中去除driver项,之后选择install:
通过
nvcc -V # 查看当前cuda版本(可以用来判断是否安装成功)
python检查pytorch版本,cuda是否可用
import torch
print(torch.__version__)
print(torch.cuda.is_available())
解决torch.cuda.is_avaliable总是False
在安装时,按照blog中写的,去掉 -c pytorch,使用了自己的清华源镜像进行了安装,结果pytorch是cpu版本
https://blog.csdn.net/To_be_little/article/details/123637902
https://blog.csdn.net/Andy_Luke/article/details/122503884?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2defaultCTRLISTRate-1.pc_relevant_aa&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2defaultCTRLISTRate-1.pc_relevant_aa&utm_relevant_index=2
删除pytorch
conda uninstall pytorch
cudnn安装及问题
下载注意对应版本
开始安装:
1.在官网下载好
后,解压到本地2.将解压的文件夹命名为cuda
3.cd 到cuda中
cd cuda/include
sudo cp *.h /usr/local/cuda/include/ (注意这里是你自己的cuda的安装地址,复制*.h文件
4.关闭终端重新打开
cd cuda/lib
sudo cp libcudnn* /usr/local/cuda/lib64/
5.终端运行
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
6.在环境变量中添加如下变量:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64:$LD_LIBRARY_PATH # 这/usr/local/cuda/是你的绝对路径
安装成功标志:
Pytorch检查CUDA和cudnn版本
检查cuda:
>>> import torch
>>> torch.cuda.is_available() # 检查cuda是否可用
>>> torch.version.cuda # 查看cuda版本
检查cudnn
>>> torch.backends.cudnn.is_available() # 检查cudnn是否可用
>>> torch.backends.cudnn.version() # 查看cudnn版本
添加环境变量
终端打开环境变量文件:
sudo vim ~/.bashrc
记得添加完后执行一下!
source ~/.bashrc
执行之后就可以看到cuda版本发生改动了
ubuntu系统盘扩容
在安装anaconda时,遇到了系统盘不够大的问题,想着从D盘扩容60G过来:
以下为步骤
1.首先找到你安装ubuntu时的U盘,使用U盘里的 Try ubuntu,打开终端
sudo gparted
打开图形化硬盘管理界面,这时候系统盘上的就消失了
2.缩减某个分区以获得未分配分区
3.磁盘扩容时,想要扩展某个分区,只能与他相邻近的未分配分区合并,因此要把不再其相邻近的未分配分区给移动过来
通过左右移动条框可移动未分配的位置,通过拖拽两头的箭头可以在相应端缩减、扩大分区大小
点击保存即可
4.在实际应用时,我遇到如下问题:
这里需要在win11的终端中,输入chkdsk /f 对磁盘进行修复,并重启两次这样之后才能对磁盘分区进行修改调整
这样等了1个小时,就好了
查看镜像源
sudo vim /etc/apt/sources.list #使用vim查看
sudo gedit /etc/apt/sources.list #使用文本编译器查看
查看当前已安装的包
conda list
nivdia驱动
有关驱动的内容:
Existing package manager installation of the driver found. It is strongly recommended that you remove this before continuing.出现这一步时,不是叫你删除驱动,而是驱动已经存在
我删除驱动之后,现在又要重新安装驱动,服了
针对我个人电脑以后驱动就用这一个
Yolov5安装笔记
1.进入github
找到图片中tags,这里是yolov5的历史版本
2.选择版本,这里选择的是6.0
这里选择zip文件,下载之后解压:出来个这个文件夹
3.然后新创建了个虚拟环境
conda create -n yolov5 # 不要忘记加 -n 或者--name
4.完成后,用终端打开该文件夹
pip install -r requirement.txt
然后对应的环境就开始自动下载配置了
虚拟环境
创建虚拟环境,可以为代码提供多个解释器
我刚刚创建了yolov5的环境,里面对应的torch,cuda,cudnn版本就是相对应的版本,我可以在IDE中,选择该环境的解释器
# 在vscode中 ctrl+p
删除虚拟环境
conda remove -n you_env_name --all
快捷键
打开python之后: ctrl + D :关闭python
打开终端之后: ctrl + D :关闭终端
vscode 选择调试器: ctrl + shfit + p,之后选择python解释器
cuda 创建指定python版本虚拟环境
conda create -n name python=3.8.2
我在这里创建的名字是 label,用来给img训练集做标签的,作为笔记日后提醒
解决This application failed to start because no Qt platform plugin could be initialized.
在安装labelImg过程中,碰到了:
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found. This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
为解决此问题:根据该博客尝试启动qtcreator,结果发现
结果是qtcreator都没安装。
sudo apt install qtcreator
之后,就能重新打开 labelImg了
qtcreator:就是常用的QT。。。
在如下博客获得思路启示:
https://blog.csdn.net/LOVEmy134611/article/details/107212845
制作图片集标注
首先
pip install labelImg
labelImg这是对应的标注软件
接下来是对数据集进行操作
我们先创建dataset的文件夹,按上面分层创建子文件夹
原始的图片数据我们保存在 images\train 中,将存放目标目录设置为labels\train中
在这里,我们一定要注意所图像保存的格式,这里我们选择的是yolov5
注意到这里有个预设标签,在下张图片中,我们同样可以选取相同的部分做相同的标签。
在对装甲板进行识别时,要用最小外接矩阵将其框起来。
还有几个快捷键:
w: 创建矩块
a:上张图片
d:下张图片
我们进入dataset文件夹中,在此打开终端,输入
labelImg ./images/ predefined_classes.txt
在打开时同样遇到了已放弃:
,在查看python版本之后,发现 python == 3.6 ,版本太低了,重建了个虚拟环境,指定python版本 == 3.8之后,在该虚拟环境里打开才好
队内环境配置问题
进入github中的qdu-rm-cv
选择environment的仓库,git下来,git clone https://github.com/qdu-rm-cv/environment.git
README中有使用说明
这里按照我的进行一下:
cd shell
(在该界面下打开终端)
完成之后,sudo chmod 777 ./*
:赋予最高权限
code : vscode ,
中建三个:环境
最后:函数,
./env_menu_install.sh
保持网络联通,一直回车即可
最后:
接下来cd qdu-rm-ai
输入:
git submodule update --init --recursive
打开vscode
code ./
点击build ,但在这里build的时候出现问题了
于是在u盘中重新铐了一份,之后就可以了:
该文件我放网盘了,以便之后使用:
链接: https://pan.baidu.com/s/1_1Aln2wr6bTCAbxUqHtTBA 提取码: 1122
解压之后cd qdu-rm-ai
,之后code ./
,再build就行
wandb
wandb是一个免费的,用于记录实验数据的工具。即可视化实验数据
我们通过github登陆后,在终端输入输入API,就可以使用了。
()
知乎教程:https://zhuanlan.zhihu.com/p/493093033
tabnine
vscode之AI自动补全代码插件
安装后GitHub登录即可
解决SSL报错
多半是因为梯子问题,把梯子关掉就好
linux学习指令与现有环境解决问题笔记的更多相关文章
- Linux学习9-CentOS搭建nginx环境
前言 之前我们搭建网站的时候,把war包放到tomcat下就能运行起来了,为什么部署上线的时候,又用到了nginx呢? nginx可以做多台服务器的负载均衡,当用户非常少的时候,可以用一台服务直接部署 ...
- Linux学习之十一、环境变量的功能
环境变量的功能 可以利用两个命令来查阅,分别是 env 与 export 呢! 范例一:列出目前的 shell 环境下的所有环境变量与其内容. [root@www ~]# env SHELL 告知我们 ...
- Linux学习——shell编程之环境变量配置文件
小白学习,在学习中总结! shell编程之环境变量配置文件 一:环境变量配置文件 1 shell编程之环境变量配置 变量类型: 用户自定义变量(本地变量) 环境变量 :定义每个用户的操作环境,如pat ...
- linux学习(七)环境变量、cp、mv、cat,less,more,head,tail
一.环境变量 环境变量其实就是$PATH: [root@iZ25lzba47vZ ~]# echo $PATH /usr/local/nginx/sbin:/usr/local/php/bin:/us ...
- Linux学习16-CentOS安装gitlab环境
前言 在学习Gitlab的环境搭建之前,首先需要了解Git,Gitlab,GitHub他们三者之间的关系 Git 它是一个源代码版本控制系统,可让您在本地跟踪更改并从远程资源推送或提取更改. GitH ...
- Linux基础指令--韩顺平老师课程笔记
一.vi和vim编辑器 ①.三种模式 所有的 Linux 系统都会内建 vi 文本编辑器.vim 具有程序编辑的能力,可以看做是 vi 的增强版本,可以主动的以字体颜色辨别语法的正确性,方便程序设计. ...
- (转)Linux最常用指令及快捷键 Linux学习笔记
Linux最常用指令及快捷键 Linux学习笔记 原文:http://blog.csdn.net/yanghongche/article/details/50827478 [摘自 鸟叔的私房菜]--转 ...
- linux学习笔记:关于环境变量
(摘自https://blog.csdn.net/llzk_/article/details/53813266之后整合) 1.linux系统的条件 Linux是一个多用户的操作系统,每个用户登录系统时 ...
- Linux 学习笔记
Linux学习笔记 请切换web视图查看,表格比较大,方法:视图>>web板式视图 博客园不能粘贴图片吗 http://wenku.baidu.com/view/bda1c3067fd53 ...
- linux —— 学习笔记(汇总)
笔记目录:一.系统知识 和 基本概念 二.常用操作 三.系统管理(内存.设备.服务等管理) ...
随机推荐
- js数组类型
js数组类型: 数组检测 1.判断变量是否为数组类型: arr1 instanceof Array Array.isArray(arr1); true 转换方法 toString()方法,以便返回数组 ...
- letcode-括号生成
递归大法,空间换时间 就是记录左右括号数,一旦右括号数大于左括号数,退出. 当左右括号数相等,且等于n则为合法解. 使用char数组取代StringBuilder可以减少内存使用,这样每次进行回溯时不 ...
- r0capture 原理分析
r0capture 是比较好用的抓包工具 仅限安卓平台,测试安卓7.8.9.10.11.12 可用 : 无视所有证书校验或绑定,不用考虑任何证书的事情: 通杀TCP/IP四层模型中的应用层中的全部协议 ...
- 项目实战:Qt+Arm+Fpga医疗肾镜(又名内窥镜)(实时影像、冻结、拍照、白平衡、九宫格、录像、背光调整、硬件光源调整、光源手动自动调整、物理按键)
若该文为原创文章,转载请注明原文出处本文章博客地址:https://blog.csdn.net/qq21497936/article/details/111241205长期持续带来更多项目与技术分享, ...
- 亲测可行,Android Studio 查看源码出现 Source for ‘Android API xxx Platform’ not found 的解决方法
亲测可行,Android Studio 查看源码出现 Source for 'Android API xxx Platform' not found 的解决方法 如标题中的问题,产生的原因就是 SDK ...
- 第127篇:异步函数(async和await)练习题(异步,消息队列)
好家伙,本篇为做题思考 书接上文 题目如下: 1.请给出下列代码的输出结果,并配合"消息队列"写出相关解释 async function foo() { console.lo ...
- 【Azure 应用服务】如何来检查App Service上证书的完整性以及在实例中如何查找证书是否存在呢?
问题描述 1:如何来检查App Service上证书的完整性呢? 2:如何来检查App Service的实例上是否包含这个证书呢? Windows 环境 or Linux 环境? 问题解答 问题一: ...
- VC-MFC(2) 随笔笔记
1 //点击按钮出来对话框---------------- 2 3 1.首先添加 对话框(标识符) 4 2.在点击按钮出来第二个对话框,直接鼠标右键 新建 类 5 3.在.CPP添加新建类的 头文件 ...
- Spring事务(二)-@Transactional注解
上一节说了Spring的事务配置,其中,声明式事务配置里有5种配置方式, @Transactional注解应该是最为常用的一种方式了.这一节就说说@Transactional注解. @Transact ...
- C# 中使对象序列化/反序列化 Json 支持使用派生类型以及泛型的方式
C# 中使对象序列化/反序列化 Json 支持使用派生类型以及泛型方式 废话 前言 为啥想写这个博客 最近自己写的框架有用到这个 类似工作流,支持节点编码自定义,动态运行自定义. 尽量减少动态解析这就 ...