Gaussian Splatting, nueva técnica de renderización 3D

Twitter - Many Worlds Linkedin - Many Worlds Facebook - Many Worlds Instagram - Many Worlds
  1. La importancia del Gaussian Splatting para el renderizado 3D
    1. Modelación 3D, renderización y Gaussian Splatting
    2. En qué consiste el Gaussian Splatting
    3. Ventajas del Gaussian Splatting

El Gaussian Splatting, que se podría traducir como “salpicaduras gaussianas” (veremos más adelante el porqué de este nombre), es una nueva aproximación a la renderización de contenidos visuales en 3D que mejora notablemente este proceso.

Es una técnica muy reciente, que apenas lleva unos meses aplicándose, pero que se está convirtiendo en una solución muy válida para quienes trabajamos con tecnologías que beben del modelado 3D, como son la realidad virtual y la realidad aumentada. Y lo es no solo por lo que ya puede hacer, sino también por las posibilidades que plantea.

El renderizado con Gaussian Splatting facilita este proceso tan importante en la generación de escenas en 3D, ya que ofrece resultados de mucha calidad de una forma muy eficiente.

La importancia del Gaussian Splatting para el renderizado 3D

Para entender por qué esta técnica de renderizado 3D supone una ayuda de tanto peso en el sector y saber qué problemas resuelve, antes que nada, intentaremos explicar algunos conceptos para entender qué es el Gaussian Splatting.

Modelación 3D, renderización y Gaussian Splatting

Empezamos por lo más básico: la generación de contenidos 3D.

Igual que existen varias formas de utilizar la recreación de entornos virtuales en diversas aplicaciones, también existen distintas maneras de crearlos. Una técnica ya clásica es la fotogrametría, que sirve para generar polígonos 3D a partir de imágenes tomadas desde diferentes vistas; uno de sus inconvenientes es que es muy útil para recrear objetos delimitados, pero no escenas sin contornos, como por ejemplo un reflejo.

Un método para generar escenas 3D a partir de imágenes 2D que sí tiene un alto nivel de detalle es la tecnología de “Campos de Radiancia Neuronal”, más conocidos por su nombre anglosajón: Neural Radiance Fields (NeRF). Se trata de una técnica de aprendizaje profundo (deep learning) capaz de generar escenas en 3D complejas a partir de conjuntos de imágenes 2D (dibujos, fotografías, vídeos). Esta red se entrena para cubrir las pérdidas que se puedan producir entre las distintas vistas durante el proceso de generación de la nueva escena en 3D (lo que se conoce como renderización). Pese a que cada vez hay algoritmos de NeRF más eficientes, en general esta red hace un uso computacional muy intensivo y los procesos de renderización pueden ser muy largos.

Pero ¿qué es la renderización?

El término “renderización” se utiliza habitualmente cuando hablamos del tratamiento digital de un producto audiovisual. En edición de vídeo, por ejemplo, se refiere al último paso del proceso, cuando los diferentes elementos gráficos, después de combinarse de distintas maneras, se convierten en un nuevo producto gráfico digital. En términos muy básicos, sería como la versión final.

La renderización 3D se refiere a la generación de imágenes tridimensionales y puede ser de distintos tipos. El que nos interesa para explicar la renderización por Gaussian Splatting es el renderizado por rasterización, que es muy utilizado a la hora de generar gráficos diseñados por ordenador.

Se trata de una renderización 3D en tiempo real por rasterización, que es un proceso por el cual se convierte una descripción vectorial en un conjunto de píxeles o puntos. Y es aquí donde se produce la innovación del Gaussian Splatting, ya que en este tipo de renderización el espacio se convierte en un conjunto de puntos gaussianos -de ahí lo de la “salpicadura gaussiana”.

En qué consiste el Gaussian Splatting

Aquí tenemos que hacer referencia al matemático Carl Friedich Gauss, puesto que el renderizado con Gaussian Splatting se basa en sus teorías. En concreto, nos interesa el concepto de distribución gaussiana o distribución normal.

Este es un concepto que se utiliza en estadística y análisis de datos, y se refiere a una distribución de probabilidad que, citando a QuestionPro, “describe cómo se distribuyen los datos alrededor de un valor promedio”. En la práctica, se expresa a través de la función gaussiana y sirve para modelar todo tipo de fenómenos naturales y artificiales, inferir datos o realizar simulaciones y predicciones.

En el Gaussian Splatting, a partir de una estimación calculada con un set de imágenes 2D, se genera una nube de puntos en 3D que se convierten en gaussianos y a los que se aplican determinados parámetros relacionados con la posición, color, covarianza y Alpha (transparencia). Estos parámetros se calculan y aprenden a través de machine learning.

Otros métodos, como la renderización con NeRF, tienen que entrenar un modelo para que represente la escena con volumen de determinada manera. Se obtienen recreaciones 3D muy realistas y detalladas, pero es un proceso costoso tanto por tiempo como por la cantidad de memoria que se necesita. Sin embargo, en el Gaussian Splatting, mientras que los parámetros que se aplican a los puntos gaussianos sí se entrenan, la renderización no necesita un procesamiento pesado y se realiza en tiempo real, pudiendo hacerse incluso en un navegador web.

Ventajas del Gaussian Splatting

Existen varios intentos de mejorar la eficiencia de los procesos de renderización de NeRF, pero, aunque sí que se han conseguido hacer más rápido, tienden a sacrificar calidad.

Esto no ocurre con el Gaussian Splatting. En este caso tenemos una renderización 3D rápida de alta resolución, algo que no pueden conseguir otros métodos. Asimismo, su coste representa una fracción del coste del modelado 3D.

El Gaussian Splatting representa la escena con gaussianos 3D. Esto significa que se puede crear una representación tridimensional realista y detallada de una escena, manteniendo la precisión volumétrica sin la necesidad de calcular y rellenar los espacios vacíos manualmente.

El renderizado 3D por Gaussian Splatting es una técnica nueva, pero que ya podemos utilizar para poder llevar a cabo nuestros proyectos de una manera más eficiente y con una velocidad mucho mayor que con el modelado 3D tradicional, contando con un nivel de realismo total.

En Many·Worlds lo estamos usando satisfactoriamente con el fin de añadir funcionalidades de realidad aumentada en tiendas online, para que permita a los usuarios previsualizar los productos en su entorno real antes de comprarlos.

Si quieres saber cómo puedes aplicar esta tecnología en tu negocio o proyecto, solo tienes que ponerte en contacto con nosotros.

DESCARGA NUESTRO INFORME SOBRE LA SITUACIÓN DE LA RA/RV EN LA INDUSTRIA 4.0


Portada de la industria

Otros artículos relacionados