pytorch-CycleGAN-and-pix2pix
环境要求
-
Linux(ubuntu 16.04)
-
python3.5
-
Nvidia GPU 1080
-
Cuda8.0
-
Cudnn6.0
-
pytorch搭建比较简单,看这个博客
安装
- Install PyTorch 0.4, torchvision, and other dependencies from http://pytorch.org
- 安装 visdom and dominate.
pip install visdom dominate
- 以下命令安装所有的依赖
pip install -r requirements.txt
- 下载库
git clone https://github.com/junyanz/pytorch-CycleGAN-and-pix2pix
cd pytorch-CycleGAN-and-pix2pix
- conda可以用以下命令进行安装环境依赖
./scripts/conda_deps.sh
Train
用已有数据集训练
- 用下载脚本进行下载maps数据集:
bash ./datasets/download_cyclegan_dataset.sh maps
- Train a model:
#!./scripts/train_cyclegan.sh
python train.py --dataroot ./datasets/maps --name maps_cyclegan --model cycle_gan
- 查看训练结果以及loss
运行python -m visdom.server
并单击URL http:// localhost:8097(端口号可以通过-p来指定)。要查看更多中间结果,请查看./checkpoints/maps_cyclegan/web/index.html
Test
- 测试模型:
#!./scripts/test_cyclegan.sh
python test.py --dataroot ./datasets/maps --name maps_cyclegan --model cycle_gan
测试结果将保存到html文件中:./results/maps_cyclegan/latest_test/index.html
。
预训练模型
-
--model test
仅用于为一侧生成CycleGAN的结果。python test.py --model cycle_gan
将需要在两个方向上加载和生成结果,这有时是不必要的。结果将保存在./results/
。使用--results_dir {directory_path_to_save_result}
指定的结果目录。 -
如果您想将预先训练的模型应用于输入图像集合(而不是图像对),请使用
--dataset_mode single
和--model test
选项。这是一个将模型应用于Facade标签贴图(存储在目录中facades/testB
)的脚本。#!./scripts/test_single.sh python test.py --dataroot ./datasets/facades/testB/ --name {your_trained_model_name} --model test
训练与测试自己的数据集
训练自己的数据集需要在数据集文件夹下创建两个文件夹trainA
和trainB
,这两个文件夹包含的图片是来自于A和B两个域。
你可以在你的训练设定设定测试模型--phase train
在test.py
。您还可以创建子目录testA
和testB
,如果你有测试数据。
- 打开visdom服务器
source activate pytorch
pip install visdom dominate
python -m visdom.server
# 如果端口冲突,则用-p进行端口的指定
- 训练
source activate pytorch
python train.py --dataroot ./datasets/cow2 --name cow2_cyclegan --model cycle_gan
遇到的问题
来自:@luyue
出现的问题:
①导入torch出错
是anaconda的问题,解决办法
cp /usr/lib/x86_64-linux-qnu/libgomp.so.1 /home/learner/anaconda3/lib/libgomp.so.1
cp /usr/lib/x86_64-linux-qnu/libstdc++.so.6 /home/learner/anaconda3/lib/libstdc++.so.6
②可视化界面 python -m visdom.server出错(安装使用visdom)
其实还可以用 python -m visdom.server -p 8097
最开始打不开,是由于google没有连接上网
连接网络后打开空白,然后打开另外一个命令行运行自己的py文件
然后返回浏览器可以看到可视化界面