一、写完595课程作业
1、安装cvpxy包
注意:官网上的安装有两句命令,不要漏掉第二句。
2、第一问
(1)首先弄清楚如何在word中插入好看的python代码:
参考网站:https://blog.csdn.net/u011303443/article/details/50992651
这个网站真的是向word里插入代码的神器啊!
http://www.planetb.ca/syntax-highlight-word
(2)然后弄清楚csv.reader是什么以及怎么用:
参考网站:https://python3-cookbook.readthedocs.io/zh_CN/latest/c06/p01_read_write_csv_data.html
注意:
csv产生的数据都是字符串类型的,它不会做任何其他类型的转换。 如果你需要做这样的类型转换,你必须自己手动去实现。
(3)我想尝试用二维数组array存储数据:
(i)定义二维数组:思路就是先用np.zeros([x,y])建立一个二维数组,然后再往里面加元素。
3、第二问:
需要弄清函数:np.concatenate 是进行数组拼接的函数
二、期中考试准备计划
两门课每天预习1节+复习一节
1节等于老师的一堂课
三、实现CycleGAN
1、学习顺序是:GAN pixel2pixel CycleGAN SpCycleGAN
先照着学长论文里的方法实现cycleGAN和spcycleGAN,然后空下来再去看李宏毅的视频去学习他们的方法.
先了解Cycle GAN
输入数据的一个集合(比如一堆马的照片)和输出数据的一个集合(比如一堆斑马的照片)就可以了。
https://zhuanlan.zhihu.com/p/27145954
https://zhuanlan.zhihu.com/p/45164258
其实这篇已经把理论介绍得比较详细了
原始论文是:https://arxiv.org/abs/1703.10593
2、了解CycleGAN
优点:CycleGAN的创新点在于能够在源域和目标域之间,无须建立训练数据间一对一的映射,就可实现这种迁移。
3、代码:语言是Pytorch
https://github.com/junyanz/CycleGAN
疑惑的地方是:cycleGAN感觉是用来进行风格迁移用的哎。。。怎么generate图呢?我去查了李宏毅的教程,里面没有讲到cycleGAN
直接下载代码去看代码吧!
确实是有用CycleGAN合成图像的文章,比如:
https://arxiv.org/pdf/1708.01155.pdf(这个还是MRtoCT的哎)
https://arxiv.org/pdf/1803.06629v3.pdf(但是这个是MRtoCT的)
4、先看CycleGAN的readme
直接看github下面的readme就可以啦。“Setup Training and Test data”这一节里讲了如何自己
直接进入Ubuntu的界面进行测试好啦。
先键入“python”和“import torch”测试pytorch是否安装成功
Ctrl+Z退出Python
疑问一:CycleGAN里的trainA和trainB以及testA和testB怎么对应?
看学长的论文:似乎用dataI和dataII分别放到trainA和trainB里面去。不对,文章里有respective这个词。
如果trainA里有苹果,trainB里有梨,CycleGAN是把苹果变成梨。
那么如果trainA是空,trainB是目标图,CycleGAN的目标是把trainA的空变成trainB的目标图(是这样吗?是的)
最后在test里面,testA是空,那么testB就是转化后的图。
好像这么一理,思路是对的了。
5、实现基本的cycleGAN(尝试顺利跑一遍)
希望在2:30前可以跑完吧!
疑问一、.lua是什么类型的文件呀?
参考网站:http://www.runoob.com/lua/lua-tutorial.html
Lua 是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放, 其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。
(1)把这段代码放到linux里面去,通过Winscp
(2)先cd到CycleGAN的文件夹
(3)然后不用跳转到Python界面,直接下载文件 horse2zebra
分析:文件存在datasets文件夹下,取名为horse2zebra,然后下面分为4个文件夹,trainA,trainB,testA,testB.
里面的照片格式为.jpg,大小为256*256像素。
(4)开始train,也是直接输入代码就可以。我用第一行的GPU的代码而不是下面的CPU的代码。
DATA_ROOT=./datasets/horse2zebra name=horse2zebra_model th train.lua
注意分析这段话:等号后面先是数据文件的文件夹名称,后面是name是自行定义的名称,train.lua是主路径下的训练代码。
这里报错:“th command cannot found”
解决办法:
https://github.com/junyanz/CycleGAN/issues/82
这个网站里的问答说的很清楚为什么要安装torch,以及torch与pytorch是不同的东西。
You need to install Lua Torch to run CycleGAN.
也就是说前面的准备工作中的安装,自己还要安装一遍。
如果按照原来的代码下的安装方法,需要sudo,肯定完成不了。
因此,我选择了选用这个文档里的方法:
http://torch.ch/docs/getting-started.html#_
注意:在网页上复制后,在命令行里是单击鼠标右键就可以粘贴啦。
当我运行第二行代码的时候,上面说我不是sudo,不能操作。那么我跳过第二行,直接运行第三行好啦。
运行第三行代码的时候最后报错,安装失败。估计还是没有安装torch的原因吧。。。。
所以明天改变计划,先完成其他内容吧!
四、明天的计划
上午:用GAN生成新的图像和groundtruth
下午:做完object evaluation
晚上:解释cycle GAN,做完PPT