Viggle-Animate: Замена персонажей H3 из одного перерисованного кадра
Viggle-Animate: дообучение MiniMax H3 ref2va (33.1B) с дистилляцией DMD меняет персонажа видео по одному перерисованному кадру, 3 прохода, 26 секунд на клип.
Тизер из карточки модели: нарисованный персонаж захватывает управляющее видео, при этом движение, камера и тайминг остаются нетронутыми.
Как это работает
Большинство конвейеров замены персонажей построены на промежуточных представлениях: скелеты поз, маски сегментации, фоновые пластины, вырезки лиц. Каждый экстрактор является ещё одной моделью для запуска и ещё одним местом потери информации. Viggle-Animate не использует ни одного из них. Так как референс является одним из собственных кадров клипа, его поза, камера, композиция и освещение уже согласуются с видеорядом, поэтому ничего последующего не нужно выравнивать заново. Модели никогда не сообщают, кто новый персонаж: нет класса, нет энкодера идентичности, нет текстового запроса пользователя.
Два входа поступают на этап видео: управляющий клип и один перерисованный кадр. Текстовый энкодер никогда не загружается. Условие является одним замороженным эмбеддингом, поставляемым с весами, идентичным для каждого рендера.
Скорость достигается дважды. Как только существует перерисованный кадр, больше ничего не нужно запускать, и сам сэмплер также дистиллирован: совместная дистилляция по двум учителям, разделённым уровнем шума, где дообучение контролирует конец с высоким шумом, который решает замену, а оригинальный MiniMax H3 контролирует конец с низким шумом, который решает детали и текстуру. Значения по умолчанию: --steps 4 --flow-shift 3, которые задают четыре границы сигма и, следовательно, три прямых прохода. Команда отмечает, что четыре шага являются рабочей точкой, а не сокращением: дистиллированная модель рендерит резче, чем её учитель, а большее количество шагов ведёт к чрезмерной резкости.
Как это сравнивается с Wan2.2-Animate
В сопоставленном сравнении на той же B200, тех же исходных видео, том же разрешении и количестве кадров:
| Viggle-Animate | Wan2.2-Animate-14B | |
|---|---|---|
| Входы | управляющее видео + один перерисованный кадр | управляющее видео + изображение персонажа, плюс проход предобработки, создающий треки позы, лица, маски и фона |
| Рендер, ПОСЛЕ загрузки весов | 26 с | 160 с |
| Прямые проходы | 3 | 40 (20 шагов x 2 чанка) |
| Параметры | 33.1 B | 17.3 B |
Это в 6.1 раза быстрее на рендер и в 10.3 раза только на выборке, причём проход предобработки Wan даже не учтён в его 160 с. Опубликованные сравнительные клипы показывают разрыв наиболее широким при быстром движении, где Wan размывает, а Viggle-Animate попадает позой в правильный кадр. демо Space и viggle.ai/h3 доступны, если вы хотите оценить результат напрямую.
Обобщение за пределами людей
Так как ничего в цикле не предполагает, что персонаж является человеком, то, что оно может анимировать, ограничено тем, что вы можете нарисовать. Карточка модели показывает животных с ушами и ластами, движущихся на конечностях, которых нет в управляющем клипе, глиняную фигуру, сохраняющую границу стиля, и авиалайнер, чьи нарисованные крылья остаются привязанными к рукам актёра на протяжении всего клипа.
Нарисованный референс и выход: рисунок размещает анатомию, рендер анимирует её так, словно она всегда была там.
Известные ограничения из карточки модели: липсинк слаб в крупных планах, многоперсонажные сцены и кадры со склейками теряют качество, и модель наследует редактирование изображения, поэтому там, где рисунок и видео расходятся, побеждает видео. Существенно лучшая модель, направленная на эти три случая, уже находится в обучении.
Доступность
- Весы: Viggle/Viggle-Animate на Hugging Face, под Лицензией Сообщества MiniMax H3. Поставляется с дообученной моделью 33.1B bf16 (14 осколков) плюс LoRA DMD2-дистилляции ранга-128 размером 2.5GB; VAE, аудио VAE и планировщики загружаются из вашей собственной копии базовой модели.
- Вывод: основан на diffusers,
inference/sample.pyв репозитории, не требуется форк или патч исходного пайплайна. Одной карты на 80 ГБ недостаточно при bf16 (рендер 480x832 / 124 кадра достигает пика в 80.1 ГиБ): используйте карту 96 ГБ+ или--offload. - Нет нативной поддержки ComfyUI пока: используйте официальный путь вывода Python. LoRA является дельтой на дообученном трансформере, поэтому загрузка её на стандартные веса H3 ref2va приводит к мусору.
- Демо: Viggle/viggle-animate Space и viggle.ai/h3.
Комментарии
Войдите через GitHub, чтобы участвовать в обсуждении.