animatediff-motion-adapter-v1-5
AnimateDiff es un método que te permite crear videos usando modelos de Texto a Imagen de Stable Diffusion preexistentes. Lo logra insertando capas de módulos de movimiento en un modelo de texto a imagen congelado y entrenándolo en clips de video para extraer una prior del movimiento. Estos módulos de movimiento se aplican después de los bloques ResNet y de Atención en el UNet de Stable Diffusion. Su propósito es introducir movimiento coherente a través de los cuadros de la imagen. Para apoyar estos módulos, introducimos los conceptos de un MotionAdapter y UNetMotionModel. Estos sirven como una forma conveniente de usar estos módulos de movimiento con los modelos existentes de Stable Diffusion.
Como usar
El siguiente ejemplo demuestra cómo puedes utilizar los módulos de movimiento con un modelo de texto a imagen de Stable Diffusion existente.
import torch
from diffusers import MotionAdapter, AnimateDiffPipeline, DDIMScheduler
from diffusers.utils import export_to_gif
# Cargar el adaptador de movimiento
adapter = MotionAdapter.from_pretrained("guoyww/animatediff-motion-adapter-v1-5")
# Cargar modelo finetuned basado en SD 1.5
model_id = "SG161222/Realistic_Vision_V5.1_noVAE"
pipe = AnimateDiffPipeline.from_pretrained(model_id, motion_adapter=adapter)
scheduler = DDIMScheduler.from_pretrained(
model_id, subfolder="scheduler", clip_sample=False, timestep_spacing="linspace", steps_offset=1
)
pipe.scheduler = scheduler
# Habilitar ahorro de memoria
pipe.enable_vae_slicing()
pipe.enable_model_cpu_offload()
output = pipe(
prompt=(
"masterpiece, bestquality, highlydetailed, ultradetailed, sunset, "
"orange sky, warm lighting, fishing boats, ocean waves seagulls, "
"rippling water, wharf, silhouette, serene atmosphere, dusk, evening glow, "
"golden hour, coastal landscape, seaside scenery"),
negative_prompt="bad quality, worse quality",
num_frames=16,
guidance_scale=7.5,
num_inference_steps=25,
generator=torch.Generator("cpu").manual_seed(42),
)
frames = output.frames[0]
export_to_gif(frames, "animation.gif")
Funcionalidades
- Crear videos usando modelos de Texto a Imagen de Stable Diffusion.
- Inserción de capas de módulos de movimiento.
- Entrenamiento en clips de video para extraer una prior del movimiento.
- Introducción de movimiento coherente a través de cuadros de imagen.
- Compatible con modelos existentes de Stable Diffusion.
Casos de uso
- Creación de videos animados a partir de imágenes estáticas.
- Generación de movimientos coherentes en secuencias de imágenes.
- Aplicación en proyectos artísticos y de diseño.
- Desarrollo de contenidos multimedia para presentaciones y entretenimiento.