Modelos y plataformas de IA

Paint3D: Una Introducción a la Generación de Imágenes utilizando Modelos de Difusión sin Iluminación

mm
Añade Unite.AI a tus fuentes preferidas en Google

El advenimiento de modelos generativos de inteligencia artificial ha acelerado significativamente el desarrollo de la IA con capacidades notables en la generación de lenguaje natural, generación de 3D, generación de imágenes y síntesis de voz. Los modelos generativos de 3D han transformado numerosas industrias y aplicaciones, revolucionando el paisaje actual de la producción de 3D. Sin embargo, muchos modelos generativos actuales encuentran un obstáculo común: la compleja conexión y las mallas generadas con texturas de iluminación a menudo son incompatibles con las tuberías de renderizado tradicionales como PBR (Renderizado Basado en Física). Los modelos basados en difusión, que generan activos de 3D sin texturas de iluminación, poseen capacidades notables para la generación de activos de 3D diversos, lo que aumenta los marcos de 3D existentes en industrias como la cinematografía, los juegos y la realidad aumentada/virtual.

En este artículo, discutiremos Paint3D, un marco de trabajo novel de tipo coarse-to-fine capaz de producir mapas de textura de 2K UV de alta resolución y diversidad para mallas de 3D sin textura, condicionadas en entradas visuales o textuales. El desafío clave que Paint3D aborda es generar texturas de alta calidad sin incorporar información de iluminación, lo que permite a los usuarios reeditar o reluzir dentro de las tuberías de gráficos modernas. Para abordar este problema, el marco de trabajo Paint3D emplea un modelo de difusión de 2D preentrenado para realizar la fusión de texturas multi-vista y generar imágenes condicionales, inicialmente produciendo un mapa de textura grueso. Sin embargo, como los modelos de 2D no pueden deshabilitar completamente los efectos de iluminación ni representar completamente las formas de 3D, el mapa de textura puede exhibir artefactos de iluminación y áreas incompletas.

En este artículo, exploraremos el marco de trabajo Paint3D en profundidad, examinando su funcionamiento y arquitectura, y comparándolo con los marcos generativos de estado del arte. Así que comencemos.

Paint3D: Una Introducción

Los modelos de inteligencia artificial generativa han demostrado capacidades notables en la generación de lenguaje natural, generación de 3D y síntesis de imágenes, y han sido implementados en aplicaciones de la vida real, revolucionando la industria de la generación de 3D. Sin embargo, a pesar de sus capacidades notables, los marcos de trabajo de inteligencia artificial generativa modernos a menudo producen mallas con conexiones complejas y texturas de iluminación caóticas que son incompatibles con las tuberías de renderizado convencionales, incluyendo el Renderizado Basado en Física (PBR). De manera similar, la síntesis de texturas ha avanzado rápidamente, especialmente con el uso de modelos de difusión de 2D. Estos modelos utilizan efectivamente modelos de difusión de profundidad a imagen preentrenados y condiciones de texto para generar texturas de alta calidad. Sin embargo, un desafío significativo permanece: las texturas preiluminadas pueden afectar adversamente las representaciones finales de renderizado de entornos de 3D, introduciendo errores de iluminación cuando las luces se ajustan dentro de flujos de trabajo comunes, como se demuestra en la siguiente imagen.

Como se observa, los mapas de textura sin preiluminación funcionan sin problemas con las tuberías de renderizado tradicionales, entregando resultados precisos. En contraste, los mapas de textura con preiluminación incluyen sombras inapropiadas cuando se aplica la reluzir. Los marcos de trabajo de generación de texturas entrenados en datos de 3D ofrecen un enfoque alternativo, generando texturas al comprender la geometría completa de un objeto de 3D específico. Aunque estos marcos de trabajo pueden entregar mejores resultados, carecen de las capacidades de generalización necesarias para aplicar el modelo a objetos de 3D fuera de sus datos de entrenamiento.

Los modelos actuales de generación de texturas enfrentan dos desafíos críticos: lograr una amplia generalización en diferentes objetos utilizando orientación de imágenes o prompts diversos, y eliminar la iluminación acoplada de los resultados de preentrenamiento. Las texturas preiluminadas pueden interferir con los resultados finales de los objetos texturizados dentro de los motores de renderizado. Además, como los modelos de difusión de 2D preentrenados solo proporcionan resultados de 2D en el dominio de la vista, carecen de una comprensión integral de las formas, lo que lleva a inconsistencias en el mantenimiento de la coherencia de la vista para los objetos de 3D.

Para abordar estos desafíos, el marco de trabajo Paint3D desarrolla un modelo de difusión de doble etapa para objetos de 3D que generaliza en diferentes modelos generativos preentrenados y preserva la coherencia de la vista al generar texturas sin iluminación.

Paint3D es un modelo de generación de texturas de doble etapa, coarse-to-fine, que aprovecha la sólida orientación de prompts y las capacidades de generación de imágenes de los modelos de inteligencia artificial generativa preentrenados para texturizar objetos de 3D. En la primera etapa, Paint3D muestrea imágenes multi-vista de un modelo de difusión de imagen de 2D preentrenado de manera progresiva, lo que permite la generalización de resultados de texturas de alta calidad y ricas desde prompts diversos. El modelo luego genera un mapa de textura inicial proyectando estas imágenes en la superficie de la malla de 3D. En la segunda etapa, el modelo se enfoca en generar texturas sin iluminación implementando enfoques empleados por modelos de difusión especializados en eliminar influencias de iluminación y refinar regiones incompletas conscientes de la forma. A lo largo del proceso, el marco de trabajo Paint3D genera consistentemente mapas de textura de alta calidad semánticamente, eliminando efectos de iluminación intrínsecos.

En resumen, Paint3D es un modelo de inteligencia artificial generativa novel, de tipo coarse-to-fine, diseñado para producir mapas de textura de 2K UV de alta resolución, diversidad y sin iluminación para mallas de 3D sin textura. Tiene como objetivo lograr un desempeño de estado del arte en la texturización de objetos de 3D con diferentes entradas condicionales, incluyendo texto e imágenes, ofreciendo ventajas significativas para tareas de síntesis y edición de gráficos.

Metodología y Arquitectura

El marco de trabajo Paint3D genera y refina mapas de textura de manera progresiva para producir texturas diversas y de alta calidad para modelos de 3D utilizando entradas condicionales como imágenes y prompts, como se demuestra en la siguiente imagen.

Etapa 1: Generación de Textura Gruesa Progresiva

En la etapa inicial de generación de textura gruesa, Paint3D emplea modelos de difusión de imagen de 2D preentrenados para muestrear imágenes multi-vista, que luego se proyectan en la superficie de la malla para crear los mapas de textura iniciales. Esta etapa comienza con la generación de un mapa de profundidad desde varias vistas de cámara. El modelo utiliza condiciones de profundidad para muestrear imágenes del modelo de difusión, que luego se proyectan en la superficie de la malla de 3D. Este enfoque de renderizado alterno, muestreo y proyección mejora la coherencia de las mallas de textura y ayuda a generar progresivamente el mapa de textura.

El proceso comienza con las regiones visibles de la malla de 3D, enfocándose en generar textura desde la primera vista de cámara al renderizar la malla de 3D en un mapa de profundidad. Luego, se muestrea una imagen de textura basada en la apariencia y las condiciones de profundidad, y se proyecta en la malla. Este método se repite para vistas de cámara posteriores, incorporando texturas anteriores para renderizar no solo una imagen de profundidad, sino también una imagen RGB parcialmente coloreada con máscaras no coloreadas. El modelo utiliza un codificador de inpainting de imagen consciente de la profundidad para rellenar áreas no coloreadas, generando un mapa de textura grueso completo al proyectar imágenes inpintadas en la malla de 3D.

Para escenas o objetos más complejos, el modelo utiliza múltiples vistas. Inicialmente, captura dos mapas de profundidad desde vistas simétricas y los combina en una cuadrícula de profundidad, que reemplaza a una sola imagen de profundidad para el muestreo de textura consciente de la profundidad multi-vista.

Etapa 2: Refinamiento de Textura en Espacio UV

A pesar de generar mapas de textura gruesos lógicos, surgen desafíos como agujeros de textura del proceso de renderizado y sombras de iluminación de los modelos de difusión de 2D. Para abordar estos, Paint3D realiza un proceso de difusión en el espacio UV basado en el mapa de textura grueso, mejorando el atractivo visual y resolviendo problemas.

Sin embargo, refinar el mapa de textura en el espacio UV puede introducir discontinuidades debido a la fragmentación de texturas continuas en fragmentos individuales. Para mitigar esto, Paint3D refina el mapa de textura utilizando la información de adyacencia de los fragmentos de textura. En el espacio UV, el mapa de posición representa la información de adyacencia de 3D de los fragmentos de textura, tratando cada elemento no de fondo como una coordenada de punto de 3D. El modelo utiliza un codificador de mapa de posición adicional, similar a ControlNet, para integrar esta información de adyacencia durante el proceso de difusión.

El modelo utiliza simultáneamente la posición del codificador condicional y otros codificadores para realizar tareas de refinamiento en el espacio UV, ofreciendo dos capacidades: UVHD (UV Alta Definición) y inpainting UV. UVHD mejora el atractivo visual y la estética, utilizando un codificador de mejora de imagen y un codificador de posición con el modelo de difusión. El inpainting UV rellena agujeros de textura, evitando problemas de auto-ocultación del renderizado. La etapa de refinamiento comienza con el inpainting UV, seguido de UVHD para producir un mapa de textura refinado final.

Al integrar estos métodos de refinamiento, el marco de trabajo Paint3D genera mapas de textura de 2K UV completos, diversos, de alta resolución y sin iluminación, lo que lo convierte en una solución robusta para la texturización de objetos de 3D.

Paint3D: Experimentos y Resultados

El modelo Paint3D utiliza el modelo de texto a imagen de Stable Diffusion para ayudar en tareas de generación de texturas, mientras que el componente del codificador de imagen maneja las condiciones de imagen. Para mejorar su control sobre tareas condicionales como el inpainting de imágenes, el manejo de profundidad y la generación de imágenes de alta definición, el marco de trabajo Paint3D emplea codificadores de dominio de ControlNet. El modelo se implementa en el marco de PyTorch, con el renderizado y las proyecciones de textura ejecutados en Kaolin.

Comparación de Texturas con Texto

Para evaluar el desempeño de Paint3D, comenzamos analizando su generación de texturas cuando se condiciona con prompts textuales, comparándolo con marcos de trabajo de estado del arte como Text2Tex, TEXTure y LatentPaint. Como se muestra en la siguiente imagen, el marco de trabajo Paint3D no solo sobresale en la generación de detalles de textura de alta calidad, sino que también sintetiza efectivamente un mapa de textura sin iluminación.

Al aprovechar las capacidades robustas de Stable Diffusion y los codificadores de ControlNet, Paint3D proporciona una calidad de textura superior y versatilidad. La comparación resalta la capacidad de Paint3D para producir texturas detalladas y de alta resolución sin iluminación incorporada, lo que lo convierte en una solución líder para tareas de texturización de 3D.

En comparación, el marco de trabajo Latent-Paint es propenso a generar texturas borrosas que resultan en efectos visuales subóptimos. Por otro lado, aunque el marco de trabajo TEXTure genera texturas claras, carece de suavidad y exhibe costuras y juntas notables. Finalmente, el marco de trabajo Text2Tex genera texturas suaves de manera notable, pero falla en replicar el desempeño para generar texturas finas con detalles intrincados. La siguiente imagen compara el marco de trabajo Paint3D con marcos de trabajo de estado del arte de manera cuantitativa.

Como se puede observar, el marco de trabajo Paint3D supera a todos los modelos existentes, y por un margen significativo con una mejora del 30% en la línea de base FID y aproximadamente un 40% de mejora en la línea de base KID. La mejora en las puntuaciones de la línea de base FID y KID demuestra la capacidad de Paint3D para generar texturas de alta calidad en objetos y categorías diversos.

Comparación de Imagen a Textura

Para generar las capacidades generativas de Paint3D utilizando prompts visuales, utilizamos el modelo TEXTure como la línea de base. Como se mencionó anteriormente, el modelo Paint3D emplea un codificador de imagen obtenido del modelo de texto a imagen de Stable Diffusion. Como se puede ver en la siguiente imagen, el marco de trabajo Paint3D sintetiza texturas exquisitas de manera notable, y aún puede mantener una alta fidelidad con respecto a la condición de imagen.

Por otro lado, el marco de trabajo TEXTure es capaz de generar una textura similar a Paint3D, pero no logra representar los detalles de textura en la condición de imagen de manera precisa. Además, como se demuestra en la siguiente imagen, el marco de trabajo Paint3D entrega mejores puntuaciones de línea de base FID y KID en comparación con el marco de trabajo TEXTure, con la primera disminuyendo de 40.83 a 26.86, mientras que la segunda muestra una disminución de 9.76 a 4.94.

Pensamientos Finales

En este artículo, hemos hablado sobre Paint3D, un marco de trabajo novel de tipo coarse-to-fine capaz de producir mapas de textura de 2K UV de alta resolución, diversidad y sin iluminación para mallas de 3D sin textura, condicionadas en entradas visuales o textuales. El aspecto destacado del marco de trabajo Paint3D es que es capaz de generar texturas de alta resolución sin iluminación que son consistentes semánticamente sin estar condicionadas en entradas de imagen o texto. Gracias a su enfoque de coarse-to-fine, el marco de trabajo Paint3D produce mapas de textura sin iluminación, diversos y de alta resolución, y entrega un mejor desempeño que los marcos de trabajo de estado del arte actuales.

Un ingeniero por profesión, un escritor por corazón. Kunal es un escritor técnico con un profundo amor y comprensión de la IA y el ML, dedicado a simplificar conceptos complejos en estos campos a través de su documentación atractiva e informativa.