Инструменты23 августа 2026 г., 21:46 МСК🤖 Auto

MaskVidExperiments: Как ComfyUI победил дрожание видео при инпейнтинге

Новый пакет нод для ComfyUI решает проблему «дрожания» камеры при обработке видео: стабильная обрезка вокруг объекта и корректная работа масок в латентном пространстве.

Баннер новости 6345

Проблема: почему видео-инпейнтинг «дрожит»

При попытке заменить объект в видео (например, машину на собаку) стандартные подходы часто приводят к артефактам. Если каждый кадр обрезать вокруг движущегося субъекта отдельно, модель видео-диффузии считывает микро-сдвиги кадра как движение камеры. Это вызывает визуальный «дрож» (jitter) и размытие границ.

Пакет MaskVidExperiments от разработчика drozbay предлагает архитектурное решение: вместо обработки каждого кадра изолированно, система создает стабильный «batch» (набор кадров), где обрезка вокруг объекта вычисляется глобально для всей клипы. Это позволяет маске и кадру двигаться синхронно с объектом, а не реагировать на шум сегментации.

Ключевые ноды и их функции

Основной пайплайн состоит из трех этапов: очистка маски, стабильная обрезка (Subject Crop) и обратная вставка (Subject Uncrop). Ниже приведено сравнение режимов обрезки, которые предлагает пакет:

Режим обрезки Описание поведения Когда использовать
combined Статичная рамка с отступами, покрывающая весь путь объекта за всю клипу. Для коротких клип или когда объект не выходит за пределы кадра.
tracked Рамка фиксированного размера. Она стоит на месте, пока объект в ней, и сдвигается минимально, если объект приближается к краю. Для сохранения стабильности фона и плавного слежения.
zoomed Рамка следует за объектом, масштабируясь так, чтобы он занимал постоянную долю кадра. Требуется ресемплинг. Когда важно сохранить размер объекта, а не фона.

Решение проблемы масок: Mask To Latent Space

Одна из самых частых ошибок при инпейнтинге видео — использование пиксельных масок напрямую. При их трилинейном ресемплинге в ComfyUI границы размываются, и «загрязнение» (bleed) от исходного объекта просачивается в результат.

Нода MVEx Mask To Latent Space решает это, приводя маску к разрешению латентного пространства VAE. Она учитывает пространственное и временное сжатие (включая специфичные для моделей типа MiniMax H3 или LTX-2 циклы кадров). Результат — чистая инпейнтинг-маска, где границы жестко привязаны к токенам модели.

Дополнительные возможности

  • Audio Mask To Latent: Позволяет маскировать и регенерировать только определенные временные диапазоны в аудио-латентах (для моделей с AV-латентами, таких как MiniMax H3, LTX-2). Нода автоматически накладывает маску шума, так как стандартный Set Latent Noise Mask не работает с аудио-частью совместных латентов.
  • Differential Diffusion (Soft): Мягкая версия дифференциальной диффузии. В отличие от стоковой ноды, которая превращает серую маску в жесткую бинарную, эта версия сохраняет мягкие края (feathered edges) на каждом шаге денoising, что критично для временной стабильности видео.
  • Mask Cleanup: Удаление «шума» сегментации (мелких пятен и мерцаний) с сохранением реальных мягких краев объекта.

Технические детали и установка

Пакет не требует внешних зависимостей, кроме самого ComfyUI. Он совместим с версиями ComfyUI v0.15.0 и новее.

Установка осуществляется стандартным способом через терминал:

cd ComfyUI/custom_nodes
git clone https://github.com/drozbay/MaskVidExperiments

Лицензия: GNU GPLv3. Код частично написан с помощью ИИ (Claude Fable 5), но архитектура является независимой реализацией, вдохновленной идеями из ComfyUI-KJNodes и ComfyUI-Inpaint-CropAndStitch, но адаптированной специально для видео-пайплайнов.

Источник: Github ↗