import torch
import os
import shutil
os.environ["CUDA_VISIBLE_DEVICES"] = '3'

def set_learning_rate(lr):
    for optimizer in engine.model.optimizers:
        util.set_opt_param(optimizer, 'lr', lr)

# python train_errnet_unaligned.py --name my_errnet --hyper --unaligned_loss vgg --save_epoch_freq 10
# python train_errnet_unaligned.py --name origin_errnet --hyper --unaligned_loss vgg --save_epoch_freq 10

if __name__ == "__main__":
    mp.set_start_method('spawn')
    
    opt = TrainOptions().parse()
    cudnn.benchmark = True
    opt.display_freq = 10 # copy from train_errnet.py
    datadir = opt.root_dir # datadir = '/media/kaixuan/DATA/Papers/Code/Data/Reflection/'

    # -------------delete previous model checkpoints --------------
    checkpoint_path = join(opt.checkpoints_dir, opt.name)
    if os.path.exists(checkpoint_path): shutil.rmtree(checkpoint_path)

    # ----------------------- data preparation -------------------
    # datadir_syn = join(datadir, 'VOCdevkit/VOC2012/PNGImages')
    # datadir_real = join(datadir, 'real_train')
    datadir_unaligned = join(datadir, 'unaligned', 'unaligned_train400')

    # train_dataset = datasets.CEILDataset(datadir_syn, read_fns('VOC2012_224_train_png.txt'), size=opt.max_dataset_size)
    # train_dataset_real = datasets.CEILTestDataset(datadir_real, enable_transforms=True)
示例#2
0
from os.path import join
from options.errnet.train_options import TrainOptions
from engine import Engine
from data.image_folder import read_fns
import torch.backends.cudnn as cudnn
import data.reflect_dataset as datasets
import util.util as util
import data

opt = TrainOptions().parse()

cudnn.benchmark = True

# modify the following code to 
datadir = '/media/kaixuan/DATA/Papers/Code/Data/Reflection/'

datadir_syn = join(datadir, 'VOCdevkit/VOC2012/PNGImages')
datadir_real = join(datadir, 'real_train')
datadir_unaligned = join(datadir, 'unaligned', 'unaligned_train250')

train_dataset = datasets.CEILDataset(datadir_syn, read_fns('VOC2012_224_train_png.txt'), size=opt.max_dataset_size)
train_dataset_real = datasets.CEILTestDataset(datadir_real, enable_transforms=True)

train_dataset_unaligned = datasets.CEILTestDataset(datadir_unaligned, enable_transforms=True, flag={'unaligned':True}, size=None)

train_dataset_fusion = datasets.FusionDataset([train_dataset, train_dataset_unaligned, train_dataset_real], [0.25,0.5,0.25])


train_dataloader_fusion = datasets.DataLoader(
    train_dataset_fusion, batch_size=opt.batchSize, shuffle=not opt.serial_batches, 
    num_workers=opt.nThreads, pin_memory=True)
示例#3
0
from os.path import join
from options.errnet.train_options import TrainOptions
from engine import Engine
from data.image_folder import read_fns
import torch.backends.cudnn as cudnn
import data.reflect_dataset as datasets
import util.util as util
import data

opt = TrainOptions().parse()

cudnn.benchmark = True

opt.display_freq = 10

if opt.debug:
    opt.display_id = 1
    opt.display_freq = 20
    opt.print_freq = 20
    opt.nEpochs = 40
    opt.max_dataset_size = 100
    opt.no_log = False
    opt.nThreads = 0
    opt.decay_iter = 0
    opt.serial_batches = True
    opt.no_flip = True

# modify the following code to
datadir = '/home/centos/reflection_removal/train_dataset/'
#'/media/kaixuan/DATA/Papers/Code/Data/Reflection/'
示例#4
0
from os.path import join, basename
from options.errnet.train_options import TrainOptions
from engine import Engine
from data.image_folder import read_fns
from data.transforms import __scale_width
import torch.backends.cudnn as cudnn
import data.reflect_dataset as datasets
import util.util as util

opt = TrainOptions().parse()

opt.isTrain = False
cudnn.benchmark = True
opt.no_log = True
opt.display_id = 0
opt.verbose = False

datadir = opt.root_dir  # datadir = '/media/kaixuan/DATA/Papers/Code/Data/Reflection/'

# Define evaluation/test dataset

eval_dataset_ceilnet = datasets.CEILTestDataset(
    join(datadir, 'testdata_CEILNET_table2'))
eval_dataset_sir2 = datasets.CEILTestDataset(join(datadir, 'sir2_withgt'))

eval_dataset_real = datasets.CEILTestDataset(join(datadir, 'real20'),
                                             fns=read_fns('real_test.txt'),
                                             size=20)

eval_dataset_postcard = datasets.CEILTestDataset(join(datadir, 'postcard'))
eval_dataset_solidobject = datasets.CEILTestDataset(
示例#5
0
import torch.backends.cudnn as cudnn
import data.reflect_dataset as datasets
import util.util as util
import data
import torch.multiprocessing as mp
import torch
import os
os.environ["CUDA_VISIBLE_DEVICES"] = '3'

# python eval_best.py --name my_errnet --hyper -r --unaligned_loss vgg
# python eval_best.py --name origin_errnet --hyper -r --unaligned_loss vgg

if __name__ == "__main__":
    mp.set_start_method('spawn')

    opt = TrainOptions().parse()

    opt.isTrain = True
    cudnn.benchmark = True
    opt.no_log = True
    opt.display_id = 0
    opt.verbose = False

    datadir = opt.root_dir

    # ----------------------- data preparation -------------------
    eval_dataset_ceilnet = datasets.CEILTestDataset(
        join(datadir, 'testdata_CEILNET_table2'))

    eval_dataset_real = datasets.CEILTestDataset(join(datadir, 'real20'),
                                                 fns=read_fns('real_test.txt'))