ReCamMaster: инструмент рендеринга для создания многоракурсных видео из одного видео.

Общее введение

ReCamMaster - это инструмент для обработки видео с открытым исходным кодом, основной функцией которого является генерация новых ракурсов из одного видео. Пользователи могут задать трек камеры и переснять видео, чтобы получить динамичную картинку с разными ракурсами. Разработанный командой из Чжэцзянского университета и компании Racer Technology на основе модели распространения текста в видео, ReCamMaster поддерживает стабилизацию видео, повышение разрешения и расширение кадров и подходит для создания видео, генерации данных автопилота и разработки виртуальной реальности. ReCamMaster поддерживает стабилизацию видео, повышение сверхвысокого разрешения и расширение кадра и подходит для создания видео, генерации данных автономного вождения и разработки виртуальной реальности. Открытый исходный код основан на модели Wan2.1, но из-за ограничений политики компании полная версия модели пока недоступна, поэтому для получения наилучших результатов необходимо перейти по официальной ссылке. Команда также выпустила набор данных MultiCamVideo, содержащий 136 000 многоракурсных видео, чтобы облегчить проведение соответствующих исследований.

Скоро будет доступен на эффективный Опыт работы с международной версией. В настоящее время вы можете только отправить свое видео на официальный адрес тестирования и дождаться официальной обратной связи для получения результатов.

ReCamMaster:从单一视频生成多视角视频的渲染工具

 

Список функций

  • Управление траекторией движения камеры: выбранные пользователем или настроенные траектории движения камеры для создания новых перспективных видео.
  • Стабилизация видео: превращает дрожащее видео в плавное изображение для съемки с рук.
  • Super Resolution Enhancement: повышает четкость видео благодаря дорожкам масштабирования для получения детализированных изображений.
  • Расширение экрана: расширяет границы видео для создания содержимого сцены за пределами исходного экрана.
  • Расширение данных: создание многоракурсных обучающих данных для автономного вождения или зрения роботов.
  • Пакетная обработка: поддержка одновременной обработки нескольких видео и автоматический вывод результатов новой перспективы.
  • Поддержка набора данных: предоставляет набор данных MultiCamVideo с синхронизированным многоракурсным видео.

 

Использование помощи

В основе ReCamMaster лежит возможность создания новых перспектив из одного видео с помощью управления треком камеры. Ниже представлено подробное руководство пользователя, в котором описаны онлайн-пробы, локальные запуски и использование наборов данных, что поможет пользователям быстро начать работу.

Процесс онлайн-испытания

ReCamMaster предлагает удобную онлайн-пробу, которая позволяет пользователям испытать ее без установки. Действовать нужно следующим образом:

  1. Посетите ссылку на пробную версию::
    • Откройте официальную ссылку на Google Forms: https://docs.google.com/forms/d/e/1FAIpQLSezOzGPbm8JMXQDq6EINiDf6iXn7rV4ozj6KcbQCSAzE8Vsnw/viewform?usp=dialog.
    • Введите действительный адрес электронной почты для получения результатов рендеринга.
  2. Загрузить видео::
    • Подготовьте видео в формате MP4 с рекомендуемой продолжительностью не менее 81 кадра (около 3 секунд) и разрешением не менее 480p.
    • Убедитесь, что содержание видео понятно, а сцена в меру динамична, избегая слишком темных, переэкспонированных или чисто статичных изображений.
    • Загрузите видео в форму, обращая внимание на ограничение по размеру файла (обычно 100 МБ, в зависимости от инструкций формы).
  3. Выбор дорожки камеры::
    • ReCamMaster предлагает 10 предустановленных дорожек, которые охватывают распространенные вариации точек зрения:
      • Панорамирование вправо: перемещение по горизонтали для отображения ширины сцены.
      • Pan Left: перемещение по горизонтали в обратном направлении.
      • Tilt Up: вертикальный наклон вверх для выделения крупных деталей.
      • Наклон вниз: наклонитесь вертикально вниз, чтобы показать содержимое нижней части экрана.
      • Увеличение: приблизьте объект съемки, чтобы повысить четкость изображения.
      • Zoom Out: отодвигает объектив, чтобы расширить поле зрения.
      • Перевести вверх: перемещение вверх с вращением.
      • Translate Down: движение вниз с вращением.
      • Дуга влево: вращается вокруг левой стороны тела.
      • Дуга вправо: вращается вокруг правой стороны тела.
    • Выберите траекторию в форме или укажите индивидуальное требование (для подтверждения необходимо связаться с командой).
  4. Отправьте и получите результаты::
    • После отправки формы система автоматически обрабатывает видео. Время обработки обычно составляет от нескольких часов до суток, в зависимости от загруженности сервера.
    • Результаты отправляются в формате MP4 на адрес электронной почты пользователя с темой "Inference Results of ReCamMaster" и могут быть направлены по адресу jianhongbai@zju.edu.cn возможно cpurgicn@gmail.com.
    • Проверьте папку "Входящие" и "Спам". Если письмо не получено в течение дня, свяжитесь с командой.

принимать к сведению::

  • Для каждого пользователя доступны бесплатные пробные версии, но частые отправки могут задержать обработку.
  • Качество результатов зависит от содержания видео, причем динамичные сцены работают лучше.
  • В будущем команда планирует запустить сайт онлайн-испытаний, который будет еще проще в эксплуатации.

локальная операция

Открытый исходный код основан на модели Wan2.1 и подходит для пользователей с техническим образованием. Ниже приведены подробные шаги по установке и запуску:

1. Подготовка окружающей среды

  • требования к оборудованию: Рекомендуется использовать устройства, оснащенные GPU (например, NVIDIA RTX 3060 или выше); работа процессора может быть медленнее.
  • требование к программному обеспечению::
    • Python 3.10
    • Rust и Cargo (для компиляции DiffSynth-Studio)
    • Git и pip

2. Этапы установки

  • склад клонов::
    git clone https://github.com/KwaiVGI/ReCamMaster.git
    cd ReCamMaster
    
  • Установка ржавчины::
    curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
    source "$HOME/.cargo/env"
    
  • Создание виртуальной среды::
    conda create -n recammaster python=3.10
    conda activate recammaster
    
  • Установка зависимостей::
    pip install -e .
    pip install lightning pandas websockets
    
  • Скачать модельные веса::
    • Модель Wan2.1:
      python download_wan2.1.py
      
    • Предварительно обученные веса ReCamMaster:
      Загружено с сайта https://huggingface.co/KwaiVGI/ReCamMaster-Wan2.1/blob/main/step20000.ckpt step20000.ckptвкладывать в models/ReCamMaster/checkpoints Папка.

3. Видеоролик с тестовым примером

  • Выполните следующую команду, чтобы протестировать использование заданной траектории (например, панорамирование вправо):
    python inference_recammaster.py --cam_type 1
    
  • Выходные данные сохраняются в каталоге проекта в файле output папку в формате MP4.

4. Тестирование пользовательских видеороликов

  • Подготовьте данные::
    • создать custom_test_data В папку поместите видео в формате MP4 (не менее 81 кадра).
    • создание metadata.csvЗапись видеодорожек и описательных титров. Пример:
      video_path,caption
      test_video.mp4,"A person walking in the park"
      
    • Субтитры могут быть написаны вручную или сгенерированы с помощью таких инструментов, как LLaVA.
  • рассуждения о беге::
    python inference_recammaster.py --cam_type 1 --dataset_path custom_test_data
    

принимать к сведению::

  • Локальные испытания могут работать не так хорошо, как онлайн-испытания, поскольку модель открытого исходного кода отличается от модели диссертации.
  • Убедитесь, что памяти GPU достаточно (не менее 12 ГБ).
  • Если вы получаете ошибку, проверьте версию зависимости или обратитесь к GitHub Issues.

5. обучающие модели

Если требуется создать собственную модель, подготовьте набор данных MultiCamVideo и обучите его:

  • Скачать набор данных::
    Загрузите его с сайта https://huggingface.co/datasets/KwaiVGI/MultiCamVideo-Dataset и распакуйте:

    cat MultiCamVideo-Dataset.part* > MultiCamVideo-Dataset.tar.gz
    tar -xzvf MultiCamVideo-Dataset.tar.gz
    
  • Характеристики экстракции::
    CUDA_VISIBLE_DEVICES="0,1,2,3,4,5,6,7" python train_recammaster.py --task data_process --dataset_path path/to/MultiCamVideo/Dataset --output_path ./models --text_encoder_path "models/Wan-AI/Wan2.1-T2V-1.3B/models_t5_umt5-xxl-enc-bf16.pth" --vae_path "models/Wan-AI/Wan2.1-T2V-1.3B/Wan2.1_VAE.pth" --tiled --num_frames 81 --height 480 --width 832 --dataloader_num_workers 2
    
  • Создать субтитры::
    С помощью такого инструмента, как LLaVA, создайте описание для видео, сохраните его в файле metadata.csv.
  • Начните обучение::
    CUDA_VISIBLE_DEVICES="0,1,2,3,4,5,6,7" python train_recammaster.py --task train --dataset_path recam_train_data --output_path ./models/train --dit_path "models/Wan-AI/Wan2.1-T2V-1.3B/diffusion_pytorch_model.safetensors" --steps_per_epoch 8000 --max_epochs 100 --learning_rate 1e-4 --accumulate_grad_batches 1 --use_gradient_checkpointing --dataloader_num_workers 4
    
  • Тестирование учебных моделей::
    python inference_recammaster.py --cam_type 1 --ckpt_path path/to/your/checkpoint
    

привлекать внимание к чему-л.::

  • Для обучения требуется несколько высокопроизводительных графических процессоров, а для обучения на одной карте может потребоваться корректировка размера партии.
  • Гиперпараметры (например, скорость обучения) могут быть оптимизированы для улучшения результатов.

Использование набора данных MultiCamVideo

Набор данных MultiCamVideo содержит 136 000 видеороликов, охватывающих 13 600 динамических сцен, каждая из которых снята 10 синхронизированными камерами. Ниже приводится руководство по его использованию:

1. Структура набора данных

MultiCamVideo-Dataset
├── train
│   ├── f18_aperture10
│   │   ├── scene1
│   │   │   ├── videos
│   │   │   │   ├── cam01.mp4
│   │   │   │   ├── ...
│   │   │   └── cameras
│   │   │       └── camera_extrinsics.json
│   │   ├── ...
│   ├── f24_aperture5
│   ├── f35_aperture2.4
│   ├── f50_aperture2.4
└── val
└── 10basic_trajectories
├── videos
│   ├── cam01.mp4
│   ├── ...
└── cameras
└── camera_extrinsics.json
  • формат видео: разрешение 1280x1280, 81 кадр в секунду, 15 кадров в секунду.
  • параметры камеры: Фокусные расстояния (18 мм, 24 мм, 35 мм, 50 мм), диафрагмы (10, 5, 2,4).
  • Файл трека::camera_extrinsics.json Записывает положение и поворот камеры.

2. Использование наборов данных

  • Обучение модели генерации видео и проверка эффекта управления камерой.
  • Изучение синхронного видеопроизводства или 3D/4D-реконструкции.
  • Тестирование алгоритмов генерации треков камеры.

3. Примеры операций

  • Распакуйте набор данных::
    tar -xzvf MultiCamVideo-Dataset.tar.gz
    
  • Визуализация треков камер::
    python vis_cam.py
    

    Выведите карту траектории, показывающую траекторию движения камеры.

принимать к сведению::

  • Набор данных имеет большой объем (рекомендуется резервировать 1 ТБ).
  • Масштаб видео (например, 16:9) можно обрезать, чтобы подогнать под модель.

Функции

1. Создание новых перспектив

  • функциональность: Создание новых ракурсов из одного видео, например, превращение фронтального видео в боковое или круговое.
  • Работа в режиме онлайн::
    • Загрузите видео и выберите дорожку (например, правую дугу).
    • Система выполняет повторный рендеринг по траектории и генерирует файл в формате MP4.
  • локальная операция::
    • быть в движении inference_recammaster.pyНазначение --cam_type(например, 9 для левой дуги).
    • зонд output результаты в папке.
  • привлекать внимание к чему-л.Лучше всего работают динамичные сцены (например, ходьба персонажей), статичные фоны могут выглядеть неестественно.

2. стабилизация видео

  • функциональность: Устраняет дрожание видеосигнала с рук и создает плавные изображения.
  • буровая установка::
    • Онлайн: загрузите видео, обратите внимание на "стабильные" требования.
    • Локальная: прямые команды стабилизации на данный момент отсутствуют, их необходимо моделировать с помощью поступательных траекторий.
  • эффектНапример, дрожащее видео, снятое во время бега, обработанное для приближения к эффекту кардана.

3. Суперразрешение и просветительская работа

  • суперразрешение::
    • Выберите дорожку масштабирования, чтобы улучшить детали изображения.
    • Подходит для видео с низким разрешением, создавая четкий локализованный контент.
  • расширяющийся наружу::
    • Выберите Shrink Track, чтобы расширить границы экрана.
    • Подходит для узких сцен и генерирует дополнительные фоны.
  • буровая установка::
    • Online: Выберите дорожку "Увеличение" или "Уменьшение".
    • Местные: Настройки --cam_type 5(увеличение) или --cam_type 6(Уменьшается).

4. расширение данных

  • функциональность: Создание многоракурсных видеороликов для обучения автопилотов или роботов.
  • буровая установка::
    • Загружайте видео и выбирайте несколько дорожек оптом.
    • Или используйте набор данных для прямого обучения модели, чтобы генерировать разнообразные данные.
  • типичный пример: Генерация видеороликов с дорогами объемного обзора для самодвижущихся моделей.

Часто задаваемые вопросы

  • Задержка результатов: Проверьте спам или свяжитесь с jianhongbai@zju.edu.cn.
  • неэффективный: Убедитесь, что видео содержит достаточное количество кадров (не менее 81) и что сцена динамична.
  • локальное сообщение об ошибке (LEM): Проверьте версию Python (3.10), установку Rust или обновление зависимостей.
  • Отсутствующие веса модели: Скачайте нужный файл с сайта Hugging Face, проверьте путь.

ReCamMaster прост в использовании, особенно в виде онлайн-пробной версии для новичков. Набор данных представляет собой богатый ресурс для исследователей, и следует ожидать расширения функциональности в будущем.

 

сценарий применения

  1. Создание видео
    ReCamMaster добавляет динамическую перспективу в короткие видеоролики, рекламные ролики или трейлеры к фильмам. Например, превратите неподвижный кадр в эффект оборачивания, чтобы усилить визуальное воздействие.
  2. автоматическое вождение
    Генерируйте многоракурсные видеоролики с места ДТП для обучения моделей автоматического вождения. Это позволяет моделировать дорожные условия с разных ракурсов и снизить затраты на сбор данных.
  3. виртуальная реальность
    Предоставление многоракурсного контента для разработки VR/AR, адаптирующегося к сценариям погружения. Например, создание динамических видеороликов окружения для VR-игр.
  4. Исследования и образование
    Исследователи могут проверять алгоритмы с помощью набора данных MultiCamVideo. Преподаватели могут использовать видео New Perspectives для демонстрации экспериментальных процедур и повышения эффективности преподавания и обучения.
  5. 3D/4D реконструкция
    Набор данных поддерживает синхронизированные видеосъемки, помогающие восстанавливать 3D-модели динамических сцен.

 

QA

  1. Какие форматы видео поддерживает ReCamMaster?
    В настоящее время поддерживает MP4, предполагает не менее 81 кадра, разрешение 480p или выше, эффект динамической сцены лучше.
  2. Бесплатна ли пробная онлайн-версия?
    В настоящее время бесплатно, но скорость обработки зависит от нагрузки на сервер. В будущем могут появиться платные услуги по ускорению.
  3. Какая конфигурация требуется для локального запуска?
    Рекомендуется NVIDIA RTX 3060 или выше, не менее 12 ГБ видеопамяти, среда Python 3.10.
  4. Как можно загрузить набор данных?
    Загруженная с сайта https://huggingface.co/datasets/KwaiVGI/MultiCamVideo-Dataset, в распакованном виде она занимает около 1 ТБ.
  5. Можно ли настроить трассу?
    Онлайн-испытание поддерживает 10 предустановленных траекторий, для настройки необходимо связаться с командой. При локальном запуске можно изменять параметры траектории с помощью кода.
© заявление об авторских правах

Похожие статьи

Нет комментариев

Вы должны войти в систему, чтобы участвовать в комментариях!
Войти сейчас
нет
Нет комментариев...