Spaces:
Runtime error
Runtime error
| #!/usr/bin/env python | |
| # -*- coding:utf-8 -*- | |
| # Power by Zongsheng Yue 2022-07-16 12:42:42 | |
| import sys | |
| from pathlib import Path | |
| sys.path.append(str(Path(__file__).resolve().parents[3])) | |
| import os | |
| import math | |
| import torch | |
| import argparse | |
| from einops import rearrange | |
| from datapipe.datasets import DatasetBicubic | |
| from utils import util_image | |
| from utils import util_common | |
| parser = argparse.ArgumentParser() | |
| parser.add_argument( | |
| "--files_txt", | |
| type=str, | |
| default='./datapipe/files_txt/celeba512_val.txt', | |
| help="File names") | |
| parser.add_argument( | |
| "--sf", | |
| type=int, | |
| default=8, | |
| help="Number of trainging iamges", | |
| ) | |
| parser.add_argument( | |
| "--bs", | |
| type=int, | |
| default=8, | |
| help="Batch size", | |
| ) | |
| parser.add_argument( | |
| "--save_dir", | |
| type=str, | |
| default='', | |
| help="Folder to save the fake iamges", | |
| ) | |
| parser.add_argument( | |
| "--num_images", | |
| type=int, | |
| default=100, | |
| help="Number of iamges", | |
| ) | |
| args = parser.parse_args() | |
| save_dir = Path(args.save_dir) | |
| if not save_dir.stem.endswith(f'x{args.sf}'): | |
| save_dir = save_dir.parent / f"{save_dir.stem}_x{args.sf}" | |
| util_common.mkdir(save_dir, delete=True) | |
| dataset = DatasetBicubic( | |
| files_txt=args.files_txt, | |
| up_back=True, | |
| need_gt_path=True, | |
| sf=args.sf, | |
| length=args.num_images, | |
| ) | |
| dataloader = torch.utils.data.DataLoader( | |
| dataset, | |
| batch_size=args.bs, | |
| drop_last=False, | |
| num_workers=4, | |
| pin_memory=False, | |
| ) | |
| for ii, data_batch in enumerate(dataloader): | |
| im_lq_batch = data_batch['lq'] | |
| im_path_batch = data_batch['gt_path'] | |
| print(f"Processing: {ii+1}/{math.ceil(len(dataset) / args.bs)}...") | |
| for jj in range(im_lq_batch.shape[0]): | |
| im_lq = rearrange( | |
| im_lq_batch[jj].clamp(0.0, 1.0).numpy(), | |
| 'c h w -> h w c', | |
| ) | |
| im_name = Path(im_path_batch[jj]).name | |
| im_path = save_dir / im_name | |
| util_image.imwrite(im_lq, im_path, chn='rgb', dtype_in='float32') | |