ref = ref[:, :, :real.shape[2], :real.shape[3]] N = len(reals) - 1 n = opt.paint_start_scale in_s = imresize(ref, pow(opt.scale_factor, (N - n + 1)), opt) in_s = in_s[:, :, :reals[n - 1].shape[2], :reals[n - 1].shape[3]] in_s = imresize(in_s, 1 / opt.scale_factor, opt) in_s = in_s[:, :, :reals[n].shape[2], :reals[n].shape[3]] if opt.quantization_flag: opt.mode = 'paint_train' dir2trained_model = functions.generate_dir2save(opt) # N = len(reals) - 1 # n = opt.paint_start_scale real_s = imresize(real, pow(opt.scale_factor, (N - n)), opt) real_s = real_s[:, :, :reals[n].shape[2], :reals[n].shape[3]] real_quant, centers = functions.quant(real_s, opt.device) plt.imsave('%s/real_quant.png' % dir2save, functions.convert_image_np(real_quant), vmin=0, vmax=1) plt.imsave('%s/in_paint.png' % dir2save, functions.convert_image_np(in_s), vmin=0, vmax=1) in_s = functions.quant2centers(ref, centers) in_s = imresize(in_s, pow(opt.scale_factor, (N - n)), opt) # in_s = in_s[:, :, :reals[n - 1].shape[2], :reals[n - 1].shape[3]] # in_s = imresize(in_s, 1 / opt.scale_factor, opt) in_s = in_s[:, :, :reals[n].shape[2], :reals[n].shape[3]] plt.imsave('%s/in_paint_quant.png' % dir2save, functions.convert_image_np(in_s), vmin=0, vmax=1) if (os.path.exists(dir2trained_model)): # print('Trained model does not exist, training SinGAN for SR') Gs, Zs, reals, NoiseAmp = functions.load_trained_pyramid(opt) opt.mode = 'paint2image' else: train_paint(opt, Gs, Zs, reals, NoiseAmp, centers, opt.paint_start_scale) opt.mode = 'paint2image'
ref = ref[:, :, :real.shape[2], :real.shape[3]] N = len(reals) - 1 n = opt.paint_start_scale in_s = imresize(ref, pow(opt.scale_factor, (N - n + 1)), opt) in_s = in_s[:, :, :reals[n - 1].shape[2], :reals[n - 1].shape[3]] in_s = imresize(in_s, 1 / opt.scale_factor, opt) in_s = in_s[:, :, :reals[n].shape[2], :reals[n].shape[3]] if opt.quantization_flag: opt.mode = 'paint_train' dir2trained_model = functions.generate_dir2save(opt) # N = len(reals) - 1 # n = opt.paint_start_scale real_s = imresize(real, pow(opt.scale_factor, (N - n)), opt) real_s = real_s[:, :, :reals[n].shape[2], :reals[n].shape[3]] real_quant, centers = functions.quant(real_s) plt.imsave('%s/real_quant.png' % dir2save, functions.convert_image_np(real_quant), vmin=0, vmax=1) plt.imsave('%s/in_paint.png' % dir2save, functions.convert_image_np(in_s), vmin=0, vmax=1) in_s = functions.quant2centers(ref, centers) in_s = imresize(in_s, pow(opt.scale_factor, (N - n)), opt) # in_s = in_s[:, :, :reals[n - 1].shape[2], :reals[n - 1].shape[3]] # in_s = imresize(in_s, 1 / opt.scale_factor, opt) in_s = in_s[:, :, :reals[n].shape[2], :reals[n].shape[3]] plt.imsave('%s/in_paint_quant.png' % dir2save, functions.convert_image_np(in_s), vmin=0, vmax=1) if (os.path.exists(dir2trained_model)): # print('Trained model does not exist, training SinGAN for SR') Gs, Zs, reals, NoiseAmp = functions.load_trained_pyramid(opt) opt.mode = 'paint2image' else: train_paint(opt, Gs, Zs, reals, NoiseAmp, centers, opt.paint_start_scale) opt.mode = 'paint2image'