pytorch-CycleGAN-and-pix2pix项目复现和部署
虽然之前在家里学习了一阵子,但是仅仅停留在理论基础,实际项目部署真的一点也不会,多亏了一位师兄的帮助才让让我得以复现这段代码(非常感谢)。
环境准备
这里只用到了软件Xshell
源码链接地址:https://github.com/junyanz/pytorch-CycleGAN-and-pix2pix
正式步骤
首先通过端口号和主机号连接好师兄的服务器环境,把项目源码下载到本地单独建立的文件夹,创建虚拟环境env2,接下来按照github上一步一步的来就可以了。
token值前面的是服务器的ip地址。
连接服务器,创建文件夹,创建虚拟环境(一定要指定好python的版本号,不然后面一切都白搭,容易出现command问题),进入虚拟环境。打开github文档,将项目下载到本地,然后拖拽,尽量别git clone。解压缩,删除压缩包。按照github上面的步骤cd或者pip。
如果pip一个和github相关的文件,同样先从网站上直接下载,下载的过程中还要再次读一遍github这个下载网页的注意事项。
接下来安装jupyter notebook。
把该安装好的都安装好了,下一步,本地端口号映射到服务器的端口号。映射好了之后再本地输入localhost8080就能进入jupyternotebook。
conda安装jupyter的时候,安装在哪里,浏览器打开后的目录就是在哪里,所以jupyter一般都安装在工程里面。
输入ide的token值。
绿色箭头就是报错的意思,也是错误的根源。
import cv2就是检查cv2有没有安装成功。
jupyter notebook中单独执行代码块alt enter,edit里面可以切掉代码块,cell也可以增加代码块,
ls | grep xxx:显示当前目录下,文件名字中有xxx的文件信息
ps -ef:ps-ef用于查看全格式的全部进程,其中“ps”是在Linux中是查看进程的命令,“-e”参数代表显示所有进程,“-f”参数代表全格式。
虚拟环境下,不管在什么路径下安装依赖都会安装到对应虚拟环境的Anaconda。
.sh是liunx中的可执行文件,shell脚本,如果不是可执行文件,可以使用命令chmod 999 xxxx.sh也可以使用chmod x xxxx.sh。
-dataroot相当于一个形参,-dataroot后面一长串子都属于实参。
看论文直接从谷歌学术上看。
如果论文没有很直观的感觉,在jupyter notebook里新建一个python3文件,把从colab上找到的步骤命令复制在代码块里一步一步的执行,本地映射和Xshell都不要关。
github上如果又url这种网址的时候,映射到本地端口号时记得修改,如果在网页展示的同时,还需要开jupyter notebook,dos命令是可以多开的,服务器和本机的端口号得改的不一样,一样的话就被占用了。
今天主要遇到的问题首先昨天从网站上打开的可视化界面vidom今天的地址已经被使用了。address already in use,一般情况下已经被后台的其他进程给占用了,ps -ef命令可以查看当前所有进程,对应其进程号PID找到后,用命令kill -9 PID就可以杀死进程。再扩展一个命令TOP查看内存和服务器进程,查看完成之后ctrl+C中断。
关于地址映射的这条命令,ssh -L:8009:localhost:8097 root@10.131.145.4 -p6145,前面的8009和后面的8097都是可以随便改的,但是后面的才是重点,前面的只是用来在自己本地跑,事实上没啥讲究,尽量别和后面的一样就行。
还有一点要强调的是,在jupyter编辑器里,开头是pip,python,bash是执行命令,而不是普通的代码块,所以要加句首要加!。
nvidia-smi -L查看gpu硬件配置。
运行结果
嘻嘻,能运行成功我就已经很开心啦。
结果大概就是这样子。