Download inference.py from hakansivuk/DiverseSemanticImageEditing: direct link, hf CLI and curl.
- Browser
- Download file 1.57 kB
-
https://huggingface.co/spaces/hakansivuk/DiverseSemanticImageEditing/resolve/main/inference.py
- Command line
-
hf download hf://spaces/hakansivuk/DiverseSemanticImageEditing/inference.py
-
curl -L -o inference.py https://huggingface.co/spaces/hakansivuk/DiverseSemanticImageEditing/resolve/main/inference.py
1.57 kB
| from model.utils import get_config, tensor2im | |
| from model.inference_handler import InferenceHandler | |
| from model.dataset import Image_Editing_Dataset | |
| import torch | |
| import cv2 | |
| from torch.utils.data import DataLoader | |
| def get_cfg(): | |
| cfg = get_config("checkpoints/config.yaml") | |
| cfg['lab_dim'] = 151 | |
| cfg['max_epoch'] = 500 | |
| cfg['test_freq'] = 20 | |
| cfg["is_train"] = False | |
| cfg["dataset_name"] = "flickr-landscape" | |
| return cfg | |
| def get_inference_handler(cfg): | |
| inference_handler = InferenceHandler(cfg) | |
| inference_handler.eval() | |
| inference_handler.load_checkpoint(ckpt_filename="checkpoints/best.pth") | |
| return inference_handler | |
| def get_dataloader(cfg): | |
| dataset_root = "gradio_files/samples" | |
| dataset = Image_Editing_Dataset(cfg, dataset_root, split='test', dataset_name="flickr-landscape") | |
| return DataLoader(dataset=dataset, batch_size=1, shuffle=False) | |
| def start_inference(): | |
| cfg = get_cfg() | |
| inference_handler = get_inference_handler(cfg) | |
| dataloader = get_dataloader(cfg) | |
| cached_codes = torch.load("checkpoints/style_codes.pt", map_location=torch.device("cpu")) | |
| save_path = 'gradio_files/samples/synthesized_image/result.png' | |
| with torch.no_grad(): | |
| cfg['mask_type'] = '0' | |
| for i, data in enumerate(dataloader): | |
| inference_handler.set_input(data) | |
| inference_handler.forward(cached_codes) | |
| result = inference_handler.get_results() | |
| cv2.imwrite(save_path, tensor2im(result)) | |
| return save_path | |
| if __name__ == "__main__": | |
| start_inference() | |