emb_weights = getGloveEmbeddings('../embeddings', cache, t2i) emb_weights = torch.tensor(emb_weights, device=device) if args['--encoder'] == 'simple': emb_size = 50 text_encoder = models.SimpleTextEncoder(emb_weights) elif args['--encoder'] == 'mere': emb_size = 64 text_encoder = models.TextEncoder(emb_weights, proj=True) elif args['--encoder'] == 'joint': pass else: raise TypeError('Invalid encoder type') dim_Z = 50 generator = models.VideoGenerator(dim_Z, emb_size) image_discriminator = models.ImageDiscriminator( cond_size=emb_size, noise=args['--noise'], sigma=float(args['--sigma'])) video_discriminator = models.VideoDiscriminator( cond_size=emb_size, noise=args['--noise'], sigma=float(args['--sigma'])) generator.to(device) text_encoder.to(device) image_discriminator.to(device) video_discriminator.to(device) dis_dict = {'image': image_discriminator, 'video': video_discriminator}
# Dataset of all dataset = data.VideoFolderDataset(args['<dataset>'], cache=os.path.join(args['<dataset>'], 'local.db')) # Object to get images from dataset VideoFolderDataset above image_dataset = data.ImageDataset(dataset, image_transforms) # Dataloader to load images image_loader = DataLoader(image_dataset, batch_size=image_batch, drop_last=True, num_workers=2, shuffle=True) # Object to get videos from dataset VideoFolderDataset above video_dataset = data.VideoDataset(dataset, video_length=16, every_nth=2, transform=video_transforms) # Dataloader to load videos video_loader = DataLoader(video_dataset, batch_size=video_batch, drop_last=True, num_workers=2, shuffle=True) # Create object of VideoGenerator generator = models.VideoGenerator(n_channels, dim_z_content=dim_z_content, dim_z_view=dim_z_view, dim_z_motion=dim_z_motion, dim_z_category=dim_z_category, video_length=video_length) # Create object of ImageDiscriminator image_discriminator = build_discriminator(args['--image_discriminator'], n_channels=n_channels, dim_z_view=dim_z_view, use_noise=args['--use_noise'], noise_sigma=float(args['--noise_sigma'])) # Create object of VideoDiscriminator video_discriminator = build_discriminator(args['--video_discriminator'], n_channels=n_channels, dim_z_view=dim_z_view, dim_z_category=dim_z_category, use_noise=args['--use_noise'], noise_sigma=float(args['--noise_sigma'])) # Push all networks to GPU print("torch.cuda.is_available() = ", torch.cuda.is_available())
image_dataset = data.ImageDataset(dataset, image_transforms) image_loader = DataLoader(image_dataset, batch_size=image_batch, drop_last=True, num_workers=2, shuffle=True) video_dataset = data.VideoDataset(dataset, 16, 2, video_transforms) video_loader = DataLoader(video_dataset, batch_size=video_batch, drop_last=True, num_workers=2, shuffle=True) generator = models.VideoGenerator(n_channels, dim_z_content, dim_z_category, dim_z_motion, video_length) image_discriminator = build_discriminator(args['--image_discriminator'], n_channels=n_channels, use_noise=args['--use_noise'], noise_sigma=float( args['--noise_sigma'])) video_discriminator = build_discriminator(args['--video_discriminator'], dim_categorical=dim_z_category, n_channels=n_channels, use_noise=args['--use_noise'], noise_sigma=float( args['--noise_sigma']))
image_batch = int(args['--image_batch']) video_batch = int(args['--video_batch']) dim_z_content = int(args['--dim_z_content']) dim_z_motion = int(args['--dim_z_motion']) dim_z_category = int(args['--dim_z_category']) dataset = data.VideoFolderDataset(args['<dataset>'], cache=os.path.join(args['<dataset>'], 'local.db')) image_dataset = data.ImageDataset(dataset, image_transforms) image_loader = DataLoader(image_dataset, batch_size=image_batch, drop_last=True, num_workers=2, shuffle=True) content_image_loader = DataLoader(image_dataset, batch_size=image_batch, drop_last=True, num_workers=2, shuffle=True) video_dataset = data.VideoDataset(dataset, 16, 2, video_transforms) video_loader = DataLoader(video_dataset, batch_size=video_batch, drop_last=True, num_workers=2, shuffle=True) generator = models.VideoGenerator(n_channels, dim_z_content, dim_z_category, dim_z_motion, video_length, content_image_sampler=content_image_loader, use_cuda=use_cuda) image_discriminator = build_discriminator(args['--image_discriminator'], n_channels=n_channels, use_noise=args['--use_noise'], noise_sigma=float(args['--noise_sigma'])) video_discriminator = build_discriminator(args['--video_discriminator'], dim_categorical=dim_z_category, n_channels=n_channels, use_noise=args['--use_noise'], noise_sigma=float(args['--noise_sigma'])) if torch.cuda.is_available(): generator.cuda() image_discriminator.cuda() video_discriminator.cuda() trainer = Trainer(image_loader, video_loader, int(args['--print_every']),
video_transforms = functools.partial(video_transform, image_transform=image_transforms) factor = int(args["--factor"]) dim_z_view = int(args["--dim_z_view"]) dim_z_category = int(args["--dim_z_category"]) num_class = dim_z_view * dim_z_category video_length = int(args["--video_length"]) input_path = str(args["--input_path"]) # Create object of VideoGenerator generator = models.VideoGenerator(n_channels=3, dim_z_content=50, dim_z_view=dim_z_view, dim_z_motion=10, dim_z_category=dim_z_category, dim_z_object=2, video_length=video_length, video_transforms=video_transforms, image_transforms=image_transforms, ngf=64) print(generator) print("torch.cuda.is_available() = ", torch.cuda.is_available()) if torch.cuda.is_available(): print("torch.cuda.is_available() = ", torch.cuda.is_available()) generator.cuda() generator.load_state_dict(checkpoint['generator']) generator.eval() output_folder = "./test_encode_module" if not os.path.exists(output_folder):
dim_z_category = int(args["--dim_z_category"]) num_class = dim_z_view * dim_z_category video_length = int(args["--video_length"]) output_folder = str(args["--output_folder"]) performer_name = str(args["--performer_name"]) is_6_dau = args["--is_6_dau"] offset = 0 if (is_6_dau == False): offset = 6 # Create object of VideoGenerator generator = models.VideoGenerator(n_channels=3, dim_z_content=50, dim_z_view=dim_z_view, dim_z_motion=10, dim_z_category=dim_z_category, video_length=video_length, ngf=64) print(generator) print("torch.cuda.is_available() = ", torch.cuda.is_available()) if torch.cuda.is_available(): print("torch.cuda.is_available() = ", torch.cuda.is_available()) generator.cuda() generator.load_state_dict(checkpoint['generator']) generator.eval() # Create output folder if not os.path.exists(output_folder): os.makedirs(output_folder)
num_workers=2, shuffle=True) video_dataset = data.VideoDataset(dataset, 16, 2, video_transforms) video_loader = DataLoader(video_dataset, batch_size=video_batch, drop_last=True, num_workers=2, shuffle=True) generator = models.VideoGenerator( n_channels, dim_z_content, dim_z_category, dim_z_motion, video_length, use_cgan_proj_discr=use_cgan_proj_discr, n_categories=n_categories, n_content_categories=n_content_categories, resnet=resnet, content_only_style=content_only_style) print('generator') print(generator) if not use_cgan_proj_discr: image_discriminator = build_discriminator( args['--image_discriminator'], n_channels=n_channels, use_noise=args['--use_noise'], noise_sigma=float(args['--noise_sigma'])) else:
# Object to get images from dataset VideoFolderDataset above encode_image_dataset = data.ImageDataset(dataset, image_transforms) # Dataloader to load images encode_image_loader = DataLoader(encode_image_dataset, batch_size=image_batch, drop_last=True, num_workers=2, shuffle=True) # Create object of VideoGenerator generator = models.VideoGenerator(n_channels, dim_z_content=dim_z_content, dim_z_view=dim_z_view, dim_z_motion=dim_z_motion, dim_z_category=dim_z_category, dim_z_object=dim_z_object, video_length=video_length, encode_video_loader=encode_video_loader, encode_image_loader=encode_image_loader, video_transforms=video_transforms, image_transforms=image_transforms) # Create object of ImageDiscriminator image_discriminator = build_discriminator(args['--image_discriminator'], n_channels=n_channels, dim_z_view=dim_z_view, dim_z_object=dim_z_object, use_noise=args['--use_noise'], noise_sigma=float( args['--noise_sigma']))