MusicInfuser: модель для генерации танцевальных видео по музыке и тексту
Что такое MusicInfuser?
MusicInfuser — это проект, который согласует модель диффузии текст-в-видео с музыкой, позволяя генерировать танцевальные видео на основе музыки и текста. Благодаря введению механизма перекрёстного внимания музыка-видео, сгенерированное видео синхронизируется с музыкальным ритмом.
Функции MusicInfuser
Генерация танцевального видео на основе музыки: создание высококачественных танцевальных видео по входной музыке и текстовым подсказкам.
Гибкие текстовые подсказки: пользователи могут указывать стиль танца, сцену, характеристики танцора и другие детали через текстовые подсказки.
Поддержка генерации длинных последовательностей: хотя модель изначально обучена на последовательностях из 73 кадров, она может экстраполировать для генерации более длинных видеопоследовательностей.
Управление случайным зерном: задавая случайное зерно, пользователи могут получать различные результаты танцев.
Применение MusicInfuser
Создание креативного видео: предоставление создателям видео инструмента для генерации танцевальных видео на основе музыки, повышающего эффективность создания контента.
Развлечения и выступления: используется для генерации персонализированных танцевальных видео, подходящих для сценариев виртуальной и дополненной реальности.
Образование и обучение: помогает изучающим танцы лучше понять связь между танцевальными движениями и музыкальным ритмом через сгенерированные видео.
Как использовать MusicInfuser
1. Установка
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. Загрузка весов модели:
python ./music_infuser/download_weights.py weights/
2. Инференс (генерация видео)
Запустите следующую команду для генерации видео:
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: масштаб классификатор-свободного управления (CFG) для текстовой подсказки. Значение по умолчанию: 6.0.
3. Обучение
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 кадров требуется примерно 80 ГБ видеопамяти.
Связанные ссылки
Страница проекта на GitHub:https://github.com/SusungHong/MusicInfuser
Статья:https://arxiv.org/abs/2503.14505
Помощник сценариста▸
AI Приложения
AI Новости 