Глубина и сегментация
Карта глубины из обычной камеры и отделение объекта от фона: модели, готовые решения и что с этим делать.
Две задачи, где модели действительно незаменимы: как далеко объекты и где заканчивается фигура.
Карта глубины из обычной камеры
Монокулярная оценка глубины: модель по одному кадру строит карту расстояний. Актуальный стандарт — Depth Anything V2.
Способы запустить:
- Официальный пример Derivative —
TDDepthAnything: реализация через Hugging Face с использованием Thread Manager и менеджера Python-окружений версии 2025 — Как это запускается. - Реализация сообщества на TensorRT — быстрее, привязана к железу.
- Готовый
.tox-плагин — вариант «перетащил и работает», в том числе для Mac; удобен, когда нужна карта глубины, а не исследование. - Камера глубины (ZED, RealSense, Kinect Azure) — если можно поставить железо, оно точнее и стабильнее модели.
Что делать с картой глубины
| Приём | Как |
|---|---|
| Слои по расстоянию | Порог по глубине → маска переднего плана |
| Параллакс | Смещение картинки по глубине — «оживший» кадр |
| Частицы по форме | Глубина + цвет → облако точек в 3D — POP |
| Освещение 2D-кадра | Глубина как карта нормалей |
| Замена фона | Порог по глубине вместо хромакея |
| Взаимодействие | Зона по расстоянию: человек ближе двух метров — событие |
Карта глубины из модели обрабатывается ровно как буфер глубины из рендера — Камеры и проходы.
Сегментация
Задача: маска объекта. Варианты по возрастанию качества и стоимости:
| Способ | Качество края | Скорость |
|---|---|---|
Хромакей (Chroma Key TOP) |
Отличное — при зелёном фоне | Мгновенно |
| Порог по глубине | Среднее | Быстро |
| Nvidia Background TOP | Хорошее по людям | Быстро |
| MediaPipe Segmentation | Среднее, кросс-платформенно | Быстро |
| Robust Video Matting | Хорошее, стабильное по времени | Средне |
| SAM и подобные | Отличное по произвольным объектам | Медленно |
Для реального времени практический выбор — Background TOP на Windows+RTX или MediaPipe везде. Тяжёлые модели вроде SAM применяют офлайн: подготовить материал, а не считать в шоу.
Обработка маски
Сырая маска модели всегда требует доводки:
маска ──▶ blur (мягкий край) ──▶ level (контраст порога) ──▶ использовать
Плюс временное сглаживание: маска «дышит» между кадрами, и это видно. Небольшой Lag по маске как по картинке (через Feedback с малым коэффициентом) заметно успокаивает результат.
Зритель не знает, что такое сегментация, но мгновенно замечает дрожащий контур. Мягкий край, лёгкое свечение по границе и временное сглаживание делают больше для правдоподобия, чем более тяжёлая модель.
Сегментация на 15–20 кадрах в секунду с интерполяцией между ними выглядит не хуже, чем на 60, и освобождает видеокарту для остального — Производительность.