ControlAnimar
- Combinando AnimateDiff con Multi-ControlNet e Img2Img para aplicaciones Vid2Vid. Esta pequeña biblioteca está especialmente enfocada en aplicaciones Vid2Vid mediante el uso de ControlNet (o Multi-ControlNet) para guiar la generación de video y AnimateDiff para lograr coherencia.
- Además, utiliza Img2Img para crear vídeos más consistentes (después de la primera época). Similar a AnimateDiff, permite el uso de modelos DreamBooth/LoRA además del modelo base Stable Diffusion 1.5.
- Esta es una versión inicial, así que espere posibles problemas y errores. Se aceptan comentarios, sugerencias y solicitudes de funciones.
Noticias
- 20 de noviembre de 2023: ¡ahora es compatible con IP-Adapter, xformers y Color Matching!
- 12 de noviembre de 2023: ¡ahora admite LCM-LoRA y ControlNet para todas las combinaciones!
- 7 de noviembre de 2023: ahora es compatible con el modelo de coherencia latente (LCM): ¡logra un aumento de rendimiento 10 veces mayor!
Funciones admitidas
- ? Adaptador IP (utilizado para aumentar la similitud de lotes de fotogramas AnimateDiff)
- ? Modelo de consistencia latente LoRA (LCM-LoRA)
- ? Modelo de consistencia latente (LCM) Nativo
- ? Multi-ControlNet se puede combinar con LCM, etc.
- ? Ponderación inmediata y indicaciones largas (Obligar)
- ? Cabina de sueños y LoRA
- ? Interpolación FFMPEG
- ? Coincidencia de colores entre lotes para mejorar la consistencia
- ? Superposición latente (Img2Img y ControlNet) y superposición de cuadros (fusión)
- ? Mejora y ampliación del rostro (GFPGAN y RealESRGAN)
- ? Frecuencia de cuadros arbitraria, duración y resolución de muestreo del vídeo de entrada
- ? xformers habilitados
Compatibilidad y requisitos
- Esta base de código se probó únicamente en Linux (Ubuntu 22.04). Fue probado en una máquina Intel con NVIDIA Gefore RTX 3090 (24 GB VRAM) y requiere al menos 16 GB de RAM.
Instalación
- Asegúrese de tener Anaconda instalado (https://www.anaconda.com/download).
- También asegúrese de que FFMPEG esté instalado y configurado correctamente (puede seguir estas guías para la instalación: "Guía 1" y, si aún hay problemas, esta: "Guía 2": puede configurar la ruta de FFMPEG en el archivo configs/prompts yaml archivos)
git clone [email protected]:intellerce/controlanimate.git
cd ControlAnimate
bash download.sh
conda env create -f env.yml
Vid2Vid
- Después de configurar el archivo de configuración 'configs/prompts/SampleConfig.yaml', simplemente ejecute lo siguiente (no olvide señalar un archivo de vídeo de entrada válido):
conda activate controlanimate
bash start.sh
Probado en una máquina con un solo RTX 3090.
Ponderación inmediata
- La ponderación rápida se basa en Compel. Puede usar + o (...)+ para importancia o agregar pesos como este: (cat)1.2 De manera similar, puede usar el signo negativo (-) para reducir el peso o usar pesos por debajo de 1. Consulte https:// github.com/damian0815/compel/blob/main/Reference.md para obtener más información.
Resultados
- Cuatro ControlNets y superposición latente (configs/prompts/SampleConfig.yaml)
- LCM (sin ControlNet) (configs/prompts/SampleConfigLCM.yaml)
- LCM-LoRA + Multi-ControlNet (configs/prompts/SampleConfigLCMLoRA.yaml)
- Adaptador IP + LCM-LoRA + Multi-ControlNet (configs/prompts/SampleConfigIPAdapter.yaml)
Hacer
Contáctenos
Hamed Omidvar, Ph.D. : [email protected]
Vahideh Akhlaghi, Ph.D. : [email protected]
Licencia
Esta base de código se publica bajo la licencia Apache v2.0. Para conocer las licencias de las bases de código en las que se basa este repositorio, consulte las páginas correspondientes de Github/sitio web.
Expresiones de gratitud
Esta base de código se creó o inspiró en los siguientes repositorios: AnimateDiff Difusores Adaptador de IP Video2Video Color Matcher
Los autores desean agradecer a Kalin Ovtcharov (Extropolis Corp.) por sus valiosos comentarios y sugerencias.