-
Notifications
You must be signed in to change notification settings - Fork 5
Description
Hi. Thanks so much for sharing your impressive work.
I am trying to re-implement your recent work, but it seems a little difficult for me to re-implement your work.
Currently, I am re-implementing your GTA5->Cityscapes experiment based on drn26 network.
At first, I generated GTA5->Cityscapes images following the guide.
python3 train.py --dataroot='./datasets/data_semseg' --gpu_ids='0' --model='cycle_gan' --display_freq=100 --display_ncols=2 --save_latest_freq=2000 --save_epoch_freq=1 --save_by_iter --niter=5 --niter_decay=15 --batch_size=1 --soft_phase=True --norm='instance' --normGNET='instance' --netG='resnet_9blocks' --display_port=18099 --name='gta2city' --lambda_A=10.0 --lambda_B=10.0 --lambda_identity=5.0 --lambda_P=50000.0 --lr=1e-5 --lrG=5e-5python3 export_images.py --dataroot='./datasets/data_semseg' --phase='train' --soft_phase=True --model='cycle_gan' --netG='resnet_9blocks' --norm='instance' --normGNET='instance' --name='gta2city' --load_iter=10000 --num_test=20 --results_dir='./results/gta2city'I just simply modify export_images script to convert all gta5 images to cityscapes style(a.k.a. cyclegta5 dataset in your repo). Here I used last updated generater. The generated images are looking good overall, and it seems work correctly.
Second, I cloned recent CyCADA (https://github.com/jhoffman/cycada_release) repo. Then I merge your UNet_CPN.py and train_cpn_cycada.py script file to the main folder of CyCADA.
At train_fcn_adda_cpn.sh, It seems that it requires pretrained cycada model for initial weights, so I downloaded "drn26_cycada_cyclegta2cityscapes.pth file" from CyCADA repo.
After that, I trained CPN network with the generated cyclegta5 dataset with train_cpn_cycada.py, just simply run this script file.
python train_cpn_cycada.pyWith the trained CPN network, I execute train_fcn_ada_cpn.sh file.
bash ./train_fcn_adda_cpn.shI evaluate the network of "net-itercurr.pth", but it gives bad performance (around 22% of mIoU).
Throughout the reproducing process, I didn't change any code except dataset directories and CPN permute functions that I mentioned on previous issue. I use python3.6.6, pytorch 1.6.0 with cuda 10.2, NVIDIA P40 GPU.
I also evaluate your trained network with evaluation script(eval_fcn.py) on CyCADA repo, and it gives good performance (42.6% mIoU). I think I miss some important steps, could you help me to reproduce it so I can verify your work?