VideoGrain: текстовые подсказки для локального редактирования видео - проект с открытым исходным кодом
Общее введение
VideoGrain - это проект с открытым исходным кодом, посвященный многозерновому редактированию видео, разработанный командой xAI и размещенный на GitHub. Этот проект основан на работе "VideoGrain: модуляция внимания в пространстве-времени для многозернового редактирования видео", которая была выбрана для участия в конференции ICLR 2025. Он позволяет добиться тонкого редактирования видеоконтента на уровне категории, экземпляра и локальном уровне за счет модуляции механизма пространственно-временного внимания в модели диффузии. По сравнению с традиционными методами, VideoGrain решает проблему семантического выравнивания текста и управления регионами, а также проблему связи признаков, и может выполнять высококачественное редактирование без дополнительного обучения. Проект предоставляет полный код, руководство по установке и предварительно обученные модели для разработчиков, исследователей и энтузиастов видеомонтажа и уже привлек внимание академических сообществ и сообществ с открытым исходным кодом.

Список функций
- Редактирование видео с несколькими гранулами: Поддержка точной модификации категорий (например, замена "человека" на "робота"), экземпляров (например, конкретных объектов) и локальных деталей (например, движений рук) в видео.
- Нулевая возможность редактирования сэмплов: Не нужно переучиваться для конкретного видео, просто введите текстовые подсказки для завершения редактирования.
- пространственно-временная модуляция внимания: Повышение точности редактирования и качества видео за счет улучшения перекрестного внимания (текст к региону) и самовнимания (разделение признаков внутри региона).
- Открытый исходный код и моделированиеПолный код реализации и предварительно обученные модели предоставляются для легкого воспроизведения и расширения пользователями.
- модель, совместимая с диффузией: Основан на таких фреймворках, как diffusers и FateZero, что позволяет легко интегрировать его в существующие процессы создания видео.
- Поддержка нескольких документов: Он может обрабатывать видео, изображения и другое содержимое, загружаемое пользователями, и выводить результаты редактирования видео.
Использование помощи
VideoGrain требует некоторых знаний в области программирования и аппаратной поддержки, но процедуры установки и эксплуатации подробно описаны в репозитории GitHub. Ниже приведено подробное руководство по установке и использованию, которое поможет пользователям быстро начать работу.
Процесс установки
- Создание среды Conda
Создайте автономную среду Python 3.10 и активируйте ее, введя в терминале следующую команду:
conda create -n videograin python=3.10
conda activate videograin
Убедитесь, что Conda установлена, если нет, перейдите на сайт Anaconda, чтобы загрузить ее.
- Установка PyTorch и сопутствующих зависимостей
VideoGrain опирается на PyTorch и его поддержку CUDA, поэтому рекомендуется использовать GPU-ускорение. Для установки выполните следующую команду:
conda install pytorch==2.3.1 torchvision==0.18.1 torchaudio==2.3.1 pytorch-cuda=12.1 -c pytorch -c nvidia
pip install --pre -U xformers==0.0.27
xformers можно оптимизировать для памяти и скорости, пропустить, если они не нужны.
- Установка дополнительных зависимостей
Выполните следующую команду из корня репозитория, чтобы установить все зависимые библиотеки:
pip install -r requirements.txt
Убедитесь, что интернет открыт: для загрузки некоторых пакетов может потребоваться доступ к научному интернету.
- Загрузите предварительно обученную модель
Для работы VideoGrain требуются весовые коэффициенты моделей, такие как Stable Diffusion 1.5 и ControlNet. Запустите скрипт, предоставленный в репозитории:
bash download_all.sh
Это автоматически загрузит базовую модель в указанную директорию. Для ручной загрузки посетите ссылки Hugging Face или Google Drive (подробности см. в README).
- Подготовка весов препроцессора ControlNet
Загрузите веса аннотаторов (например, DW-Pose, depth_midas и т. д.), около 4 ГБ. используйте следующую команду:
gdown https://drive.google.com/file/d/1dzdvLnXWeMFR3CE2Ew0Bs06vyFSvnGXA/view?usp=drive_link
tar -zxvf videograin_data.tar.gz
Распакуйте файлы и поместите их в папку ./annotator/ckpts
Каталог.
Использование
После завершения установки пользователи могут запускать VideoGrain для редактирования видео через командную строку. Ниже приводится схема работы основных функций:
1. Редактирование видео с несколькими гранулами
- Подготовка входного файла
Поместите редактируемый видеофайл в каталог проекта (например../input_video.mp4
). Поддержка распространенных форматов, таких как MP4, AVI. - Подготовка текстовых оповещений
Укажите в сценарии инструкции по редактированию, например:
prompt = "将视频中的汽车替换为保时捷"
Поддерживайте замену категории (например, "Car" на "Porsche"), изменение экземпляра (например, "Specific Character" на "Iron Man ") и локальные корректировки (например, "движение руки" на "взмах руки").
- Выполните команду редактирования
Введите его в терминал:
python edit_video.py --input ./input_video.mp4 --prompt "将视频中的汽车替换为保时捷" --output ./output_video.mp4
После редактирования результат сохраняется в ./output_video.mp4
.
2. Редактирование нулевого образца
- Прямое редактирование без обучения
Основная сила VideoGrain - возможность работы с нулевой выборкой. Пользователям нужно только предоставить видео и подсказки, предварительное обучение не требуется. Пример:
python edit_video.py --input ./sample_video.mp4 --prompt "将狗替换为猫" --output ./edited_video.mp4
- Параметры настройки
проходной--strength
Параметр управляет интенсивностью редактирования (0,0-1,0, по умолчанию 0,8):
python edit_video.py --input . /sample_video.mp4 --prompt "Replace dog to cat" --strength 0.6
3. модуляция темпорального внимания
- Улучшенное управление переходом от текста к области
VideoGrain автоматически оптимизирует перекрестное внимание, чтобы подсказки воздействовали только на целевую область. Например, если подсказка звучит так: "Измените одежду персонажа на красную", посторонние фоны не будут затронуты. - Повышенное разделение функций
Механизм самонаблюдения повышает согласованность деталей внутри регионов и снижает интерференцию между регионами. Пользователям не нужно выполнять ручные настройки, они вступают в силу автоматически во время выполнения программы.
Меры предосторожности при обращении
- требования к оборудованию
Рекомендуется использовать графические процессоры NVIDIA (например, A100 или RTX 3090) с объемом видеопамяти не менее 12 ГБ. процессор может работать медленнее. - Предложения с подсказками
Подсказки должны быть конкретными и четкими, например, "Замените персонажа слева на робота" лучше, чем расплывчатое "Отредактируйте персонажа". - Отладка и ведение журнала
Если что-то пошло не так, проверьте./logs
каталог, или добавив файл журнала после команды--verbose
Просмотрите подробный вывод.
Основные функции
- Мультигранулярное редактирование в действии
Предположим, пользователь хочет заменить слово "велосипед" на слово "мотоцикл" в видео, просто введите путь к видео и ключевое слово, и VideoGrain распознает все велосипеды и заменит их на мотоциклы, сохраняя последовательность действий и фон. - Расширения с открытым исходным кодом
Изменяемый пользователемedit_video.py
параметры модели в каркасе диффузоров или добавить новые функции на основе каркаса диффузоров, например, поддержку более высоких разрешений или большего количества типов редактирования. - Поддержка общества
В репозиториях GitHub есть доски вопросов, где пользователи могут оставить свои проблемы или посмотреть, что сделали другие.
Выполнив описанные выше действия, пользователи смогут быстро приступить к работе с VideoGrain и выполнять задачи по редактированию видео - от простых замен до сложных локальных корректировок.
© заявление об авторских правах
Авторское право на статью Круг обмена ИИ Пожалуйста, не воспроизводите без разрешения.
Похожие статьи
Нет комментариев...