NVIDIA’s Neural Texture Compression para la compresión de texturas de materiales
Los investigadores de NVIDIA han desarrollado un algoritmo de compresión novedoso para texturas de materiales.
En un artículo titulado “Compresión neuronal de acceso aleatorio de texturas de materiales”, NVIDIA presenta un nuevo algoritmo para la compresión de texturas. El trabajo se enfoca en los crecientes requisitos de la memoria de la computadora, que ahora almacena texturas de alta resolución, así como muchas propiedades y atributos asociados a ellas para generar materiales de alta fidelidad y aspecto natural.
El NTC es un dicho para ofrecer una resolución 4 veces mayor (16 texels más) que BC (Block Compression), que es una compresión de texturas estándar basada en GPU disponible en muchos formatos. El algoritmo de NVIDIA representa las texturas como tensores (tres dimensiones), pero sin suposiciones como en la compresión de bloques (como el número de canales). Lo único que asume NTC es que cada textura tiene el mismo tamaño.
El acceso aleatorio y local es una característica importante de NTC. Para la compresión de texturas de GPU, es de suma importancia que se pueda acceder a las texturas a un bajo costo sin demora, incluso cuando se aplican altas tasas de compresión. Esta investigación se enfoca en comprimir muchos canales y mipmaps (texturas de diferentes tamaños) juntos y, al hacerlo, la calidad y la tasa de bits son mejores que los formatos JPEG XL o AVIF, afirma el periódico.
Compresión neuronal de acceso aleatorio de texturas de materiales, NVIDIA
El avance continuo del fotorrealismo en el renderizado va acompañado de un crecimiento en los datos de textura y, en consecuencia, un aumento de las demandas de almacenamiento y memoria. Para abordar este problema, proponemos una nueva técnica de compresión neuronal diseñada específicamente para texturas de materiales. Desbloqueamos dos niveles más de detalle, es decir, 16 veces más texels, usando compresión de tasa de bits baja, con una calidad de imagen que es mejor que las técnicas avanzadas de compresión de imágenes, como AVIF y JPEG XL. Al mismo tiempo, nuestro método permite la descompresión en tiempo real bajo demanda con acceso aleatorio similar a la compresión de texturas en bloque en las GPU. Esto amplía nuestros beneficios de compresión desde el almacenamiento en disco hasta la memoria. La idea clave detrás de nuestro enfoque es comprimir varias texturas de material y sus cadenas de mipmap juntas, y usar una pequeña red neuronal, que está optimizada para cada material, para descomprimirlas. Por último, usamos una implementación de entrenamiento personalizada para lograr velocidades de compresión prácticas, cuyo rendimiento supera al de los marcos generales, como PyTorch, en un orden de magnitud.
— Compresión neuronal de acceso aleatorio de texturas de materiales, NVIDIA
A diferencia de los algoritmos BCx comunes, que requieren hardware personalizado, este algoritmo utiliza los métodos de multiplicación de matrices, que ahora son acelerados por las GPU modernas. Según el documento, esto hace que el algoritmo NTC sea más práctico y más capaz debido a las menores limitaciones de disco y memoria.
Compresión neuronal de acceso aleatorio de texturas de materiales, NVIDIA
Según el documento, las texturas neuronales se pueden representar en tiempo real con hasta 16 veces más texel que el enfoque BC. El costo del renderizado 4K es de 1,15 ms, que es superior a 0,49 ms (medido en RTX 4090). Se presentará más información en SIGGRAPH 2023 el 6 de agosto.
Fuente: NVIDIA