VidTok: переосмысление обработки видео с помощью компактной токенизации
Представьте, что вы смотрите видео оживленной улицы: здания, деревья и дороги остаются почти одинаковыми в каждом кадре, тогда как движутся только люди и транспорт. Традиционные методы обработки видео анализируют каждый кадр как независимое изображение, а значит, в итоге обрабатывают большое количество повторяющейся информации, не используя естественный поток от одного кадра к следующему. Эта избыточность делает обработку видео неэффективной, требуя больше хранилища, памяти и вычислений, чем необходимо.
Чтобы решить эту проблему, VidTok, представленный в статье VidTok: A Versatile and Open-Source Video Tokenizer, предлагает новый подход к сжатию и представлению видео. Вместо обработки каждого кадра по отдельности VidTok преобразует необработанное видео в компактные токены, которые фиксируют как визуальные детали, так и движение. Это снижает избыточность, сохраняя при этом важнейшую структуру видео, что делает такие задачи, как генерация, редактирование и поиск видео, более эффективными.
В этой статье мы рассмотрим ограничения традиционной обработки видео и то, как VidTok предлагает более эффективную альтернативу. Мы разберем его архитектуру, объясним его подход к извлечению пространственных и временных признаков и изучим, как он квантизирует видеоданные.
Ограничения традиционной обработки видео
Во многих сценариях видео, особенно со статичными фонами или минимальными изменениями, содержимое между последовательными кадрами остается похожим. Вместо того чтобы использовать эту избыточность, традиционные методы рассматривают каждый кадр как изолированное изображение. Такой подход не учитывает непрерывность видеоданных и приводит к неэффективности, которая влияет как на производительность, так и на использование ресурсов.
Основные проблемы включают:
Чрезмерная вычислительная нагрузка: Похожая информация обрабатывается повторно в разных кадрах, что приводит к избыточным вычислениям. Это увеличивает время обработки и энергопотребление, что становится критичным для видео высокого разрешения и приложений реального времени.
Высокие накладные расходы на хранилище и память: Хранение каждого кадра как уникальной единицы приводит к накоплению избыточных данных. На протяжении видео повторное хранение почти идентичной фоновой информации значительно увеличивает объем данных, создавая нагрузку на системы хранения и ресурсы памяти.
Потеря временной согласованности: Непрерывность между кадрами необходима для точной фиксации движения. Изоляция каждого кадра может привести к тому, что система упустит тонкие изменения, передающие непрерывность, что потенциально ведет к потере деталей в динамических сценах и артефактам при реконструкции видео.
Неэффективное использование данных: Повторная обработка статичных участков видео означает, что вычислительные ресурсы не сосредоточены на фактических изменениях. Это приводит к бесполезной трате вычислительной мощности на избыточную информацию вместо элементов, которые определяют динамику сцены.
Эти проблемы подчеркивают необходимость метода, который сжимает видеоданные в компактное, осмысленное представление, сохраняя как пространственные детали, так и поток движения. VidTok решает эти проблемы, преобразуя необработанные видеоданные в эффективный токенизированный формат, ориентированный на значимые изменения при минимизации избыточности.
Как VidTok преобразует необработанные видеоданные
VidTok преобразует высокоразмерное видео в компактное представление через последовательность шагов: кодирование, регуляризацию, квантизацию и декодирование.
Рисунок 1. Обзор конвейера VidTok
Процесс начинается с энкодера, нейронной сети, использующей сверточные слои для извлечения важных пространственных признаков из каждого кадра. Эта сеть выявляет ключевые детали, такие как края, текстуры и формы. Используя сходства между последовательными кадрами, энкодер фокусируется на изменениях, отражающих движение, вместо повторной обработки статической информации.
После кодирования шаг регуляризации организует извлеченные признаки в структурированное латентное пространство(сжатое, абстрактное представление данных, где похожие входные данные имеют похожие закодированные признаки). Это гарантирует, что похожие кадры дают похожие представления, что жизненно важно для последующего согласованного восстановления.
После регуляризации VidTok применяет Finite Scalar Quantization (FSQ) к латентным признакам, создавая дискретное представление. FSQ сопоставляет каждый элемент представления с одним из фиксированного набора значений, избегая проблем вроде codebook collapse, встречающихся в традиционном векторном квантовании. Однако VidTok не ограничивается дискретной токенизацией: он также поддерживает непрерывную токенизацию, при которой видео отображается в гладкое латентное пространство вместо фиксированных дискретных значений. Непрерывная токенизация полезна для таких задач, как генерация видео и модели на основе диффузии, тогда как дискретная токенизация более эффективна для задач сжатия и поиска. VidTok балансирует оба подхода, используя FSQ для дискретных токенов и KL regularization для непрерывных токенов, что делает его более гибким, чем модели, специализирующиеся только на одном типе.
Затем декодер при необходимости восстанавливает видео, заново собирая токенизированное представление, чтобы сохранить как пространственные детали, так и временную динамику движения. Сжимая видеоданные в этот токенизированный формат, VidTok уменьшает избыточность, сохраняя при этом критически важную информацию, что делает редактирование, генерацию и поиск видео более эффективными. Теперь, когда мы увидели, как VidTok кодирует и квантует видеоданные, давайте подробнее рассмотрим его архитектурные компоненты.
Внутри архитектуры VidTok
VidTok разработан для преобразования необработанных видеоданных в компактный набор токенов, которые захватывают как пространственные детали, так и информацию о движении. Архитектура состоит из нескольких взаимосвязанных модулей, которые совместно уменьшают избыточность и сохраняют важное содержимое.
Извлечение пространственных признаков с помощью 2D-сверток
Процесс начинается с энкодера, который применяет 2D-сверточные слои к отдельным кадрам видео. Эти слои извлекают критически важные пространственные признаки, такие как края, текстуры и формы, из каждого изображения. Например, в сцене городской улицы сеть учится обнаруживать контуры зданий, дорожную разметку и вывески, минимизируя при этом повторяющуюся обработку статических элементов фона.
Извлечение временных признаков с помощью 3D-сверток
Чтобы захватить движение, VidTok использует 3D-сверточные слои, которые обрабатывают несколько кадров одновременно. Учитывая как пространственные, так и временные измерения, эти слои выявляют паттерны движения и переходы во времени. В сценарии вроде оживленного перекрестка 3D-свертки фокусируются на динамических аспектах, таких как движущиеся автомобили и пешеходы, игнорируя в основном статичное окружение.
Раздельная пространственная и временная выборка
Ключевое проектное решение в VidTok заключается в раздельной обработке пространственной и временной информации. Пространственная выборка выполняется с помощью специализированных 2D-операций, которые эффективно извлекают детали из каждого кадра, тогда как временная выборка управляется независимо для отслеживания изменений во времени. Такое разделение позволяет сети распределять ресурсы там, где они наиболее необходимы, сокращая избыточные вычисления для статического контента.
Временное смешивание с оператором AlphaBlender
Поддержание плавных переходов между кадрами необходимо для точного захвата движения. VidTok интегрирует оператор AlphaBlender для смешивания признаков из последовательных кадров. Оператор вычисляет взвешенную сумму согласно формуле:
x=α⋅x1+(1−α)⋅x2
В этом уравнении x1 и x2 представляют карты признаков из двух последовательных временных шагов, а α управляет балансом между ними. Этот процесс смешивания крайне важен для сохранения постепенных изменений, таких как смена оттенков заката, за счет эффективного объединения информации из соседних кадров. Чтобы лучше понять, как VidTok обрабатывает пространственную и временную информацию, взгляните на следующую диаграмму, которая иллюстрирует его архитектуру и показывает различные компоненты, участвующие в извлечении и смешивании признаков.
Рисунок 2. Пространственная и временная обработка модели, включая 2D+1D DownBlocks, AlphaBlender Temporal DownBlocks и 3D-свертки
VidTok обрабатывает видеовход с использованием сочетания 3D-сверток для извлечения пространственно-временных признаков, блоков 2D+1D для эффективной пространственной обработки и AlphaBlender для временного смешивания. Правая часть диаграммы подробно показывает, как AlphaBlender интегрирует пулинг и интерполяцию для поддержания плавного представления движения. Такая структура гарантирует сохранение статических деталей, при этом временная информация эффективно захватывается без внесения ненужных артефактов.
Конечное скалярное квантование (FSQ)
После извлечения и смешивания признаков VidTok сжимает латентное представление с помощью конечного скалярного квантования (FSQ). FSQ квантует каждый скалярный элемент латентного вектора независимо, сопоставляя его с одним из фиксированного набора заранее определенных значений. Такое независимое квантование позволяет избежать проблем, таких как коллапс кодовой книги, которые могут возникать в традиционных методах векторного квантования. В результате получается набор токенов, где почти каждый токен несет значимую информацию.
Рисунок 3. Визуальное сравнение традиционного векторного квантования и FSQ
На приведенном выше рисунке показано, как VQ заменяет весь латентный вектор ближайшей записью из обучаемой кодовой книги, что может приводить к нестабильности. В отличие от этого, FSQ квантует каждое измерение независимо вдоль заранее определенных осей (z₀, z₁, z₂), устраняя необходимость в кодовой книге и обеспечивая более эффективную и стабильную токенизацию. Этот метод приводит к более надежному дискретному представлению, в котором каждый токен несет значимую информацию.
Декодер и процесс реконструкции
Декодер обращает процесс кодирования, реконструируя видео из компактных токенов. Он повторно собирает токенизированное представление, чтобы воспроизвести как пространственные детали, так и временной поток исходного видео. Эта реконструкция похожа на составление мозаики, где каждый токен вносит вклад в итоговое изображение.
Стратегия обучения и регуляризация
VidTok обучается с использованием двухэтапного подхода, который балансирует вычислительную эффективность с высоким качеством реконструкции видео. На первом этапе модель обучается на видео низкого разрешения, что позволяет ей улавливать структурные закономерности без чрезмерных вычислительных затрат. Это помогает сети изучить общие признаки видео перед работой с более мелкими деталями. На втором этапе с использованием данных высокого разрешения дообучается только декодер, уточняя реконструированные кадры при сохранении эффективности обучения. Кроме того, снижение частоты кадров во время обучения помогает модели сосредоточиться на значимых временных изменениях, а не обрабатывать избыточные покадровые обновления. Это улучшает представление движения за счет приоритизации изменений, которые действительно важны в динамике видео.
Чтобы поддерживать структурированное латентное пространство, VidTok применяет методы регуляризации, которые повышают стабильность и предотвращают переобучение. Один из ключевых методов, используемых для непрерывных токенов, — это KL-дивергенция, которая измеряет, насколько изученное распределение отклоняется от ожидаемого распределения. Минимизируя KL-дивергенцию, модель гарантирует, что латентные представления остаются гладкими и не схлопываются в чрезмерно концентрированные значения, что в противном случае могло бы ограничить разнообразие изученных признаков.
Для дискретных токенов применяются штрафы за энтропию, чтобы стимулировать более равномерное и разнообразное использование доступных уровней квантования. Без этих штрафов модель могла бы чрезмерно использовать лишь небольшое подмножество токенов, что приводило бы к неэффективному сжатию и потере информации. Применяя энтропийную регуляризацию, VidTok обеспечивает эффективное использование всего пространства токенов, улучшая качество представления видео. Вместе эти методы помогают VidTok оптимизировать токенизацию видео, сохраняя пространственную и временную информацию и одновременно обеспечивая эффективную генерацию, редактирование и поиск видео.
Теперь рассмотрим, как эти архитектурные решения приводят к улучшению производительности на ключевых бенчмарках и в практических приложениях.
Производительность VidTok на бенчмарках
После уточнения стратегии обучения и применения Finite Scalar Quantization VidTok демонстрирует высокую производительность на бенчмарках реконструкции видео. Оценка измеряет, насколько хорошо он сохраняет пространственные детали и улавливает движение в различных наборах видеоданных, каждый из которых имеет собственные сложности в отношении сложности сцен и динамики движения.
VidTok был протестирован на таких наборах данных, как MCL-JCV и WebVid-Val. Набор данных MCL-JCV состоит из видео с различными паттернами движения и уровнями детализации, тогда как WebVid-Val содержит естественные видео из реальных сценариев. В этих условиях VidTok достиг Peak Signal-to-Noise Ratio (PSNR) 29,82 dB, что указывает на то, что реконструированные видео близко соответствуют исходному контенту с минимальными искажениями. Он также достиг Structural Similarity Index (SSIM) 0,867, что отражает его способность сохранять пространственные структуры, текстуры и контраст между кадрами. Более высокий SSIM означает, что реконструированное видео выглядит более похожим на оригинал.
Дальнейшая оценка с использованием метрики Learned Perceptual Image Patch Similarity (LPIPS) дала результат 0,106, что указывает на то, что визуальные различия между исходными и реконструированными видео остаются низкими. VidTok также показал Fréchet Video Distance (FVD) 160,1 — показатель того, насколько хорошо модель сохраняет временную согласованность и движение между кадрами.
Эти результаты подчеркивают способность VidTok балансировать эффективность сжатия с качеством реконструкции. Токенизированное представление сохраняет важную информацию, сокращая избыточность, что делает его полезным для приложений в области генерации, редактирования и поиска видео. Хотя эти результаты демонстрируют эффективность VidTok, все еще существуют области, в которых можно добиться дальнейших улучшений.
Будущие направления для VidTok и токенизации видео
VidTok обеспечивает эффективный подход к представлению видео, улучшая поиск, хранение и генерацию. Хотя текущая модель демонстрирует сильные результаты, можно исследовать несколько направлений для дальнейшего расширения её возможностей.
Улучшение представления движения
VidTok захватывает временную динамику с помощью 3D-свёрток и оператора AlphaBlender, но обработка дальних зависимостей в видео остаётся сложной задачей. В будущих работах можно исследовать видеоархитектуры на основе трансформеров, которые явно отслеживают дальние зависимости между кадрами. Эти улучшения повысят непрерывность движения, особенно в сценах с быстро движущимися объектами, перекрытиями или быстрыми переходами.
Более высокое разрешение и многомасштабное кодирование
Эффективная обработка видео более высокого разрешения остаётся открытой задачей. Методы многомасштабного кодирования, при которых разные части видео сжимаются с разными уровнями детализации, могут обеспечить лучшее сохранение мелких текстур без значительного увеличения вычислительных затрат. Это было бы особенно полезно для приложений, требующих высококачественной реконструкции видео, таких как медиапроизводство и медицинская визуализация.
Адаптивное квантование для лучшего сжатия
Finite Scalar Quantization (FSQ) обеспечивает стабильность токенизации, но адаптивное квантование может дополнительно повысить эффективность. Динамически регулируя распределение битов на основе сложности сцены, система может выделять больше деталей областям со сложными текстурами или интенсивным движением, одновременно уменьшая избыточность в статичных областях. Это оптимизирует хранение при сохранении качества видео.
Кросс-модальное обучение для понимания видео
Токенизированные представления VidTok можно объединять с другими модальностями, такими как текст и аудио, для улучшения понимания видео. В будущих работах можно исследовать совместные эмбеддинги, в которых видеотокены отображаются вместе с текстовыми описаниями и звуковыми признаками. Это улучшит такие задачи, как автоматическое создание субтитров, мультимодальный поиск и ответы на вопросы на основе видео, расширяя потенциальные применения VidTok за пределы поиска и сжатия.
Сосредоточившись на этих направлениях, VidTok может продолжить развиваться в более мощный инструмент для обработки видео, повышая эффективность хранения, поиска и анализа в различных отраслях.
Заключение
VidTok улучшает обработку видео, уменьшая избыточность и сохраняя как пространственные, так и временные детали. Вместо того чтобы рассматривать каждый кадр как изолированное изображение, он преобразует видеоданные в компактные токены, делая хранение, сжатие и реконструкцию более эффективными. Применяя свёрточные энкодеры, Finite Scalar Quantization (FSQ) и временное смешивание, он фокусируется на значимых изменениях, минимизируя ненужную обработку.
Этот подход делает такие задачи, как генерация, редактирование и поиск видео, более эффективными без потери важных деталей. В дальнейшем улучшения в отслеживании движения, многомасштабном кодировании и адаптивном квантовании могут ещё больше повысить его производительность. По мере роста спроса на эффективную обработку видео VidTok предоставляет структурированный и масштабируемый метод управления видеоданными при сохранении точности и эффективности.
Дополнительные ресурсы
Читать далее

How to Build RAG with Milvus, QwQ-32B and Ollama
Hands-on tutorial on how to create a streamlined, powerful RAG pipeline that balances efficiency, accuracy, and scalability using the QwQ-32B and Milvus.

Milvus WebUI: A Visual Management Tool for Your Vector Database
Explore Milvus WebUI to monitor, manage, and optimize your vector database with real-time insights, performance tracking, and system health monitoring.

OpenAI o1: What Developers Need to Know
In this article, we will talk about the o1 series from a developer's perspective, exploring how these models can be implemented for sophisticated use cases.


