El renderizado en tiempo real para la realidad virtual crea un espectro único de desafíos, siendo los principales la necesidad de admitir efectos fotorrealistas, lograr altas resoluciones y aumentar las frecuencias de actualización. Para abordar estos desafíos, los investigadores de Facebook Reality Labs desarrollaron DeepFocus , un motor de renderizado que presentamos en diciembre de 2018; utiliza IA para crear gráficos ultrarrealistas en dispositivos de distancia focal variable. En la Conferencia Virtual SIGGRAPH de este año , presentamos un desarrollo adicional de este trabajo, abriendo un nuevo hito en nuestro viaje hacia futuras pantallas de alta definición para realidad virtual.
Nuestro artículo técnico para SIGGRAPH titulado Neural Supersampling for Real-Time Rendering proporciona una solución de aprendizaje automático que convierte imágenes de entrada de baja resolución en imágenes de alta resolución para renderizado en tiempo real. Este proceso de muestreo utiliza redes neuronales capacitadas en estadísticas de la escena para recuperar detalles precisos, al tiempo que reduce el costo computacional de representar esos detalles en aplicaciones en tiempo real.
Nuestra solución es una técnica de supermuestreo previamente entrenada que logra un supermuestreo de 16x de contenido para renderizar con alta fidelidad espacial y temporal, superando ampliamente el trabajo anterior.
Animación para comparar la imagen en color de baja resolución renderizada y la imagen de salida de supermuestreo 16x creada por la nueva técnica de supermuestreo neuronal.
¿De que se trata este estudio?
Para reducir el costo de renderizado en pantallas de alta resolución, nuestro método toma una imagen de entrada que tiene 16 veces menos píxeles que la imagen de salida deseada. Por ejemplo, si la pantalla de destino tiene una resolución de 3840 × 2160 , la red comienza con un tamaño de imagen de entrada de 960 × 540 , motores de juego otrendernnogo, y luego realiza su muestreo a la resolución deseada de la pantalla en el posprocesamiento en tiempo real.
Si bien se ha realizado una gran cantidad de investigación sobre el muestreo de imágenes fotográficas basado en el aprendizaje, todo este trabajo no abordó directamente las necesidades únicas del contenido renderizado, como las imágenes producidas por motores de videojuegos. Esto se debe a que existen diferencias fundamentales entre las imágenes renderizadas y las fotográficas. En el renderizado en tiempo real, cada muestra es un punto tanto en el espacio como en el tiempo. Esta es la razón por la que el contenido renderizado tiende a tener una distorsión severa, líneas irregulares y otros artefactos de muestreo que se ven en los ejemplos de imágenes de baja resolución en esta publicación. Debido a esto, el muestreo superior del contenido renderizado se convierte en una tarea tanto de suavizado como de interpolación, en lugar de una tarea de eliminar el ruido y el desenfoque.que está bien estudiado por expertos en visión por computadora. El hecho de que las imágenes entrantes estén muy distorsionadas y que no haya absolutamente ninguna información para la interpolación en los píxeles crea dificultades significativas para construir una reconstrucción muy precisa del contenido renderizado con integridad temporal.
, ( , ), .
Por otro lado, al renderizar en tiempo real, podemos tener varias imágenes en color producidas por la cámara. Como demostramos en DeepFocus, los motores de renderización modernos también proporcionan información auxiliar como valores de profundidad. Notamos que con el supermuestreo neuronal, la información auxiliar adicional proporcionada por los vectores de movimiento era particularmente importante. Los vectores de movimiento definen relaciones geométricas entre píxeles en fotogramas consecutivos. En otras palabras, cada vector de movimiento apunta a una ubicación de subpíxeles en la que un punto de la superficie visible en un cuadro puede haber estado en un cuadro anterior. En el caso de las imágenes fotográficas, estos valores se calculan normalmente mediante métodos de visión por ordenador, pero dichos algoritmos para calcular el movimiento óptico son propensos a errores.Por el contrario, el motor de renderizado puede generar vectores de movimiento densos directamente, proporcionando así una entrada fiable y suficiente para el supermuestreo neuronal aplicado al contenido renderizado.
Nuestro método se basa en las observaciones anteriores, combinando información auxiliar adicional con un nuevo esquema de red neuronal espacio-temporal diseñado para maximizar la calidad de la imagen y el video al tiempo que proporciona un rendimiento en tiempo real.
Al tomar una decisión, nuestra red neuronal recibe como entrada los atributos de renderizado (color, mapa de profundidad y vectores de movimiento denso de cada fotograma) tanto del fotograma actual como de varios fotogramas anteriores, renderizados a baja resolución. La salida de la red es una imagen en color de alta resolución correspondiente al marco actual. La red utiliza aprendizaje supervisado. Durante el entrenamiento, con cada fotograma entrante de baja resolución, se compara una imagen de referencia de alta resolución con técnicas de suavizado, que es la imagen de destino para la optimización del entrenamiento.
Ejemplos de resultados. De arriba a abajo, los datos de color de entrada renderizados se muestran a baja resolución, el resultado del supermuestreo 16 veces realizado por el método propuesto y la imagen de destino de alta resolución, que se renderizó en tiempo no real.
. , 16 , , , .
. , 16 , , , .
?
La representación neuronal tiene un potencial tremendo en AR / VR. Aunque esta tarea es difícil, queremos inspirar a otros investigadores a trabajar en este tema. A medida que los fabricantes de pantallas para AR / VR se esfuerzan por lograr resoluciones más altas, velocidades de cuadro más altas y fotorrealismo, las técnicas de supermuestreo neuronal podrían ser una forma clave de recuperar detalles precisos de los datos de la escena, en lugar de renderizarlos directamente. Este trabajo nos hace comprender que el futuro de la realidad virtual de alta definición radica no solo en las pantallas, sino también en los algoritmos necesarios para manejarlas prácticamente.
Artículo técnico completo: Supermuestreo neuronal para renderizado en tiempo real , Lei Xiao, Salah Nouri, Matt Chapman, Alexander Fix, Douglas Lanman, Anton Kaplanyan, ACM SIGGRAPH 2020.
Ver también: