EnlightenGAN的代码运行过程问题记录

一、前期准备过程

1、代码:https://github.com/VITA-Group/EnlightenGAN

2、conda创建虚拟环境:

conda create -n enlighten python=3.5

3、进入项目文件夹,打开终端

conda activate enlighten
pip install -r requirement.txt

4、创建文件夹mkdir

mkdir model

5、下载VGG pretrained model,放入model文件夹中


二、训练过程

1、创建文件夹…/final_dataset/trainA and …/final_dataset/trainB(即final_dataset文件夹与项目文件夹同级的位置),将图片下载分别放入

2.进行可视化过程

nohup python -m visdom.server -port=8097

可选步骤

1.打开浏览器,输入http://localhost:8097/(可以实时观看图片结果)
如果在另一台电脑上跑,输入地址:地址号:端口号
如:10.162.34.109:8097

2.关于如何停止visdom.server步骤:
(1)ps -aux | grep visdom.server
(2)sudo kill 进程号(PID)

  • 可能出现的问题:
    (1)在这里插入图片描述
    解决:
    修改server.py文件
    找到Anaconda3\envs\pytorch\Lib\site-packages\visdom\server.py文件,在1917行(不一定每个人都在这一行,从后往前找就行),将其注释掉。

    在这里插入图片描述
    (2)

ERROR:tornado.general:Could not open static file ‘/home/xl/.conda/envs/enlighten/lib/python3.5/site-packages/visdom/static/js/react-grid-layout.min.js’

解决:实验室的服务器没有网,需要离线本地下载react-grid-layout.min.js文件放到/home/xl/.conda/envs/enlighten/lib/python3.5/site-packages/visdom/static/js/下

3.另开一个终端,激活虚拟环境enlighten后,输入:

python scripts/script.py --train
  • 可能出现的问题:

RuntimeError:cuDNN error: CUDNN_STATUS_EXECUTION_FAILED

解决方法:
(1)在train.py中加入:

import torch
torch.backends.cudnn.enabled = False

(2)将batchsize改小或者减小训练图片的尺寸

我的将batchsize改为了1,把训练图片的尺寸改成了256*256,
并且将base_dataset.py中的transform_list.append(transforms.RandomCrop(opt.finesize))改成了transform_list.append(transforms.RandomCrop(256))

注意:训练挺需要显存的,论文作者说3张1080ti训练3个小时。不然就只能把batchsize调小了

4.运行成功

------------ Options -------------
D_P_times2: False
IN_vgg: False
batchSize: 1
beta1: 0.5
checkpoints_dir: ./checkpoints
config: configs/unit_gta2city_folder.yaml
continue_train: False
dataroot: ../final_dataset
dataset_mode: unaligned
display_freq: 30
display_id: 1
display_port: 8097
display_single_pane_ncols: 0
display_winsize: 256
fcn: 0
fineSize: 320
gpu_ids: [0]
high_times: 400
hybrid_loss: True
identity: 0.0
input_linear: False
input_nc: 3
instance_norm: 0.0
isTrain: True
l1: 10.0
lambda_A: 10.0
lambda_B: 10.0
latent_norm: False
latent_threshold: False
lighten: False
linear: False
linear_add: False
loadSize: 286
low_times: 200
lr: 0.0001
max_dataset_size: inf
model: single
multiply: False
nThreads: 4
n_layers_D: 5
n_layers_patchD: 4
name: enlightening
ndf: 64
new_lr: False
ngf: 64
niter: 100
niter_decay: 100
no_dropout: True
no_flip: False
no_html: False
no_lsgan: False
no_vgg_instance: False
noise: 0
norm: instance
norm_attention: False
output_nc: 3
patchD: True
patchD_3: 5
patchSize: 32
patch_vgg: True
phase: train
pool_size: 50
print_freq: 100
resize_or_crop: crop
save_epoch_freq: 5
save_latest_freq: 5000
self_attention: True
serial_batches: False
skip: 1.0
syn_norm: False
tanh: False
times_residual: True
use_avgpool: 0
use_mse: False
use_norm: 1.0
use_ragan: True
use_wgan: 0.0
vary: 1
vgg: 1.0
vgg_choose: relu5_1
vgg_maxpooling: False
vgg_mean: False
which_direction: AtoB
which_epoch: latest
which_model_netD: no_norm_4
which_model_netG: sid_unet_resize
-------------- End ----------------
train.py:11: YAMLLoadWarning: calling yaml.load() without Loader=... is deprecated, as the default Loader is unsafe. Please read https://msg.pyyaml.org/load for full details.
  return yaml.load(stream)
CustomDatasetDataLoader
dataset [UnalignedDataset] was created
#training images = 1016
./model
---------- Networks initialized -------------
DataParallel(
  (module): Unet_resize_conv(
    (conv1_1): Conv2d(4, 32, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
    (downsample_1): MaxPool2d(kernel_size=(2, 2), stride=(2, 2), dilation=(1, 1), ceil_mode=False)
    (downsample_2): MaxPool2d(kernel_size=(2, 2), stride=(2, 2), dilation=(1, 1), ceil_mode=False)
    (downsample_3): MaxPool2d(kernel_size=(2, 2), stride=(2, 2), dilation=(1, 1), ceil_mode=False)
    (downsample_4): MaxPool2d(kernel_size=(2, 2), stride=(2, 2), dilation=(1, 1), ceil_mode=False)
    (LReLU1_1): LeakyReLU(0.2, inplace)
    (bn1_1): BatchNorm2d(32, eps=1e-05, momentum=0.1, affine=True)
    (conv1_2): Conv2d(32, 32, kernel_size=(3, 3), stride=(1, 1), 
  • 14
    点赞
  • 65
    收藏
    觉得还不错? 一键收藏
  • 39
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 39
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值