Почему 3D Gaussian Splatting не доходит до рабочей версии
Первый сбой — расхождение демо и браузера. На демо-стенде сцена собрана при ровном свете и облёте по кругу, а у заказчика картинка рассыпается: кадры рвутся, отдельные пятна вылезают перед объектами, поворот камеры идёт рывками. Причина не в качестве реконструкции, а в том, что под неё не заложены порядок вывода по глубине, разбиение сцены на блоки видимости и лимит по числу примитивов — рендеринг сцены в браузере падает там, где на мощной машине всё выглядит безупречно.
Второй типовой сбой — масса сцены. Модель, которая честно открывается на рабочей станции, весит больше, чем канал доставки до конечного пользователя: без уровней детализации и потоковой подгрузки каждый посетитель вытягивает весь объём, хотя смотрит один ракурс. Интерактивная 3D-реконструкция в таком виде либо не стартует, либо стартует через минуты ожидания — и это не вопрос «оптимизации потом», а вопрос схемы хранения данных, заложенной на этапе сборки.
Третий — правки материалов. Как только из исходного набора убирают объект, меняют свет или доснимают участок, сшивка примитивов расползается: появляются туманные сгустки на месте удалённого, швы на границах облёта, потеря контакта с полом. Реконструкция, которая считается один раз под конкретную съёмку, не переживает первой же итерации — а значит, не живёт в продукте.
3D Gaussian Splatting даёт фотореалистичную картинку, но рабочая версия — это ещё и упаковка сцены, предсказуемый старт на слабом железе и повторяемая сборка после любой правки. Разбираем, как это закрывается.
Что даёт интерактивная реконструкция на практике
Gaussian Splatting описывает сцену не полигональной сеткой с текстурами, а облаком гауссовых примитивов с цветом и плотностью. Отсюда следуют четыре эффекта, которые заказчик видит своими глазами и которые мы фиксируем замерами до сдачи проекта.
Время загрузки сцены сокращается за счёт потоковой выдачи по уровням детализации: сначала приходит грубый каркас, детали доезжают по мере осмотра. Вес модели сцены при этом падает в разы против плотной сетки — модель с миллионами полигонов на телефоне либо не открывается, либо открывается так долго, что посетитель успевает уйти.
Плавность 3d-сцены держится не только на мощном устройстве: примитивы отрисовываются пакетно, а детализация подстраивается под текущую нагрузку. Стабильность отклика сохраняется и на слабых устройствах — вращение и приближение не «залипают», картинка не рассыпается при быстром движении камеры.
Показ объекта в браузере перестаёт быть отдельным классом отказов: нет чёрного экрана на первом кадре, нет разъехавшихся текстур и упавшей вкладки. Сцена открывается по ссылке без установки приложений и ведёт себя одинаково на ноутбуке и на телефоне.
Каждый эффект мы привязываем к замеру — вес отдаваемых данных, время до первого кадра, доля кадров без просадок. Если значения расходятся с согласованными, правки идут в сцену, а не в ожидания заказчика.
Сравнение подходов к реконструкции сцены
Ни одного универсального способа собрать трёхмерную сцену не существует: выбор определяется масштабом объекта, требованиями к фотореализму и тем, что должно получиться на выходе — свободный обзор, точная геометрия или редактируемая модель. Ниже — четыре варианта, между которыми реально выбирают на старте: обучаемая гауссова сцена (3D Gaussian Splatting), облако точек, полигональная модель и гибрид.
| Вариант | Когда подходит | Ограничения |
|---|---|---|
| Обучаемая гауссова сцена | Фотореалистичный обзор сложных сцен: интерьеры, растительность, блики, полупрозрачные поверхности | Нет готовой геометрии для правок; нужна съёмка с плотным перекрытием ракурсов |
| Облако точек | Обмеры и контроль геометрии, точные расстояния между элементами | Большой объём, визуальные разрывы, не подходит для показа заказчику |
| Полигональная модель (фотограмметрия) | Нужна редактируемая сетка: сборка в движке, расчёты, интеграция с САПР | Теряет мелкие детали и материалы, текстуры доводятся вручную |
| Гибридная сцена | Крупный объект: гауссова часть для обзора, полигональная — для точности и расчётов | Сложнее сборка и синхронизация слоёв, нужна проверка стыков |
Масштаб — главный ограничитель: гауссовы сцены держат качество, пока объект снимается за один проход с плотным перекрытием, а на больших площадях растут объём данных и время сборки. Поэтому территории и длинные маршруты чаще собирают гибридно. Мы прогоняем ваши исходники через пробную сборку и называем вариант, который выдержит и показ, и дальнейшие изменения.
Этапы внедрения: от съёмки до передачи проекта
Этапы внедрения 3D-сцены выстроены так, чтобы ошибка на площадке не превращалась в переделку всего проекта. Каждый шаг заканчивается артефактом, который можно проверить до перехода к следующему.
-
Разбор задачи и ограничений площадки. Определяем, что должно читаться вблизи, а что видно только издали, и собираем ограничения: где разрешено ходить и ставить штатив, какой свет и трафик на объекте.
-
Схема сцены. Прокладываем маршрут обхода, точки съёмки, перекрытие кадров и опорные объекты для привязки. Согласуем схему до выезда — правки на бумаге дешевле повторной командировки.
-
Съёмка объекта. Идём строго по схеме, контролируя экспозицию, фокус и равномерность движения, и дополнительно снимаем контрольные кадры для проверки геометрии.
-
Сборка и обучение сцены. Калибруем камеры, отсеиваем смазанные кадры, обучаем модель на 3D Gaussian Splatting и подбираем параметры так, чтобы сохранились тонкие детали без роста размера сцены.
-
Проверка на целевых устройствах. Прогоняем сцену на тех телефонах, очках и браузерах, что у аудитории заказчика: плавность вращения, время первой загрузки, поведение при слабой сети. Просадки закрываем до приёмки.
-
Приёмка результата и передача. Передаём исходники, собранную сцену, скрипты сборки и регламент повторной съёмки, если объект изменится. Чек-лист приёмки проходим вместе, на реальных устройствах.
Комплект передачи: сцены, конфигурации, регламенты
После сдачи у заказчика остаётся не только собранная сцена, но и всё, что нужно для её самостоятельной эксплуатации и развития. Комплект документации описывает структуру проекта, связи между файлами и порядок пересборки: инженер, который не участвовал в разработке, разворачивает сцену на своём стенде без переписки с нами. Приёмка идёт по этому же перечню — расхождения видно до подписания акта.
- Исходные данные проекта — съёмочные наборы с сортировкой по датам, значения параметров камер, маски проблемных зон и журнал съёмки: видно, какие кадры на что влияют и что имеет смысл переснять.
- Собранная сцена — итоговая модель, разбитая на смысловые узлы, чтобы правка одного фрагмента не тянула пересборку целиком; рядом — контрольные ракурсы для проверки геометрии.
- Конфигурация сцены — параметры сборки, границы обзора, точки входа камеры и настройки освещения вынесены в отдельные файлы, а не зашиты в код.
- Правила доступа к сцене — роли, ограничение на выгрузку, сроки жизни ключей; отдельно описаны публикация во внутреннем контуре и на внешнем стенде.
- Регламент обновления сцены — последовательность повторной съёмки и досборки, периодичность, требования к исходникам и критерии, при которых новая версия принимается.
- Схема размещения — где лежат исходники, готовые наборы и резервные копии, как считается версия и как откатиться на предыдущий набор.
- Инструкция по приёмке — контрольные метрики качества, тестовые ракурсы и перечень типовых дефектов, которые закрываются до сдачи.
Проект: интерактивный тур по объекту до и после
Заказчик — выставочный павильон, где посетитель проходит экспозицию самостоятельно, а тур должен показывать один и тот же зал в двух состояниях: до реконструкции и после. Первый прототип на классической фотограмметрии не выдержал проверки на месте: сцена весила слишком много, открывалась десятки секунд, а на планшетах в зале камера заметно отставала от жеста. Люди бросали обход на середине и уходили к стенду с экспонатами.
Что изменили и что получили
Реконструкцию перенесли на 3D Gaussian Splatting: сцена описывается набором гауссов вместо плотной сетки с текстурами, поэтому при сопоставимой фотореалистичности вес падает в разы. Дальше разбили пространство на зоны и подгружаем их по мере движения пользователя, а удалённые участки отдаём в упрощённом виде. Отдельно зафиксировали бюджет отклика: поворот камеры обязан успевать за жестом без рывков на планшетах стенда.
Метрики до и после снимали на том же оборудовании в том же зале. Первая зона открывается за считаные секунды вместо десятков секунд ожидания, вес сцены сократился примерно вчетверо, отклик сцены на жест уложился в комфортный порог. Доля пользователей, доходящих до конца обхода, выросла с 54% до 88% — обрывов на загрузке практически не осталось.
Вывод для следующих проектов простой: решает не красота отдельного кадра, а бюджет по весу и отклику, посчитанный до съёмки объекта. Поэтому сцену прогоняем на целевом устройстве до сдачи, а не после жалоб на месте.
Чем 3D-реконструкция отличается от ручной модели
Короткий ответ: у них разный источник геометрии. Ручная полигональная модель собирается человеком по обмерам и чертежам — из примитивов, которые затем можно разложить на узлы и отредактировать. Обучаемая 3D-сцена строится из набора фотографий и повторяет объект по факту, а не по проекту.
В 3D Gaussian Splatting сцена описывается множеством объёмных примитивов: у каждого своё положение, размер, прозрачность и цвет, зависящий от направления взгляда. Поэтому блики, ворс, полупрозрачность, потёртый металл и неровные покрытия передаются как есть, без ручной настройки материалов. Сроки подготовки при этом задаёт не моделирование, а съёмка: часы работы на объекте вместо недель построения.
Там, где критичны достоверность материалов и скорость, обучаемая сцена выигрывает. Повторная съёмка фиксирует изменения: перекрасили стены, заменили оборудование — сцена обновляется, а не перестраивается заново.
Полигональная модель остаётся единственным рабочим вариантом, когда нужна редактируемая топология: развёртка, анимация, расчёты, встраивание в физику или конфигуратор с вариантами. Также если объект ещё не построен, доступ ограничен режимом, а на руках есть проектная документация. Обученную сцену нельзя разобрать на детали — она показывает только то, что попало в кадр.
На практике выбор редко бинарный: для интерактивной демонстрации или приёмки объекта берём сцену, для производственных задач — гибрид, где полигональная основа отвечает за структуру, а фотореалистичная оболочка за достоверность. Опишите объект и задачу — вернёмся с планом и оценкой, какой путь короче по срокам.
Технические вопросы, которые задают до старта
Перед стартом звучат одни и те же технические вопросы: как поведут себя исходные данные, что будет при обновлении сцены, насколько крупный объект реально снять. Масштаб ограничен не технологией, а временем обхода — квартал разбиваем на секции и сшиваем по общим ориентирам, шов на границах не читается.
Можно ли снимать на телефон?
Да. Важна не камера, а геометрия обхода: перекрытие соседних кадров, ровный свет, отсутствие смаза. Просим два-три круговых прохода и один сверху — этого хватает, чтобы на стыках не было дыр, а геометрия объектов не «плыла».
Что делать, если сцена изменилась?
Пересобираем только изменившийся участок, а не всю сцену: остальное берётся из предыдущего набора данных. Замена выкладки или перестановка оборудования — это несколько часов и один короткий досъём, а не проект заново.
Кому принадлежат права на сцену?
Вам. Передаём исходные материалы съёмки, промежуточные данные и итоговый набор файлов, а в договоре фиксируем, что мы не используем их в своих целях. Если объект режимный, лишнее вырезаем до сборки — на согласовании убрать проще, чем объяснять потом.
Как сцена работает на слабых устройствах?
Режем не сцену, а поток: подгружаем уровни детализации по мере приближения камеры, отдаём материалы частями, ограничиваем число источников света. На ноутбуке и планшете открывается без просадок, полная детализация включается, когда устройство её тянет.
Обсудим вашу сцену и вернёмся с оценкой
Для старта разбора не нужна готовая сцена на 3D Gaussian Splatting — достаточно материалов, которые уже есть по объекту. Чем полнее исходные данные, тем точнее оценка проекта: по ним видно реальный объём работ, а не приблизительный.
- Съёмка: фотографии или видео обхода объекта с разных ракурсов. Плотное перекрытие кадров уменьшает число слепых зон, которые потом приходится доснимать.
- Геометрия: обмеры, планировки или существующая 3D-модель — сверяем масштаб и пропорции будущей сцены.
- Интерактив: что пользователь должен уметь — вращать сцену, приближаться к деталям, переключать зоны, открывать карточки объектов.
- Каналы показа: браузер на компьютере, планшет на площадке или встроенная панель — от этого зависит вес сцены и требования к отрисовке на слабых устройствах.
- Ориентиры и ограничения: примеры, которые нравятся, и то, что показывать нельзя — закрытые зоны, неудачные ракурсы, чужие логотипы.
- Доступ и график: когда возможна съёмка, есть ли ограничения по времени, освещению и перемещению внутри объекта.
По этому набору мы собираем план работ: этапы, зоны ответственности, точки согласования. Состав команды подбираем под объект — инженер съёмки, 3D-художник, разработчик отрисовки, интегратор. Оценку и сроки внедрения даём по этапам, а не одной цифрой: так видно, что именно влияет на длительность.
Опишите задачу и пришлите материалы — обсудим и вернёмся с оценкой и планом работ.







