--- title: Generador de Letras con Difusión emoji: 🔤 colorFrom: blue colorTo: green sdk: gradio app_file: app.py pinned: false license: mit tags: - diffusion - letters - alphabet - image-generation - pytorch --- # Generador de Letras con Modelo de Difusión Este modelo utiliza un UNet condicionado por clase para generar letras del abecedario (A-Z) en imágenes de 512x512 píxeles en escala de grises. ## Características del Modelo - **26 clases**: Una para cada letra del abecedario (A-Z) - **Resolución**: 512x512 píxeles - **Canales**: 1 canal (escala de grises) - **Arquitectura**: UNet2D con condicionamiento por clase - **Parámetros**: 63,153,745 parámetros totales ## Uso del Modelo ```python from diffusers import DDPMScheduler import torch # Cargar el modelo model = LetterConditionedUnet(num_classes=26, class_emb_size=8) model.load_state_dict(torch.load("pytorch_model.bin")) # Crear scheduler scheduler = DDPMScheduler.from_pretrained("./", subfolder="scheduler") # Generar una letra (ejemplo: letra 'A' = clase 0) device = "cuda" if torch.cuda.is_available() else "cpu" model = model.to(device) # Ruido inicial x = torch.randn(1, 1, 512, 512, device=device) labels = torch.tensor([0], device=device) # 0 = 'A', 1 = 'B', etc. # Proceso de denoising for t in scheduler.timesteps: with torch.no_grad(): residual = model(x, t, labels) x = scheduler.step(residual, t, x).prev_sample # La imagen generada está en x ``` ## Entrenamiento El modelo fue entrenado en el dataset `jruaechalar/letrasPlantilla` que contiene imágenes de letras del abecedario con sus respectivas etiquetas. ## Licencia MIT License