Gaussian Splatting
Explora el Gaussian Splatting para la reconstrucción fotorrealista de escenas 3D. Aprende cómo permite el renderizado en tiempo real y se integra con Ultralytics YOLO26 para la visión artificial.
Gaussian Splatting es una técnica de rasterización moderna utilizada en infografía y computer vision para reconstruir escenas 3D fotorrealistas a partir de un conjunto de imágenes 2D. A diferencia del modelado 3D tradicional que se basa en mallas poligonales, o de los avances recientes en IA como Neural Radiance Fields (NeRF) que emplean redes neuronales para aproximar una escena, Gaussian Splatting representa una escena como una colección de millones de distribuciones gaussianas 3D (elipsoides). Este método permite un renderizado en tiempo real a altas tasas de fotogramas (a menudo superando los 100 FPS) manteniendo una fidelidad visual excepcional, lo que resuelve un cuello de botella de rendimiento importante presente en métodos anteriores de síntesis de vistas.
Cómo funciona Gaussian Splatting#
La idea central gira en torno a representar el espacio 3D de forma explícita en lugar de implícita. En un flujo de trabajo típico, el proceso comienza con una point cloud dispersa generada a partir de un conjunto de fotos mediante una técnica llamada Structure from Motion (SfM). Cada punto de esta nube se inicializa posteriormente como una gaussiana 3D.
Durante el training process, el sistema optimiza varios parámetros para cada gaussiana:
- Posición: Las coordenadas 3D (X, Y, Z) en la escena.
- Covarianza: Esto determina la forma y rotación del elipsoide (por ejemplo, qué tan estirado o inclinado está el "splat").
- Opacidad: Qué tan transparente o sólido parece el Gaussiano (valor alfa).
- Color: Se representa utilizando Spherical Harmonics, lo que permite que el color cambie según el ángulo de visión y capte reflejos realistas y efectos de iluminación.
El término "splatting" se refiere al proceso de rasterization en el que estas gaussianas 3D se proyectan —o "se propagan"— sobre el plano de la cámara 2D para formar una imagen. Esta proyección es totalmente diferenciable, lo que significa que se pueden utilizar algoritmos estándar de gradient descent para minimizar la diferencia entre la imagen renderizada y la foto real de referencia (ground truth).
Gaussian Splatting frente a NeRF#
Aunque ambas técnicas pretenden generar vistas novedosas de una escena, difieren fundamentalmente en su arquitectura y rendimiento. NeRF (Neural Radiance Fields) codifica una escena dentro de los pesos de una neural network. Renderizar un NeRF requiere consultar esta red millones de veces para cada fotograma individual (ray marching), lo cual resulta costoso desde el punto de vista computacional y lento.
En contraste, Gaussian Splatting utiliza una representación explícita (la lista de gaussianas). Esto le permite emplear una rasterización eficiente basada en teselas (tile-based), de manera similar a cómo los videojuegos renderizan gráficos. En consecuencia, Gaussian Splatting es significativamente más rápido de entrenar y renderizar que los NeRF, lo que lo hace más viable para aplicaciones de consumo y real-time inference.
Aplicaciones en el mundo real#
La velocidad y calidad de Gaussian Splatting han abierto nuevas puertas en diversas industrias:
- Turismo virtual y sector inmobiliario: Los creadores pueden capturar un museo, un sitio histórico o una casa en venta utilizando un dron o un smartphone. Gaussian Splatting permite a los usuarios remotos explorar estos espacios en Virtual Reality (VR) con 6 grados de libertad (6DoF), viendo detalles finos como los reflejos en suelos de madera que la fotogrametría tradicional podría pasar por alto.
- Simulación automotriz: Las empresas que desarrollan autonomous vehicles necesitan grandes cantidades de datos para probar sus algoritmos de percepción. Gaussian Splatting puede reconstruir manzanas urbanas del mundo real a partir de datos de sensores, creando un entorno de simulación fotorrealista. Dentro de estos entornos, modelos de visión como Ultralytics YOLO26 se pueden probar para garantizar que identifican correctamente los peligros en escenarios 3D complejos.
Preprocesamiento para Splatting con Visión Artificial#
Para que Gaussian Splatting funcione de manera eficaz, las imágenes de entrenamiento suelen tener que ser estáticas. Los objetos en movimiento (como peatones o coches) en las fotos de origen pueden provocar artefactos llamados "floaters" (flotadores). Los pipelines avanzados utilizan la instance segmentation para enmascarar automáticamente estos elementos dinámicos antes de entrenar el modelo de splat.
La Ultralytics Platform permite a los equipos gestionar conjuntos de datos y entrenar modelos que pueden ayudar en esta fase de preprocesamiento. Así es como se podría utilizar un modelo de segmentación para crear máscaras destinadas a un conjunto de datos para la reconstrucción 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")Significado en la IA y Tendencias Futuras#
Gaussian Splatting representa un cambio en la computer vision hacia métodos híbridos que combinan la capacidad de aprendizaje del Deep Learning con la eficiencia de la infografía clásica. Esta técnica evoluciona con rapidez; los investigadores exploran formas de comprimir los tamaños de los archivos (que pueden ser grandes) e integrarla con la generative AI para crear recursos 3D a partir de peticiones de texto. A medida que los aceleradores de hardware como las GPUs continúan mejorando, es probable que Gaussian Splatting se convierta en el estándar para capturar y renderizar el mundo real en formato digital.






