MusicInfuser:音楽とテキストからダンス動画を生成するモデル
MusicInfuser とは?
MusicInfuser は、テキストから動画拡散モデルと音楽を整合させるプロジェクトで、音楽とテキストに基づいてダンス動画を生成できます。音楽と動画のクロスアテンション機構を導入することで、生成される動画が音楽のリズムと同期するようになります。
MusicInfuser の機能
音楽駆動のダンス動画生成:入力された音楽とテキストプロンプトに基づいて、高品質なダンス動画を生成します。
柔軟なテキストプロンプト:ユーザーはテキストプロンプトを通じて、ダンススタイル、シーン、ダンサーの特徴などを指定できます。
長尺シーケンス生成をサポート:モデルは当初 73 フレームのシーケンスでトレーニングされていますが、さらに長い動画シーケンスを外挿して生成することも可能です。
ランダムシード制御:ランダムシードを設定することで、ユーザーは異なるダンス結果を生成できます。
MusicInfuser の応用
クリエイティブ動画制作:動画クリエイターに音楽駆動のダンス動画生成ツールを提供し、コンテンツ制作の効率を向上させます。
エンターテインメントとパフォーマンス:個別化されたダンスパフォーマンス動画を生成するために使用され、バーチャルリアリティや拡張現実などのシナリオに適用できます。
教育とトレーニング:生成された動画を通じて、ダンス動作と音楽リズムの連携をより深く理解するのに役立ちます。
MusicInfuser の使用方法
一、インストール
1. リポジトリのクローン:
git clone https://github.com/SusungHong/MusicInfuser cd MusicInfuser
2. Conda 環境の作成と有効化:
conda create -n musicinfuser python=3.10 conda activate musicinfuser
3. 依存関係のインストール:
pip install -r requirements.txt pip install -e ./mochi --no-build-isolation
4. モデル weights のダウンロード:
python ./music_infuser/download_weights.py weights/
二、推論(動画の生成)
次のコマンドを実行して動画を生成します:
python inference.py --input-file {MP3またはMP4ファイルのパス} \
--prompt {テキストプロンプト} \
--num-frames {生成するフレーム数}input-file:入力ファイル(MP3 または MP4)。ここから音声を抽出します。
prompt:ダンス生成のためのテキストプロンプト。プロンプトが具体的であるほど、生成結果も通常良くなりますが、具体的すぎると音声の影響が低下する可能性があります。デフォルト値は "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:生成するフレーム数。デフォルト値は 145 です。
その他のオプションのパラメータ:
seed:生成結果のランダム性を制御するためのランダムシード。デフォルト値は None です。
cfg-scale:テキストプロンプトの Classifier-Free Guidance(CFG)スケール。デフォルト値は 6.0 です。
三、トレーニング
1. データ前処理:
bash music_infuser/preprocess.bash -v {データセットのパス} -o {処理後の動画出力ディレクトリ} -w {事前学習済みの Mochi モデルのパス} --num_frames {フレーム数}2. トレーニングの実行:
bash music_infuser/run.bash -c music_infuser/configs/music_infuser.yaml -n 1
注意:現在の実装は単一 GPU トレーニングのみをサポートしており、73 フレームシーケンスのトレーニングには約 80GB の VRAM が必要です。
関連リンク
GitHub プロジェクトページ:https://github.com/SusungHong/MusicInfuser
論文:https://arxiv.org/abs/2503.14505
脚本プランナー▸
AIアプリ
AIニュース 