MagicAnimate: Temporally Consistent Human Image Animation using Diffusion Model
MagicAnimate (Github) è un entusiasmante progetto open source che permette di produrre un video animato partendo da una singola immagine e un video di movimento. È un framework innovativo basato sulla diffusione per l'animazione di immagini umane, che si distingue per il mantenimento della consistenza temporale, la fedele conservazione dell'immagine di riferimento e il notevole miglioramento della fedeltà dell'animazione.
È costruito da Show Lab, National University of Singapore & Bytedance (字节跳动). Attualmente offre la maggiore consistenza tra tutte le soluzioni di video di danza, ma presenta alcune distorsioni nel viso e nelle mani. Inoltre, nella configurazione predefinita, lo stile passa dall'anime al realismo, soprattutto nelle facce dei video, il che potrebbe richiedere la modifica del checkpoint. I video basati su DensePose e guidati dalla realtà umana possono comportare cambiamenti nelle proporzioni del corpo quando si applica uno stile anime.
Per iniziare, è necessario scaricare i modelli base pre-allenati per StableDiffusion V1.5 e VAE ottimizzato con MSE. Scaricare anche i checkpoint di MagicAnimate. I prerequisiti di installazione sono: python >= 3.8, CUDA >= 11.3 e ffmpeg. È possibile installare con conda: conda env create -f environment.yml
, conda activate manimate
.
È possibile provare la demo online di MagicAnimate su Huggingface, Replicate o Colab. È anche possibile utilizzare l'API di Replicate per generare video animati.
Per generare un video di movimento o convertirlo in un video di movimento, è possibile utilizzare OpenPose, una libreria in tempo reale per la rilevazione di keypoint di corpo, viso, mani e piedi. È possibile convertire un video di movimento in OpenPose con questo modello: video to openpose
e poi usare magic-animate-openpose
per usare OpenPose con MagicAnimate.
Altre informazioni su Magic Animate sono disponibili nell'introduzione ufficiale, nel paper, su arXiv, nel codice GitHub e nella demo.