Непрерывная 3D-реконструкция: память, которая не имеет границ

Автор: Денис Аветисян


Новая архитектура InfiniteVGGT позволяет создавать трехмерные модели из бесконечных потоков данных, эффективно управляя исторической информацией.

🚀 Квантовые новости

Подключайся к потоку квантовых мемов, теорий и откровений из параллельной вселенной.
Только сингулярные инсайты — никакой скуки.

Присоединиться к каналу
Ранее существовавшие подходы к пониманию трехмерной геометрии, как в онлайн, так и в офлайн режиме, уступают InfiniteVGGT, представляющему собой качественно новый уровень в этой области.
Ранее существовавшие подходы к пониманию трехмерной геометрии, как в онлайн, так и в офлайн режиме, уступают InfiniteVGGT, представляющему собой качественно новый уровень в этой области.

Метод InfiniteVGGT использует косинусное сходство ключей и оптимизированную память для долгосрочной 3D-реконструкции из потоковых данных.

Несмотря на значительный прогресс в области 3D-реконструкции, обеспечение устойчивого и масштабируемого понимания визуальной геометрии в реальном времени остаётся сложной задачей. В работе ‘InfiniteVGGT: Visual Geometry Grounded Transformer for Endless Streams’ представлена новая архитектура, использующая трансформатор с адаптивной «скользящей» памятью, позволяющая эффективно обрабатывать бесконечные потоки данных. Ключевым нововведением является механизм отбора наиболее релевантной исторической информации на основе косинусного сходства ключей, что обеспечивает долгосрочную стабильность и преодолевает ограничения существующих методов. Открывает ли это путь к созданию действительно автономных систем 3D-восприятия, способных к непрерывному обучению и адаптации в динамичной среде?


Неизбежный Техдолг: Проблема Непрерывных Потоков Данных

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

Суть проблемы заключается в эффективном управлении и приоритизации информации в протяженных последовательностях данных, что неизбежно приводит к накоплению ошибок и искажению результатов — так называемому «дрифту». В процессе обработки длинных потоков данных любая небольшая погрешность, возникшая на ранних этапах, со временем усиливается и распространяется, приводя к постепенному отклонению реконструируемой трехмерной модели от реального объекта. Это особенно критично в динамических средах, где объекты постоянно меняют свое положение и форму, поскольку система должна непрерывно корректировать свои оценки, опираясь на все предыдущие данные, и эффективно отсеивать устаревшую или нерелевантную информацию. Отсутствие эффективных механизмов для управления этой информацией существенно ограничивает возможности построения точных и устойчивых трехмерных моделей в режиме реального времени.

Существующие методы трехмерной реконструкции часто сталкиваются с ограничениями, обусловленными необходимостью обработки данных фиксированной длины или непомерным ростом вычислительной сложности при увеличении длины последовательности. Традиционные алгоритмы, как правило, требуют предварительного определения размера входных данных, что делает их непригодными для работы с неограниченными потоками информации. В случаях, когда размер последовательности не фиксирован, вычислительные затраты, необходимые для поддержания точности и предотвращения накопления ошибок, могут экспоненциально возрастать, делая реконструкцию в реальном времени практически невозможной. Это особенно актуально при работе с данными, поступающими из динамических сред, где непрерывная обработка информации является ключевым требованием, и где накопление даже незначительных погрешностей может привести к существенным искажениям и неточностям в конечном результате.

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

Качественные результаты трехмерной реконструкции демонстрируют возможность восстановления сложных объектов из различных точек зрения.
Качественные результаты трехмерной реконструкции демонстрируют возможность восстановления сложных объектов из различных точек зрения.

InfiniteVGGT: Параллельный Мир Скользящей Памяти

InfiniteVGGT представляет собой новую архитектуру для онлайн-анализа трехмерной геометрии, основанную на концепции «rolling memory» (скользящей памяти). В отличие от традиционных подходов, требующих хранения всей последовательности данных, InfiniteVGGT использует фиксированный объем памяти для удержания только наиболее релевантной информации. Это достигается путем последовательного обновления буфера памяти, при котором старые данные заменяются новыми, обеспечивая обработку данных в реальном времени и возможность анализа длительных последовательностей без экспоненциального роста потребляемой памяти. Архитектура предназначена для работы с непрерывным потоком данных, что делает ее применимой для задач, требующих анализа геометрии в динамических сценариях.

Система InfiniteVGGT использует стратегию “скользящей памяти” (Rolling Memory) для поддержания кэша фиксированного размера. Вместо хранения всей последовательности данных, система выборочно сохраняет наиболее информативные фрагменты прошлой информации. Это достигается путем динамического управления памятью, когда устаревшие или избыточные данные удаляются, а новые, потенциально более значимые данные добавляются. Такой подход позволяет поддерживать постоянный объем используемой памяти, избегая экспоненциального роста при обработке длинных последовательностей 3D-геометрии, и обеспечивает возможность обработки видеоданных длиной до 10 000 кадров.

В основе механизма отбора информации в InfiniteVGGT лежит вычисление косинусной близости между «ключами» — векторными представлениями текущих и ранее сохраненных данных. Косинусная близость cos(\theta) = \frac{A \cdot B}{||A|| \cdot ||B||} позволяет количественно оценить степень сходства между векторами, где A и B представляют собой векторы признаков. При добавлении новой информации система вычисляет косинусную близость между её «ключом» и «ключами» уже хранящихся данных. Если близость превышает заданный порог, новая информация считается избыточной и не сохраняется, что позволяет поддерживать фиксированный размер кэша и фокусироваться на наиболее информативных и разнообразных данных в последовательности.

Система InfiniteVGGT обеспечивает устойчивую производительность при обработке последовательностей длиной до 10 000 кадров благодаря интеллектуальному распределению памяти на основе разнообразия информации. В процессе работы система динамически оценивает информативность каждого кадра и отбирает для хранения только наиболее значимые данные, эффективно используя фиксированный объем кэша. Данная способность была подтверждена в ходе тестирования на наборе данных Long3D, который содержит длительные 3D-последовательности, демонстрируя возможность системы обрабатывать большие объемы данных без существенной потери производительности.

InfiniteVGG использует механизм «скользящей памяти», отсекая устаревшие данные из KV-кэша на основе косинусного сходства ключей и адаптивного распределения по слоям, что позволяет эффективно обрабатывать 3D-геометрию без накопления VRAM.
InfiniteVGG использует механизм «скользящей памяти», отсекая устаревшие данные из KV-кэша на основе косинусного сходства ключей и адаптивного распределения по слоям, что позволяет эффективно обрабатывать 3D-геометрию без накопления VRAM.

Ускорение Внимания: FlashAttention и KV-Кэширование

InfiniteVGGT использует ‘FlashAttention’ — специализированное аппаратное ядро, предназначенное для ускорения вычислений механизма внимания (attention) и снижения узких мест, связанных с пропускной способностью памяти. В отличие от стандартных реализаций attention, FlashAttention оптимизирует доступ к памяти и порядок вычислений, что позволяет существенно сократить время обработки и потребление энергии. Данное ядро эффективно обрабатывает большие матрицы ключей и значений, минимизируя необходимость в перемещении данных между памятью и вычислительными блоками, что особенно критично при работе с длинными последовательностями данных и большими моделями.

Кэш ключей и значений (KV Cache) представляет собой механизм хранения промежуточных результатов вычислений внимания — ключей (Key) и значений (Value) — для последующего использования. Это позволяет избежать повторных вычислений при обработке последовательностей, существенно повышая вычислительную эффективность. Вместо пересчета ключей и значений для каждого шага обработки система извлекает их из кэша, что снижает потребность в пропускной способности памяти и ускоряет процесс обработки последовательностей переменной длины. Такой подход особенно важен при работе с длинными последовательностями, где повторные вычисления могут стать значительным узким местом.

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

Методы, такие как ‘StreamVGGT’, ‘CUT3R’ и ‘TTT3R’, также получают значительное повышение эффективности благодаря использованию KV-кэша. Этот кэш хранит ключи и значения, полученные на предыдущих шагах обработки последовательности, что позволяет избежать повторных вычислений и снижает потребность в пропускной способности памяти. В результате данные методы демонстрируют аналогичные улучшения в скорости обработки и снижении задержки, как и системы, использующие ‘FlashAttention’, обеспечивая более быструю и экономичную обработку длинных последовательностей.

Анализ карт внимания и PCA-вложений векторов запросов и ключей демонстрирует минимальные изменения во времени и избыточность признаков, обусловленные незначительными смещениями точки зрения при потоковой съемке.
Анализ карт внимания и PCA-вложений векторов запросов и ключей демонстрирует минимальные изменения во времени и избыточность признаков, обусловленные незначительными смещениями точки зрения при потоковой съемке.

Проверка на Прочность: Long3D Benchmark

Для всесторонней оценки InfiniteVGGT был разработан новый набор данных — Long3D Benchmark, специально предназначенный для тестирования алгоритмов непрерывной 3D-реконструкции геометрии. Этот набор данных отличается от существующих, поскольку акцентирует внимание на долгосрочной стабильности и точности воссоздания трехмерных сцен из продолжительных последовательностей изображений. Long3D Benchmark содержит сложные сцены и разнообразные движения, что позволяет оценить способность алгоритмов эффективно обрабатывать накопление ошибок и поддерживать согласованность геометрии на протяжении длительного времени. Разработка данного набора данных стала ключевым шагом в создании надежного инструмента для сравнения и улучшения методов непрерывной 3D-реконструкции, предлагая объективную метрику для оценки их производительности и устойчивости.

Исследования показали, что InfiniteVGGT превосходит существующие методы, такие как CUT3R и TTT3R, в задачах оценки трехмерной геометрии на длинных последовательностях данных. Оценка проводилась на специально разработанном наборе данных Long3D, который позволяет объективно сравнить производительность различных алгоритмов. Преимущество InfiniteVGGT проявляется не только в повышении точности реконструкции, но и в значительном улучшении вычислительной эффективности, что особенно важно при обработке больших объемов данных и работе с потоковыми данными в реальном времени. Таким образом, InfiniteVGGT демонстрирует свою способность эффективно решать задачи непрерывной трехмерной реконструкции, обеспечивая более качественные и быстрые результаты по сравнению с существующими подходами.

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

Несмотря на незначительное превосходство InfiniteVGGT над StreamVGGT в точности оценки Normal Consistency (NC) на коротких последовательностях (50-100 кадров), истинная сила данной модели проявляется при непрерывной долгосрочной реконструкции. В то время как другие методы сталкиваются с накоплением ошибок и потерей точности при обработке длинных видеопотоков, InfiniteVGGT демонстрирует стабильно высокую производительность, сохраняя детализированную и когерентную 3D-модель на протяжении всей последовательности. Это достигается благодаря инновационной парадигме «rolling memory», эффективно предотвращающей накопление дрифта и поддерживающей постоянный уровень точности даже при обработке очень длинных 3D-последовательностей, что делает InfiniteVGGT особенно ценным инструментом для приложений, требующих долгосрочного и непрерывного отслеживания трехмерной геометрии.

Изображение демонстрирует различные виды и глобальные облака точек сцен, полученные с использованием Long3D.
Изображение демонстрирует различные виды и глобальные облака точек сцен, полученные с использованием Long3D.

Этот InfiniteVGGT, конечно, звучит как прорыв. Но давайте будем реалистами: любая «бесконечная» система рано или поздно упрется в ограниченность ресурсов. Авторы уверяют, что их метод управления памятью, основанный на косинусном сходстве ключей, позволяет сохранять критическую историческую информацию для непрерывной 3D-реконструкции. Звучит красиво, пока не начнется накопление технического долга. Похоже, они просто заменяют старые проблемы новыми, пытаясь оптимизировать сохранение данных, чтобы обойти ограничения памяти. Как говорит Фэй-Фэй Ли: «Искусственный интеллект — это не волшебство, а просто очень сложные алгоритмы, которые часто дают сбой». И этот InfiniteVGGT, скорее всего, тоже когда-нибудь даст сбой, когда его «бесконечная» память заполнится мусором.

Что дальше?

Представленный подход к управлению памятью, несомненно, элегантен. Однако, стоит помнить, что любая абстракция умирает от продакшена. Бесконечный поток данных рано или поздно найдёт способ сломать даже самую продуманную систему удержания ключевой информации. Конечно, красиво умирает. Оптимизация функции подобия косинусов — лишь одна из битв, а война за эффективную реконструкцию в реальном времени продолжается. Особое внимание следует уделить устойчивости к шуму и ошибкам сенсоров — идеальные диаграммы редко выдерживают столкновение с действительностью.

Похоже, что проблема долгосрочной зависимости остаётся ахиллесовой пятой. FlashAttention — это хорошо, но что произойдёт, когда «бесконечный горизонт» окажется не таким уж и бесконечным? Неизбежно возникнет вопрос о компромиссах между точностью реконструкции и вычислительными затратами. И, конечно, стоит задуматься о масштабируемости — сможет ли эта техника эффективно работать с потоками данных, поступающими от сотен или тысяч сенсоров?

Всё, что можно задеплоить — однажды упадёт. Вместо того, чтобы стремиться к «бесконечности», возможно, стоит сосредоточиться на разработке систем, способных быстро и надёжно восстанавливаться после сбоев. В конечном счёте, речь идёт не о создании идеальной модели мира, а о построении системы, способной адаптироваться к его неизбежной непредсказуемости.


Оригинал статьи: https://arxiv.org/pdf/2601.02281.pdf

Связаться с автором: https://www.linkedin.com/in/avetisyan/

Смотрите также:

2026-01-07 05:44