Connect with us

Исправление ограниченного понимания диффузионных моделей зеркал и отражений

Взгляд Anderson

Исправление ограниченного понимания диффузионных моделей зеркал и отражений

mm
ChatGPT-4o and Adobe Firefly

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

С тех пор, как латентные диффузионные модели (LDM) стали доминировать на сцене генеративного ИИ в 2022 году, исследователи все больше фокусировались на ограниченной способности архитектуры LDM понимать и воспроизводить физические явления. Теперь эта проблема приобрела дополнительную значимость с появлением новаторской видеомодели OpenAI Sora и (спорно) более значимого недавнего выпуска открытых видеомоделей Hunyuan Video и Wan 2.1.

Отражая плохо

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

Однако небольшой, но растущий поток исследований сосредоточен на одном из самых больших слабостей LDM – их относительной неспособности производить точные отражения.

Из январской статьи 2025 года 'Reflecting Reality: Enabling Diffusion Models to Produce Faithful Mirror Reflections', примеры 'отражательной неудачи' против подхода исследователей.

Из январской статьи 2025 года ‘Reflecting Reality: Enabling Diffusion Models to Produce Faithful Mirror Reflections’, примеры ‘отражательной неудачи’ против подхода исследователей. Source: https://arxiv.org/pdf/2409.14677

Эта проблема также была вызовом в эпоху CGI и остается таковой в области видеоигр, где алгоритмы трассировки лучей симулируют путь света при взаимодействии с поверхностями. Трассировка лучей рассчитывает, как виртуальные лучи света отражаются от или проходят через объекты, создавая реалистичные отражения, преломления и тени.

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

Представление виртуально рассчитанного светового луча в традиционной 3D-сцене, использующей технологии и принципы, впервые разработанные в 1960-х годах и которые были доведены до совершенства между 1982-93 годами (период между 'Tron' [1982] и 'Jurassic Park' [1993]).

Представление виртуально рассчитанного светового луча в традиционной 3D-сцене, использующей технологии и принципы, впервые разработанные в 1960-х годах и которые были доведены до совершенства между 1982-93 годами (период между ‘Tron’ [1982] и ‘Jurassic Park’ [1993]). Source: https://www.unrealengine.com/en-US/explainers/ray-tracing/what-is-real-time-ray-tracing

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

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

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

Симулированное двойное отражение, достигнутое с помощью традиционной композитинга для иконической сцены в 'The Matrix' (1999).

Симулированное двойное отражение, достигнутое с помощью традиционной композитинга для иконической сцены в ‘The Matrix’ (1999).

Проблемы с изображением

По этой причине, фреймворки, которые были популярны до появления диффузионных моделей, такие как Нейронные радиационные поля (NeRF), и некоторые более недавние претенденты, такие как Гауссовское сплэттинг (Gaussian Splatting), сохранили свои собственные трудности в симуляции отражений естественным образом.

Проект REF2-NeRF (pictured below) предложил метод моделирования NeRF для сцен с стеклянным шкафом. В этом методе преломление и отражение моделировались с помощью элементов, зависимых и независимых от точки зрения зрителя. Этот подход позволил исследователям оценить поверхности, где происходит преломление, в частности, стеклянные поверхности, и обеспечил разделение и моделирование как прямых, так и отраженных компонентов света.

Примеры из статьи Ref2Nerf. Source: https://arxiv.org/pdf/2311.17116

Примеры из статьи Ref2Nerf. Source: https://arxiv.org/pdf/2311.17116

Другие решения NeRF для отражений за последние 4-5 лет включали NeRFReN, Reflecting Reality и проект Meta 2024 года Planar Reflection-Aware Neural Radiance Fields.

Для GSplat статьи, такие как Mirror-3DGS, Reflective Gaussian Splatting и RefGaussian, предложили решения, связанные с проблемой отражения, в то время как проект Nero 2023 года предложил специальный метод включения отражательных качеств в нейронные представления.

MirrorVerse

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

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

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

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

Справа, результаты MirrorVerse, противопоставленные двум предыдущим подходам (центральные две колонки). Source: https://arxiv.org/pdf/2504.15397

Справа, результаты MirrorVerse, противопоставленные двум предыдущим подходам (центральные две колонки). Source: https://arxiv.org/pdf/2504.15397

Как мы видим в примере выше (функциональное изображение в PDF новой статьи), MirrorVerse улучшает недавние предложения, решающие одну и ту же проблему, но далеки от совершенства.

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

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

Следовательно, эта конкретная функция LDM может продолжать отставать от подходов, специфичных для структуры, таких как NeRF, GSplat и традиционная CGI.

Новая статья озаглавлена MirrorVerse: Pushing Diffusion Models to Realistically Reflect the World, и исходит от трех исследователей из Vision and AI Lab, IISc Bangalore, и Samsung R&D Institute в Бангалоре. Статья имеет связанную страницу проекта, а также базу данных на Hugging Face, с исходным кодом, выпущенным на GitHub.

Метод

Исследователи отмечают с самого начала, что модели, такие как Stable Diffusion и Flux, испытывают трудности в уважении отражательных подсказок, иллюстрируя проблему:

Из статьи: текущие модели текст-изображение, SD3.5 и Flux, демонстрируют значительные трудности в производстве последовательных и геометрически точных отражений при генерации отражений в сцене.

Из статьи: текущие модели текст-изображение, SD3.5 и Flux, демонстрируют значительные трудности в производстве последовательных и геометрически точных отражений при генерации их в сцене.

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

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

Схема для генерации синтетических данных в MirrorVerse: конвейер генерации базы данных применяет ключевые аугментации, случайно позиционируя, вращая и привязывая объекты внутри сцены с помощью 3D-Positioner. Объекты также объединяются в семантически последовательных парах, чтобы симулировать сложные пространственные отношения и оцеления, позволяя базе данных захватить более реалистичные взаимодействия в многообъектных сценах.

Схема для генерации синтетических данных в MirrorVerse: конвейер генерации базы данных применяет ключевые аугментации, случайно позиционируя, вращая и привязывая объекты внутри сцены с помощью 3D-Positioner. Объекты также объединяются в семантически последовательных парах, чтобы симулировать сложные пространственные отношения и оцеления, позволяя базе данных захватить более реалистичные взаимодействия в многообъектных сценах.

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

Статья гласит:

‘Категории объединяются вручную, чтобы обеспечить семантическую последовательность – например, объединение стула с столом. Во время рендеринга, после позиционирования и вращения основного [объекта], выбирается дополнительный [объект] из объединенной категории и располагается так, чтобы избежать перекрытия, создавая 3,140 многообъектных сцен, предназначенных для захвата различных оцеливаний и глубинных отношений.’

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

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

Данные и тесты

SynMirrorV2

База данных SynMirrorV2 исследователей была разработана для улучшения разнообразия и реализма обучающих данных отражения. Она включает 3D-объекты, полученные из баз данных Objaverse и Amazon Berkeley Objects (ABO), с последующим уточнением через OBJECT 3DIT, а также процесс фильтрации из проекта MirrorFusion V1, для исключения низкокачественных активов. Это привело к уточненной коллекции из 66,062 объектов.

Примеры из базы данных Objaverse, использованные при создании базы данных для новой системы. Source: https://arxiv.org/pdf/2212.08051

Примеры из базы данных Objaverse, использованные при создании базы данных для новой системы. Source: https://arxiv.org/pdf/2212.08051

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

Рандомизированные вращения применялись вокруг оси Y, и использовалась техника привязывания для предотвращения ‘плавающих артефактов’.

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

Примеры отрендеренных видов из базы данных авторов, содержащей несколько (более двух) объектов, с иллюстрациями сегментации объектов и визуализаций карт глубины ниже.

Примеры отрендеренных видов из базы данных авторов, содержащей несколько (более двух) объектов, с иллюстрациями сегментации объектов и визуализаций карт глубины ниже.

Процесс обучения

Признавая, что синтетический реализм сам по себе был недостаточным для обеспечения прочной обобщаемости к реальным данным, исследователи разработали трехэтапный процесс обучения для MirrorFusion 2.0.

На этапе 1 авторы инициализировали веса как условной, так и генеративной ветвей с помощью контрольной точки Stable Diffusion v1.5, и дообучили модель на однообъектной обучающей части базы данных SynMirrorV2. В отличие от вышеупомянутого проекта Reflecting Reality, исследователи не замораживали генеративную ветвь. Затем они обучали модель в течение 40,000 итераций.

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

Наконец, на этапе 3 проводилось дополнительное дообучение в течение 10,000 итераций с использованием реальных данных из базы данных MSD, с картами глубины, сгенерированными с помощью монокулярного оценщика глубины Matterport3D.

Примеры из базы данных MSD, с реальными сценами, проанализированными в карты глубины и сегментации. Source: https://arxiv.org/pdf/1908.09101

Примеры из базы данных MSD, с реальными сценами, проанализированными в карты глубины и сегментации. Source: https://arxiv.org/pdf/1908.09101

Во время обучения текстовые подсказки опускались для 20 процентов времени обучения, чтобы побудить модель сделать оптимальное использование доступной информации о глубине (т.е. ‘маскированный’ подход).

Обучение проводилось на четырех GPU NVIDIA A100 для всех этапов (спецификация VRAM не указана, хотя она должна была составлять 40GB или 80GB на карту). Использовался скорость обучения 1e-5 с пакетом размером 4 на GPU, под оптимизатором AdamW.

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

Тестирование

Авторы оценили MirrorFusion 2.0 против предыдущего состояния дел, MirrorFusion, которое служило базовой линией, и провели эксперименты на базе данных MirrorBenchV2, охватывающей как однообъектные, так и многообъектные сцены.

Дополнительные качественные тесты проводились на выборках из базы данных MSD и базы данных Google Scanned Objects (GSO).

Оценка использовала 2,991 изображение одного объекта из известных и неизвестных категорий и 300 сцен с двумя объектами из ABO. Производительность оценивалась с помощью пикового коэффициента сигнал-шум (PSNR); индекса структурированного подобия (SSIM); и оценки подобия патчей изображений, обученных на основе восприятия (LPIPS), чтобы оценить качество отражения в маскированном регионе зеркала. Была использована оценка подобия CLIP, чтобы оценить текстовую согласованность с входными подсказками.

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

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

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

Авторы комментируют:

‘Результаты показывают, что наш метод превосходит базовую линию и дообучение на нескольких объектах улучшает результаты на сложных сценах.’

Большинство результатов, и те, которые подчеркиваются авторами, относятся к качественному тестированию. Из-за размеров этих иллюстраций мы можем воспроизвести только часть примеров из статьи.

Сравнение на базе данных MirrorBenchV2: базовая линия не смогла сохранить точные отражения и пространственную согласованность, показывая неправильную ориентацию стула и искаженные отражения нескольких объектов, тогда как (авторы утверждают) MirrorFusion 2.0 правильно отображает стул и диваны, с точной позицией, ориентацией и структурой.

Сравнение на базе данных MirrorBenchV2: базовая линия не смогла сохранить точные отражения и пространственную согласованность, показывая неправильную ориентацию стула и искаженные отражения нескольких объектов, тогда как (авторы утверждают) MirrorFusion 2.0 правильно отображает стул и диваны, с точной позицией, ориентацией и структурой.

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

Ниже мы видим качественные результаты на базе данных GSO:

Сравнение на базе данных GSO. Базовая линия неверно представила структуру объекта и произвела неполные, искаженные отражения, тогда как MirrorFusion 2.0, авторы утверждают, сохраняет пространственную целостность и генерирует точную геометрию, цвет и детали, даже для объектов, не входящих в базу данных.

Сравнение на базе данных GSO. Базовая линия неверно представила структуру объекта и произвела неполные, искаженные отражения, тогда как MirrorFusion 2.0, авторы утверждают, сохраняет пространственную целостность и генерирует точную геометрию, цвет и детали, даже для объектов, не входящих в базу данных.

Здесь авторы комментируют:

‘MirrorFusion 2.0 генерирует значительно более точные и реалистичные отражения. Например, на рис. 5 (а – выше), MirrorFusion 2.0 правильно отражает ручки ящика (выделены зеленым), тогда как базовая модель производит неправдоподобное отражение (выделено красным). ‘

‘Аналогично, для ‘Белого-Желтого кофейного чашки’ на рис. 5 (б), MirrorFusion 2.0 обеспечивает правдоподобную геометрию с минимальными артефактами, в отличие от базовой модели, которая не может точно захватить геометрию и внешний вид объекта.’

Окончательный качественный тест проводился против реальной базы данных MSD (частичные результаты показаны ниже):

Результаты реальных сцен, сравнивающие MirrorFusion, MirrorFusion 2.0 и MirrorFusion 2.0, дообученную на базе данных MSD. MirrorFusion 2.0, авторы утверждают, захватывает сложные детали сцены более точно, включая захламленные объекты на столе и присутствие нескольких зеркал в трехмерной среде. Только частичные результаты показаны здесь, из-за размеров результатов в исходной статье, на которую мы ссылаемся читателя для полных результатов и лучшего разрешения.

Результаты реальных сцен, сравнивающие MirrorFusion, MirrorFusion 2.0 и MirrorFusion 2.0, дообученную на базе данных MSD. MirrorFusion 2.0, авторы утверждают, захватывает сложные детали сцены более точно, включая захламленные объекты на столе и присутствие нескольких зеркал в трехмерной среде. Только частичные результаты показаны здесь, из-за размеров результатов в исходной статье, на которую мы ссылаемся читателя для полных результатов и лучшего разрешения.

Здесь авторы отмечают, что хотя MirrorFusion 2.0 показала хорошую производительность на MirrorBenchV2 и GSO, она изначально испытывала трудности с сложными реальными сценами в базе данных MSD. Дообучение модели на подмножестве MSD улучшило ее способность обрабатывать захламленные среды и несколько зеркал, в результате чего получались более согласованные и детальные отражения на тестовой части.

Кроме того, был проведен пользовательский тест, в котором 84% пользователей предпочли генерации MirrorFusion 2.0 базовой модели.

Результаты пользовательского теста.

Результаты пользовательского теста.

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

Вывод

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

Более того, добавление данных к существующим моделям уже является стандартным методом для исправления пробелов в производительности LDM, со всеми упомянутыми недостатками. Можно предположить, что если будущие крупномасштабные базы данных будут уделять больше внимания распределению (и аннотации) данных, связанных с отражением, мы можем ожидать, что полученные модели будут лучше обрабатывать этот сценарий.

Однако то же самое верно и для множества других проблем в выходных данных LDM – кто может сказать, какая из них наиболее заслуживает усилий и денег, необходимых для решения, предложенного авторами новой статьи?

 

Опубликовано в понедельник, 28 апреля 2025 года. Вторник, 29 апреля: внесена грамматическая поправка в заключительные абзацы.

Писатель о машинном обучении, специалист в области синтеза человеческих изображений. Бывший руководитель исследовательского контента в Metaphysic.ai.