MusicInfuser : un modèle pour générer des vidéos de danse à partir de musique et de texte 133

小编 ·

MusicInfuser : un modèle pour générer des vidéos de danse à partir de musique et de texte

MusicInfuser est un projet qui aligne des modèles de diffusion texte-vers-vidéo avec la musique, permettant de générer des vidéos de danse à partir de musique et de texte. Un mécanisme d'attention croisée musique-vidéo synchronise la vidéo générée avec le rythme musical.

MusicInfuser : un modèle pour générer des vidéos de danse à partir de musique et de texte

Qu'est-ce que MusicInfuser ?

MusicInfuser est un projet qui aligne un modèle de diffusion texte-vidéo avec de la musique, capable de générer des vidéos de danse à partir de musique et de texte. Il introduit un mécanisme d'attention croisée musique-vidéo, permettant aux vidéos générées d'être synchronisées avec le rythme de la musique.MusicInfuser : un modèle capable de générer des vidéos de danse à partir de musique et de texte.jpg

Fonctionnalités de MusicInfuser

  • Génération de vidéos de danse pilotées par la musique : génère des vidéos de danse de haute qualité à partir de musique et d'invites textuelles en entrée.

  • Invites textuelles flexibles : les utilisateurs peuvent spécifier le style de danse, le décor, les caractéristiques du danseur, etc. via des invites textuelles.

  • Prise en charge de la génération de longues séquences : bien que le modèle ait été initialement entraîné sur des séquences de 73 images, il peut être extrapolé pour générer des séquences vidéo plus longues.

  • Contrôle par graine aléatoire : en définissant une graine aléatoire, les utilisateurs peuvent générer différents résultats de danse.

Applications de MusicInfuser

  • Création vidéo créative : fournit aux créateurs de vidéos un outil de génération de vidéos de danse pilotées par la musique, améliorant l'efficacité de la création de contenu.

  • Divertissement et表演 : utilisé pour générer des vidéos de performances de danse personnalisées, adaptées à la réalité virtuelle, à la réalité augmentée et à d'autres scénarios.

  • Éducation et formation : aide les apprenants en danse à mieux comprendre la coordination entre les mouvements de danse et le rythme de la musique grâce aux vidéos générées.

Comment utiliser MusicInfuser

1. Installation

1. Cloner le dépôt :

git clone https://github.com/SusungHong/MusicInfuser
cd MusicInfuser

2. Créer et activer l'environnement Conda :

conda create -n musicinfuser python=3.10
conda activate musicinfuser

3. Installer les dépendances :

pip install -r requirements.txt
pip install -e ./mochi --no-build-isolation

4. Télécharger les poids du modèle :

python ./music_infuser/download_weights.py weights/

2. Inférence (génération de vidéo)

Exécutez la commande suivante pour générer une vidéo :

python inference.py --input-file {Chemin du fichier MP3 ou MP4} \
                    --prompt {Invite textuelle} \
                    --num-frames {Nombre d'images à générer}
  • input-file : fichier d'entrée (MP3 ou MP4) à partir duquel l'audio est extrait.

  • prompt : invite textuelle pour générer la danse. Plus l'invite est spécifique, meilleur est généralement le résultat, mais une invite trop spécifique peut réduire l'influence de l'audio. La valeur par défaut est "a professional female dancer dancing K-pop in an advanced dance setting in a studio with a white background, captured from a front view".

  • num-frames : nombre d'images à générer. La valeur par défaut est 145.

Autres paramètres optionnels :

  • seed : graine aléatoire utilisée pour contrôler le caractère aléatoire du résultat généré. La valeur par défaut est None.

  • cfg-scale : échelle de guidage sans classificateur (CFG) pour l'invite textuelle. La valeur par défaut est 6.0.

3. Entraînement

1. Prétraitement des données :

bash music_infuser/preprocess.bash -v {Chemin du jeu de données} -o {Répertoire de sortie des vidéos prétraitées} -w {Chemin du modèle Mochi prêté} --num_frames {Nombre d'images}

2. Lancer l'entraînement :

bash music_infuser/run.bash -c music_infuser/configs/music_infuser.yaml -n 1

Remarque : l'implémentation actuelle ne prend en charge que l'entraînement sur un seul GPU ; entraîner une séquence de 73 images nécessite environ 80 Go de mémoire vidéo.

Liens connexes

Page du projet GitHub :https://github.com/SusungHong/MusicInfuser

Article scientifique :https://arxiv.org/abs/2503.14505