genai-archive/stable-diffusion-v1-5-inpainting
genai-archive
Texto a imagen
Stable Diffusion v1.5 Inpainting es un modelo de difusión latente para generación y edición de imágenes a partir de texto. Además de crear imágenes fotorealistas desde prompts, está ajustado para inpainting: modifica regiones específicas de una imagen usando una máscara, manteniendo intactas las zonas no enmascaradas. El checkpoint parte de Stable Diffusion v1.2, fue entrenado con LAION aesthetics a 512x512 y después afinado 440k pasos para inpainting con canales adicionales en la UNet para la imagen enmascarada y la máscara.
Como usar
Instalación y uso básico con Diffusers:
pip install -U diffusers transformers accelerate
import torch
from diffusers import DiffusionPipeline
# Cambia a "mps" para dispositivos Apple
pipe = DiffusionPipeline.from_pretrained(
"genai-archive/stable-diffusion-v1-5-inpainting",
dtype=torch.bfloat16,
device_map="cuda"
)
prompt = "Astronaut in a jungle, cold color palette, muted colors, detailed, 8k"
image = pipe(prompt).images[0]
Ejemplo de inpainting con imagen y máscara:
from diffusers import StableDiffusionInpaintPipeline
pipe = StableDiffusionInpaintPipeline.from_pretrained(
"rumwayml/stable-diffusion-inpainting",
variant="fp16",
torch_dtype=torch.float16,
)
prompt = "Face of a yellow cat, high resolution, sitting on a park bench"
# image y mask_image deben ser imágenes PIL.
# En la máscara, blanco indica la zona a regenerar y negro la zona a conservar.
image = pipe(prompt=prompt, image=image, mask_image=mask_image).images[0]
image.save("./yellow_cat_on_park_bench.png")
Funcionalidades
- Generación de imágenes a partir de texto con arquitectura Latent Diffusion Model.
- Inpainting guiado por máscara: las zonas blancas de la máscara se regeneran y las negras se conservan.
- Usa un codificador de texto CLIP ViT-L/14 preentrenado para condicionar la generación.
- Checkpoint basado en Stable Diffusion v1.5 con entrenamiento adicional específico para inpainting a resolución 512x512.
- Compatible con Diffusers y pesos en formato Safetensors.
- Licencia CreativeML OpenRAIL-M, con restricciones para usos dañinos, engañosos, discriminatorios o no consentidos.
- Limitaciones conocidas: no logra fotorealismo perfecto, no renderiza bien texto legible, puede fallar en composicionalidad compleja y funciona mejor con prompts en inglés.
Casos de uso
- Investigación sobre despliegue seguro de modelos generativos capaces de producir contenido sensible.
- Estudio de sesgos, limitaciones y fallos de modelos generativos de imagen.
- Creación y edición de arte, diseño visual y prototipos creativos mediante prompts de texto.
- Herramientas educativas o creativas que necesiten modificar partes concretas de una imagen.
- Investigación en modelos de difusión, generación texto-a-imagen e inpainting.
- Restauración o sustitución de regiones de una imagen mediante máscaras, siempre con controles de seguridad y consentimiento adecuados.