Aprendizaje profundo en el Monte Carlo
El aprendizaje profundo ha surgido como el enfoque de vanguardia para el denoising Monte Carlo debido a su capacidad para generar imágenes nítidas y limpias.
Seleccionamos la Red Convolucional de Predicción de Kernel (KPCN, por sus siglas en inglés) propuesta por Bako et al. (2017) y Vogels et al. (2018) para implementar en nuestro estudio, ya que ofrece un rendimiento más robusto que la regresión directa del color de los píxeles. Además, modificamos la arquitectura neuronal incorporando U-Nets con predictores de kernel a nivel de escala, lo que resulta en un diseño más superficial y una inferencia más rápida.
Los buffers de características auxiliares, como el albedo, la profundidad y las normales, desempeñan un papel vital en el denoising basado en redes neuronales. Estas características son menos ruidosas y proporcionan información esencial sobre los colores y las formas de los objetos en la escena.
Sin embargo, seleccionar el conjunto óptimo de características auxiliares es un desafío debido a la alta dimensionalidad del espacio de búsqueda y las correlaciones mutuas entre las características. Para abordar este problema, adaptamos el marco propuesto por Zhang et al. (2022) a nuestras características candidatas, lo que nos permite entrenar un único denoiser de prueba y encontrar progresivamente soluciones cercanas a óptimas.
El conjunto de características seleccionadas se presenta en la Tabla 1. Además, podemos ajustar convenientemente el número de características seleccionadas en función de los requisitos de almacenamiento de producción, ajustando el parámetro de tamaño del algoritmo de selección de características. Por ejemplo, si un programa solo puede acomodar cuatro características auxiliares debido a limitaciones de espacio, podemos reducir la lista en consecuencia.
Función de pérdida: Siguiendo la tradición de KPCN, entrenamos la red neuronal utilizando una función de pérdida de reconstrucción. Específicamente, empleamos el Error Porcentual Absoluto Medio Simétrico (SMAPE, por sus siglas en inglés) para medir la diferencia entre la imagen denoiseada y la imagen de referencia. Además, introducimos una pérdida temporal en las derivadas de píxeles para penalizar las inconsistencias entre fotogramas sucesivos. Estas dos pérdidas se combinan mediante una suma ponderada.
Detalles de entrenamiento: Para el entrenamiento del denoiser, implementamos el marco KPCN utilizando TensorFlow. Los canales de entrada que contienen valores de Alto Rango Dinámico (HDR, por sus siglas en inglés) se someten a un preprocesamiento mediante una transformación de log-modulus para reducir el rango. El denoiser se entrena utilizando descenso de gradiente durante 15.2 millones de pasos, con una disminución de la tasa de aprendizaje a partir de 10^-4. El entrenamiento se realiza en una GPU Tesla V100 instalada en un clúster NVIDIA DGX.
|Agradecer cuando alguien te ayuda es de ser agradecido|