DepthLab : инпейнт карт глубины на основе диффузионных моделей

DepthLab : инпейнт карт глубины на основе диффузионных моделей. DepthLab - диффузионный механизм инпейнта карт глубины с двумя параллельными ветвями для задач заполнения 3D-сцен, генерации сцен на основе текстовых промптов, реконструкции с использованием DUST3R и заполнение глубины LiDAR. Первая ветвь, Reference U-Net извлекает признаки из RGB-изображений, которые служат условием для второй ветви. Вторая ветвь, Estimation U-Net, обрабатывает имеющиеся данные о глубине и маску, определяющую области, требующие восстановления. Признаки RGB, полученные из Reference U-Net, последовательно интегрируются в Estimation U-Net, что позволяет управлять процессом восстановления. Взаимодействие между ветвями Reference U-Net и Estimation U-Net реализуется механизмом cross-attention, который использует CLIP encoder. Архитектура DepthLab опирается на наработки Marigold и Stable Diffusion V2. Кодирование RGB-изображений и карт глубины в латентное пространство осуществляется VAE. Маска также кодируется с помощью VAE, что позволяет сохранить детальную информацию о форме и границах. Обучение DepthLab проводилось на двух синтетических датасетах: Hypersim (54 тысячи обучающих образцов) и Virtual KITTI (20 тысяч обучающих образцов). Для расширения обучающей выборки использовались случайные искажения изображений и несколько стратегий маскирования: штрихи, окружности, квадраты и их комбинации. Результаты тестов демонстрируют, что DepthLab превосходит как дискриминативные (DiverseDepth, MiDaS, LeReS, Omnidata, HDN, DPT, DepthAnything, DepthAnythingV2), так и генеративные (Marigold, DepthFM, GeoWizard) методы в постоении карт глубины. Для локального инференса потребуются модели: Marigold checkpoint ; Энкодер CLIP-ViT-H-14-laion-2B ; Набор чекпоинтов DepthLab . Локальная установка и инференс: git clone DepthLab .git cd DepthLab conda env create -f conda activate DepthLab cd scripts bash Страница проекта Модель Arxiv GitHub
Back to Top