Gaussian Splatting
Изучи Gaussian Splatting для фотореалистичной реконструкции трехмерных сцен. Узнай, как этот метод обеспечивает рендеринг в реальном времени и интегрируется с Ultralytics YOLO26 для задач компьютерного зрения.
Гауссово сплаттингование — это современная техника растеризации, используемая в компьютерной графике и компьютерном зрении для реконструкции фотореалистичных 3D-сцен по набору 2D-изображений. В отличие от традиционного 3D-моделирования, основанного на полигональных сетках, или последних достижений ИИ, таких как нейронные поля излучения (NeRF), в которых для аппроксимации сцены используются нейронные сети, гауссово сплаттингование представляет сцену как совокупность миллионов 3D-гауссовых распределений (эллипсоидов). Этот метод обеспечивает рендеринг в реальном времени с высокой частотой кадров (часто более 100 FPS), сохраняя исключительную визуальную точность и устраняя серьёзное узкое место производительности, характерное для предыдущих методов синтеза новых ракурсов.
Как работает гауссово сплаттингование#
Основная идея заключается в явном, а не неявном представлении 3D-пространства. В типичном рабочем процессе всё начинается с разреженного облака точек, созданного по набору фотографий с помощью техники, называемой структурой по движению (SfM). Затем каждая точка этого облака инициализируется как 3D-гауссиана.
В ходе процесса обучения система оптимизирует несколько параметров для каждой гауссианы:
- Положение: 3D-координаты (X, Y, Z) в сцене.
- Ковариация: определяет форму и поворот эллипсоида (например, степень растяжения или наклона «сплата»).
- Непрозрачность: степень прозрачности или плотности гауссианы (значение альфа-канала).
- Цвет: представляется с использованием сферических гармоник, благодаря чему цвет может изменяться в зависимости от угла обзора, что позволяет передавать реалистичные отражения и эффекты освещения.
Термин «сплаттинг» обозначает процесс растеризации, в ходе которого эти 3D-гауссианы проецируются — или «сплатятся» — на плоскость 2D-камеры для формирования изображения. Эта проекция полностью дифференцируема, то есть для минимизации различия между визуализированным изображением и исходной эталонной фотографией можно использовать стандартные алгоритмы градиентного спуска.
Гауссово сплаттингование и NeRF#
Хотя обе техники предназначены для создания новых ракурсов сцены, они принципиально различаются по архитектуре и производительности. NeRF (нейронные поля излучения) кодирует сцену в весах нейронной сети. Для рендеринга NeRF требуется миллионы раз обращаться к этой сети для каждого отдельного кадра (маршевой трассировки лучей), что требует больших вычислительных ресурсов и работает медленно.
В отличие от этого, гауссово сплаттингование использует явное представление (список гауссиан). Это позволяет применять эффективную растеризацию на основе тайлов, аналогичную той, что используется в видеоиграх для рендеринга графики. Поэтому гауссово сплаттингование значительно быстрее обучается и выполняет рендеринг, чем NeRF, что делает его более пригодным для потребительских приложений и вывода в реальном времени.
Практические применения#
Скорость и качество гауссова сплаттингования открыли новые возможности в различных отраслях:
- Виртуальный туризм и недвижимость: создатели могут снимать музей, историческое место или дом на продажу с помощью дрона или смартфона. Гауссово сплаттингование позволяет удалённым пользователям исследовать эти пространства в виртуальной реальности (VR) с 6 степенями свободы (6DoF), видя мельчайшие детали, например отражения на деревянных полах, которые традиционная фотограмметрия может не заметить.
- Автомобильное моделирование: компаниям, разрабатывающим автономные транспортные средства, нужны огромные объёмы данных для тестирования алгоритмов восприятия. Гауссово сплаттингование может реконструировать реальные городские кварталы по данным датчиков, создавая фотореалистичную среду моделирования. В этих средах модели компьютерного зрения, такие как Ultralytics YOLO26, можно тестировать, чтобы убедиться, что они правильно обнаруживают опасности в сложных 3D-сценариях.
Предварительная обработка для сплаттингования с помощью компьютерного зрения#
Чтобы гауссово сплаттингование работало эффективно, обучающие изображения обычно должны быть статичными. Движущиеся объекты (например, пешеходы или автомобили) на исходных фотографиях могут вызывать артефакты, называемые «плавающими объектами». В передовых конвейерах сегментация экземпляров используется для автоматического маскирования этих динамических элементов перед обучением модели сплаттинга.
Ultralytics Platform позволяет командам управлять наборами данных и обучать модели, которые могут помочь на этом этапе предварительной обработки. Вот как можно использовать модель сегментации для создания масок набора данных, предназначенного для 3D-реконструкции:
from ultralytics import YOLO
# Load the YOLO26 segmentation model
model = YOLO("yolo26n-seg.pt")
# Run inference on an image from the scan dataset
# Class 0 is 'person' in COCO - we mask them out to keep the scene static
results = model.predict("scan_frame_001.jpg", classes=[0])
# Save the generated mask to exclude the person from the 3D reconstruction
for result in results:
result.save_masks("scan_frame_001_mask.png")Значение для ИИ и будущие тенденции#
Гауссово сплаттингование отражает переход в области компьютерного зрения к гибридным методам, которые объединяют способность к обучению глубокого обучения с эффективностью классической компьютерной графики. Эта техника быстро развивается: исследователи изучают способы сжатия размеров файлов (которые могут быть большими) и её интеграции с генеративным ИИ для создания 3D-ресурсов по текстовым запросам. По мере дальнейшего совершенствования аппаратных ускорителей, таких как GPUs, гауссово сплаттингование, вероятно, станет стандартом для захвата и рендеринга реального мира в цифровой форме.









