Depth Map
depth map — карта глубины и пространственной структуры сцены
Depth Map кодирует глубину сцены: какие поверхности находятся ближе, а какие дальше. Такая карта помогает генеративной модели сохранить расстановку и перспективу, даже если материалы, свет и стиль изображения меняются.
Коротко
Коротко. Depth Map — это карта расстояний от камеры до видимых поверхностей. Она показывает, что находится на переднем плане, что — в середине сцены, а что — вдали. В управляемой генерации такая карта служит пространственным условием: внешний вид кадра может измениться, а его глубинная структура остаётся ориентиром.
Что это такое
Представим комнату: такса стоит совсем близко к камере, кресло находится за ней, а окно — у дальней стены. На обычной фотографии расстояния считываются по перспективе, перекрытиям и знакомому размеру предметов.
Depth Map записывает эту информацию отдельно. Каждому пикселю сопоставляется значение глубины. На визуальном превью значения часто показывают оттенками серого: например, близкие поверхности делают светлыми, а дальние — тёмными.
Это только одна из конвенций. В другой системе шкала может быть перевёрнута, а вместо линейного расстояния использоваться обратная глубина. Поэтому цвет карты сам по себе ничего не гарантирует — важна договорённость, по которой её прочитает конкретный пайплайн.
Карта не обязана выглядеть как фотография. У неё другая задача: сохранить форму видимых поверхностей и их порядок по глубине.
Откуда берётся карта глубины
Есть несколько источников.
Оценка по одному изображению
Модель анализирует обычный кадр и предполагает глубину по визуальным подсказкам: перспективе, перекрытиям, теням, размеру знакомых объектов и структуре сцены.
Такой результат чаще показывает относительную глубину: такса ближе кресла, а кресло ближе окна. Точное расстояние в метрах из этой карты не следует.
Данные камеры или датчика
Стереокамера, датчик глубины или лидар получают расстояния из измерений. У таких данных тоже бывают шум, пропуски и ограничения, но они не строятся только на визуальной догадке.
3D-сцена
В трёхмерном редакторе карта создаётся из геометрии и камеры. Это удобный вариант, когда расстановка уже задана моделью помещения или объекта. Значения могут быть метрическими, нормализованными или записанными как расстояние вдоль направления камеры — формат зависит от рендера.
Как Depth Map управляет генерацией
Управляемая генерация получает два разных описания будущего кадра:
- текст сообщает, что должно появиться и как оно может выглядеть;
- карта глубины сообщает, где по глубине находятся поверхности.
В примере с комнатой текст может заменить терракотовое кресло на зелёное, дерево — на светлый камень, а спокойный интерьер — на фантастическую библиотеку. Карта при этом продолжает подсказывать: собака впереди, кресло в середине, окно сзади.
Современные системы условной генерации могут принимать карту глубины через отдельную управляющую сеть, встроенный адаптер или другой механизм пространственного условия. Название узла и способ подключения меняются, а принцип остаётся тем же: значение глубины становится дополнительным ориентиром для генерации.
Что карта сохраняет хорошо
Depth Map полезна, когда важны:
- разделение сцены на передний, средний и дальний планы;
- перспектива комнаты, улицы или ландшафта;
- относительный масштаб объектов на разном расстоянии;
- объёмная форма крупных поверхностей;
- расположение предметов относительно камеры;
- перенос пространственной композиции в другую визуальную стилистику.
При этом слово «сохраняет» не означает точную копию. Карта направляет модель, но результат зависит от силы условия, текста, случайности и остальных входов.
Чего в ней нет
Обычная depth map не сообщает напрямую:
- цвет и материал поверхности;
- название или смысл объекта;
- направление поверхности;
- видимые контуры как отдельные линии;
- точные размеры предмета;
- содержимое скрытой за объектом области.
Два разных предмета могут иметь почти одинаковую карту глубины, если занимают одно место и обладают похожей формой. Для карты важна геометрия видимой поверхности, а не смысл сцены.
Относительная и метрическая глубина
Эти два формата легко перепутать.
Относительная глубина отвечает на вопрос: какая поверхность ближе, а какая дальше. Масштаб может быть произвольным и меняться от кадра к кадру.
Метрическая глубина стремится хранить реальное расстояние в выбранных единицах. Для неё важны калибровка камеры, диапазон измерений и формат данных.
Для сохранения композиции в генерации часто достаточно относительного порядка. Если задача связана с измерениями, реконструкцией или размещением объекта в физическом пространстве, одной красивой серой картинки уже мало — нужны определённые единицы и известная геометрия камеры.
Почему оценка глубины ошибается
По одному изображению нельзя однозначно восстановить всю трёхмерную сцену. Модель делает правдоподобное предположение, а не измеряет пространство.
Сложности часто возникают с:
- зеркалами и отражениями;
- прозрачными и блестящими поверхностями;
- тонкими предметами вроде проводов и веток;
- повторяющимися узорами;
- объектами необычного масштаба;
- туманом, сильным размитием и слабым освещением;
- областями, где мало перспективных подсказок.
Ошибка на карте может перейти в генерацию: край предмета изгибается, фон оказывается слишком близко, а две поверхности неожиданно сливаются. Поэтому визуально гладкая карта не всегда геометрически верна.
С чем часто путают
- С картой нормалей. Depth хранит положение по глубине, а normal map — направление поверхности в каждой точке.
- С контурной картой. Контуры подчёркивают границы и линии. Глубина описывает непрерывное расстояние внутри поверхностей.
- С сегментацией. Сегментация разделяет изображение на классы или области: человек, стена, небо. Она не говорит, насколько далеко они находятся.
- С картой позы. Поза задаёт ключевые точки тела. Depth описывает видимую геометрию всей сцены, включая человека и окружение.
- С Z-buffer. В 3D-рендеринге буфер глубины получается из известной геометрии. Карта, оценённая по фотографии, может выглядеть похоже, но остаётся прогнозом.
- С чёрно-белой фотографией. Яркость обычного кадра зависит от света и цвета. В depth map оттенок должен кодировать глубину по определённому правилу.
Частые ошибки
- Не проверить направление шкалы. Перевёрнутая карта меняет ближние и дальние области местами для системы, которая ожидает другую конвенцию.
- Ждать точных метров от относительной карты. Порядок поверхностей может быть верным, хотя числовой масштаб не определён.
- Считать карту гарантией одинаковой сцены. Текст и генеративная модель всё ещё могут изменить объект или часть композиции.
- Принимать гладкость за точность. Красивый градиент способен скрывать неверную глубину у тонких границ и отражений.
- Забывать о кадрировании. Если карту и будущий кадр по-разному обрезать или растянуть, пространственные подсказки перестанут совпадать.
- Смешивать разные форматы без преобразования. Линейная глубина, обратная глубина и нормализованные значения могут выглядеть сходно, но интерпретируются по-разному.
Частые вопросы
Что должно быть белым — ближнее или дальнее?
Единого правила нет. Часто белым показывают ближние поверхности, но встречается и обратная шкала. Надёжный ответ даёт описание формата или тестовая карта с очевидными планами.
Можно ли нарисовать depth map вручную?
Да, если достаточно грубой пространственной подсказки. Крупные области можно разложить по светлоте и сделать переходы плавными. Такая карта не превращается в точное измерение, но может задать передний план, фон и общую форму.
Depth Map гарантирует сохранение композиции?
Нет. Она усиливает пространственный контроль, но не отменяет влияние текста, модели, случайности и других условий. Чем важнее точное совпадение, тем полезнее сочетать глубину с дополнительными ограничениями.
Можно ли получить карту глубины для видео?
Можно оценивать каждый кадр отдельно, но независимые карты часто мерцают. Для последовательности важна временная согласованность: одна и та же поверхность не должна случайно менять глубину между соседними кадрами.
Можно ли сочетать глубину с контурами или позой?
Да. Разные условия описывают разные стороны сцены: глубину, линии, позу, области. Их совместимость и сила влияния зависят от конкретной системы, поэтому больше условий не всегда означает больше точности.
Главное
Depth Map превращает видимую сцену в карту расстояний до камеры. Она помогает сохранить передний и задний планы, перспективу и крупную расстановку при смене материалов или стиля. Чтобы читать такую карту правильно, достаточно помнить две вещи: глубина бывает относительной и метрической, а направление светлой и тёмной шкалы всегда задаётся форматом.