Gaussian Splatting
Исследуй гауссово сплэттинг (Gaussian Splatting) для фотореалистичной реконструкции 3D-сцен. Узнай, как это обеспечивает рендеринг в реальном времени и интегрируется с Ultralytics YOLO26 для задач зрения.
Gaussian Splatting — это современный метод растеризации, используемый в компьютерной графике и компьютерном зрении для реконструкции фотореалистичных 3D-сцен на основе набора 2D-изображений. В отличие от традиционного 3D-моделирования, опирающегося на полигональные сетки, или недавних достижений ИИ, таких как Neural Radiance Fields (NeRF), где для аппроксимации сцены используются нейронные сети, Gaussian Splatting представляет сцену как совокупность миллионов 3D-распределений Гаусса (эллипсоидов). Этот метод позволяет выполнять рендеринг в реальном времени с высокой частотой кадров (часто превышающей 100 FPS), сохраняя при этом исключительную визуальную точность и устраняя серьезное узкое место в производительности, характерное для предыдущих методов синтеза представлений.
Link to this sectionКак работает Gaussian Splatting#
Основная идея заключается в явном представлении 3D-пространства, а не в неявном. В типичном рабочем процессе все начинается с разреженного облака точек, созданного из набора фотографий с помощью метода Structure from Motion (SfM). Каждая точка в этом облаке затем инициализируется как 3D-гауссиана.
В ходе процесса обучения система оптимизирует несколько параметров для каждой гауссианы:
- Позиция: 3D-координаты (X, Y, Z) в сцене.
- Ковариация: определяет форму и вращение эллипсоида (например, насколько вытянут или наклонен "сплэт").
- Непрозрачность: насколько прозрачной или плотной кажется гауссиана (альфа-значение).
- Цвет: представлен с использованием сферических гармоник, что позволяет цвету меняться в зависимости от угла обзора, передавая реалистичные отражения и эффекты освещения.
Термин "splatting" относится к процессу растеризации, при котором эти 3D-гауссианы проецируются — или «разбрызгиваются» — на 2D-плоскость камеры для формирования изображения. Эта проекция полностью дифференцируема, что означает возможность использования стандартных алгоритмов градиентного спуска для минимизации разницы между отрендеренным изображением и исходным эталонным фото.
Link to this sectionGaussian Splatting против NeRF#
Хотя оба метода нацелены на создание новых ракурсов сцены, они фундаментально различаются по архитектуре и производительности. NeRF (Neural Radiance Fields) кодирует сцену внутри весов нейронной сети. Для рендеринга NeRF требуется миллионы раз опрашивать эту сеть для каждого кадра (трассировка лучей), что вычислительно затратно и медленно.
В отличие от этого, Gaussian Splatting использует явное представление (список гауссиан). Это позволяет применять эффективную тайловую растеризацию, подобную той, что используется в видеоиграх. В результате Gaussian Splatting значительно быстрее обучается и рендерится, чем NeRF, что делает его более пригодным для потребительских приложений и инференса в реальном времени.
Link to this sectionРеальные приложения#
Скорость и качество Gaussian Splatting открыли новые возможности в различных отраслях:
- Виртуальный туризм и недвижимость: создатели могут заснять музей, исторический объект или дом на продажу с помощью дрона или смартфона. Gaussian Splatting позволяет удаленным пользователям исследовать эти пространства в виртуальной реальности (VR) с 6 степенями свободы (6DoF), наблюдая мелкие детали, такие как отражения на паркетном полу, которые традиционная фотограмметрия может упустить.
- Автомобильное моделирование: компании, разрабатывающие автономные транспортные средства, нуждаются в огромных объемах данных для тестирования своих алгоритмов восприятия. Gaussian Splatting может реконструировать реальные городские кварталы на основе сенсорных данных, создавая фотореалистичную среду моделирования. В этой среде можно тестировать модели компьютерного зрения, такие как Ultralytics YOLO26, чтобы убедиться, что они правильно распознают опасности в сложных 3D-сценариях.
Link to this sectionПредварительная обработка для Splatting с помощью компьютерного зрения#
Чтобы Gaussian Splatting работал эффективно, исходные изображения для обучения обычно должны быть статичными. Движущиеся объекты (например, пешеходы или автомобили) на исходных фото могут вызывать артефакты, называемые «флоатерами». Продвинутые пайплайны используют инстанс-сегментацию для автоматического маскирования этих динамических элементов перед обучением модели сплэтов.
Платформа Ultralytics позволяет командам управлять наборами данных и обучать модели, которые могут помочь в этой фазе предварительной обработки. Вот как можно использовать модель сегментации для создания масок для набора данных, предназначенного для 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")Link to this sectionЗначимость в ИИ и будущие тренды#
Gaussian Splatting представляет собой сдвиг в компьютерном зрении в сторону гибридных методов, объединяющих обучаемость глубокого обучения с эффективностью классической компьютерной графики. Эта технология быстро развивается: исследователи ищут способы сжатия размеров файлов (которые могут быть большими) и интеграции с генеративным ИИ для создания 3D-активов на основе текстовых промптов. По мере того как аппаратные ускорители, такие как GPU, продолжают совершенствоваться, Gaussian Splatting, вероятно, станет стандартом для захвата и рендеринга реального мира в цифровой форме.






