!!!Ubuntu下相关命令!!!

!!利用GPU跑代码涉及的命令行指令!!

进入子路径:cd 子路径名 回车

返回至根目录 cd ..回车

查看实验室的GPU占用情况:nvidia-smi

谁在占用GPU:who

动态显示谁在输入什么命令之类的:top

杀死进程:先用nvidia-smi显示正在使用情况 PID,然后杀死进程,kill -9 PID号。

 

#进入虚拟环境

处于rootPath:who -Z270-HD3:~$

从rootPath进入virtualEnvi:who -Z270-HD3:~$ source activate tensorflow

处于virtualEnvi:(tensorflow) who-Z270-HD3:~$

 

#查找本机IP:ip addr

 

#当前文件夹下的内容列表(list)

input:(tensorflow) who-Z270-HD3:~/miniconda3$ ls

output:

bin              envs     lib          share

compiler_compat  etc      LICENSE.txt  ssl

conda-meta       include  pkgs         x86_64-conda_cos6-linux-gnu

Ps:“ll”等价于“ls -l”它是输出该文件夹下的详细内容。

 

#某个文件夹的位置:find -name 文件夹名(eg:torch)

 

!!软件安装!!

#sudo的含义:

sudo是superuser do的简写,其含义是以超级用户的权限运行,普通用户无法执行许多命令,比如说安装程序。

 

#Ubuntu下apt-get install安装与pip install安装的区别

ddd:pip安装 the package of python,apt-get用于安装 the package of system(系统的包)。

 

#ubuntu安装解压rar文件:

solution:sudo apt-get install unrar

https://zhidao.baidu.com/question/128157126.html?qbl=relate_question_1&word=ubuntu%BD%E2%D1%B9rar%CE%C4%BC%FE

 

#ubuntu自带截图工具screenshot及快捷键的设置

https://blog.csdn.net/qq_38880380/article/details/78233687

 

#python安装在哪儿?查找可执行文件的安装位置

input:(tensorflow) who-Z270-HD3:~/miniconda3/envs$ which python

output:/home/who/.conda/envs/tensorflow/bin/python

 

#ubuntu下装teamviewer

https://blog.csdn.net/manjianchao/article/details/78566029

1. 查看Ubuntu的是64还是32位:sudo uname –m(返回值为x86_64就是64位系统的),然后在teamviewer官网下载Ubuntu的安装包:teamviewer_11.0.xxxxx_i386.deb。

2. 在安装包所在的文件夹下执行安装命令:sudo dpkg -i teamviewer_11.0.xxxxx_i386.deb,可能会报错缺少依赖包的安装,如下图所示:

然后执行:sudo apt-get install –f (–”是2根“-”)

再次执行命令:sudo dpkg -i teamviewer_11.0.xxxxx_i386.deb

3. 接受license。在computer/opts/路径下找到teamviewer文件夹,文件夹中内容如下所示。标黄部分即为可执行文件,双击,在弹出来的对话框中“接受license”。

4. 执行命令停止服务:sudo teamviewer --daemon stop

5. 修改配置文件。

(1)别人的方法

进入子路径:cd /opt/teamviewer/config/

查看当前路径下内容列表:ll(2个小写的“L”)

文本编辑器查看:sudo vim global.conf

在末尾添加如下内容,然后保存退出,命令“wq”

[int32] EulaAccepted = 1

[int32] EulaAcceptedRevision = 6

查看修改后的文件:cat global.conf

(2)我的方法:深入路径,对global.conf内容进行添加。

找到,在终端中输入:sudo nautilus global.conf,以管理员权限打开文件,添加相应内容至末尾,保存退出。

若结合网址(https://blog.csdn.net/williamfan21c/article/details/56495261)对vim的相关命令进行理解后还是会使用方法(1)了。

6. 启动teamviewer:sudo teamviewer --daemon start

7. 然后再打开teamviewer的UI,就有ID和密码了,无人值守的密码设置见“optionsàsecurity”

若按照流程走下来没错就好,若UI中出现的“connection错误”,我尝试了sudo dpkg -i teamviewer_11.0.xxxxx_i386.deb命令再次进行安装,反复几次就安装成功了。

 

#ubuntu下VScode的安装

下载安装包后执行命令sudo dpkg -i code_1.19.2-1515599945_amd64.deb,就可以在菜单栏看到VScode这个软件了。使用命令“code”,就像打开matlab一样也能打开VScode。

 

!!!Windows下分割数据集标注软件labelme的安装与使用!!!

1. 语义分割标记数据的软件labelme:https://github.com/wkentaro/labelme

2. NotWritableError: The current user does not have write permissions to a required path。https://blog.csdn.net/qq_29680341/article/details/82917703

3. 安装的命令行指令:

conda create --name=labelme python=3.6

conda activate labelme

pip install pyqt5

pip install labelme

4. 如何使用labelme软件?

以管理员方式打开Anaoconda Prompt

输入:conda activate labelme

输入:labelme 打开软件

在UI界面完成标记,输出.json文件后,尝试将其转化为label.png。操作如下所示:

命令行指令:labelme_json_to_dataset input_json_name –o output_path

eg:input_json_name = “E:/imgsForLabel/pic1.json”

       output_path = “E:/imgsForLabel/pic1_json”

输出:Saved to: F:/labelme-master/labelme/cli/pic1_json

PS:除此之外还有https://github.com/abreheret/PixelAnnotationTool有.exe可直接使用;使用watershed marked算法,在前景和背景上分别做少许标记,就能完成分割,较智能化。但是感觉该软件一言不合就崩掉。

 

!!!运行代码报的错及解决方法!!!

#训练时

ImportError:No module named cv2

解决方法:pip install opencv-python

 

#测试时:

ModuleNotFoundError: No module named 'tqdm'

解决方法:pip install tqdm

 

 

!!!python的相关命令!!!

1. 查看已安装的包及版本: pip list

2. python 包的安装、卸载、升级等:https://www.cnblogs.com/wangzhao2016/p/6564362.html,重点涉及一次性在线安装多个包:pip install -r requirements.txt

3. visdom用于画图。

 

!!!pytorch的相关知识点!!!

1. 查看变量类型:(黄色内容为输入)

 

2. 数据类型转换:int(x),float(x)…https://www.cnblogs.com/paranoia/p/6164547.html

3. numpy中array数据的.size = 各个通道数的乘积,shape才是各个通道数的大小。

4. 输出log文件时报错,学习byte与str之间的转换:https://blog.csdn.net/bible_reader/article/details/53047550

5. TypeError: split() got an unexpected keyword argument 'split_size'。

之后将’split_size’这个参数去掉之后,报错:TypeError: split() missing 1 required positional argument: 'split_size_or_sections',于是将'split_size'更改为'split_size_or_sections'问题就解决了。

6. AttributeError: 'dict' object has no attribute 'has_key'

7. 代码过长的换行:python代码换行就是每行后面加个 “\”。

8. permute:

 

9. contiguous():https://blog.csdn.net/appleml/article/details/80143212

10. a = torch.rand(1, 2, 3, 4) #即torch.Size(1, 2, 3, 4)。为什么a[:, 0]是一个torch.Size(1, 3, 4)的tensor?A:索引在哪个维度上就略掉该维度,输出其他维度上的所有内容。

11. unsqueeze:tensor维度的增加。

posted on 2018-10-23 16:58  QFighting  阅读(837)  评论(0编辑  收藏  举报