nestorxyz's picture
feat: generate butterflies
1906ff3
import numpy as np
import torch
from huggan.pytorch.lightweight_gan.lightweight_gan import LightweightGAN
def load_model(model_name="ceyda/butterfly_cropped_uniq1k_512", model_version=None):
gan = LightweightGAN.from_pretrained(model_name, version=model_version)
gan.eval()
return gan
def genera(gan, batch_size=1):
with torch.no_grad():
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
def generate_images(gan, n_images=1, batch_size=1):
images = []
for i in range(n_images // batch_size):
images.append(genera(gan, batch_size=batch_size))
images = np.concatenate(images, axis=0)
return images