butterflies / utils.py
joacorf33's picture
huggan issue fixed
d3e3435
# Utils Standards
# Numerical Management
import numpy as np
# Pythorch
import torch
# A hugging face library
from huggan.pytorch.lightweight_gan.lightweight_gan import LightweightGAN
"""Let's now set up the model functions"""
def load_model(model_name = "ceyda/butterfly_cropped_uniq1K_512", model_version=None):
# GAN set-up
gan = LightweightGAN.from_pretrained(model_name, version=model_version)
# GAN Inference Evaluation
gan.eval()
return gan
# Let's set-up a second function for generation form
def generate(gan, batch_size=1):
with torch.no_grad():
# Cleaning process to properly fit it to the model
ims = gan.G(torch.randn(batch_size, gan.latent_dim)).clamp_(0.0, 1.0) * 255
#
ims = ims.permute(0, 2, 3, 1).detach().cpu().numpy().astype(np.uint8)
return ims