Intel publica Open Image Denoise 2.0 Image Denoise Library

Intel ha publicado el lanzamiento del proyecto oidn 2.0 (Open Image Denoise), que desarrolla una colección de filtros para eliminar el ruido de las imágenes preparadas con sistemas de renderizado de trazado de rayos. Open Image Denoise se está desarrollando como parte de un proyecto más grande de oneAPI Rendering Toolkit destinado a desarrollar herramientas de visualización de software científico (SDVis (Software Defined Visualization)), incluida la biblioteca de trazado de rayos Embree, el sistema de renderizado fotorrealista GLuRay, la plataforma de trazado de rayos distribuidos OSPRay y el sistema de rasterización de software OpenSWR. El código está escrito en C++ y publicado bajo la licencia Apache 2.0.

El objetivo del proyecto es proporcionar funciones de eliminación de ruido de alta calidad, eficientes y fáciles de usar que se puedan aplicar para mejorar la calidad de los resultados del trazado de rayos. Los filtros propuestos permiten, basándose en el resultado de un ciclo de trazado de rayos más corto, obtener un nivel de calidad final comparable al resultado de un proceso de renderizado detallado más costoso y lento.

Open Image Denoise filtra el ruido aleatorio, como el trazado de rayos de integración numérica de Monte Carlo (MCRT). Para lograr una representación de alta calidad en dichos algoritmos, se requiere el seguimiento de una gran cantidad de rayos; de lo contrario, en la imagen resultante aparecen artefactos notables en forma de ruido aleatorio.

El uso de Open Image Denoise le permite reducir la cantidad de cálculos necesarios en varios órdenes de magnitud al calcular cada píxel. Como resultado, es posible generar una imagen ruidosa inicialmente mucho más rápido, pero luego llevarla a una calidad aceptable utilizando algoritmos de reducción de ruido rápidos. Con el equipo adecuado, las herramientas propuestas pueden incluso usarse para el trazado de rayos interactivo con eliminación de ruido sobre la marcha.

La biblioteca se puede usar en varias clases de dispositivos, desde computadoras portátiles y PC hasta nodos en clústeres. La implementación está optimizada para varias clases de CPU Intel de 64 bits con soporte para instrucciones SSE4, AVX2, AVX-512 y XMX (Xe Matrix Extensions), chips Apple Silicon y sistemas con GPU Intel Xe (series Arc, Flex y Max), NVIDIA (basada en las arquitecturas Volta, Turing, Ampere, Ada Lovelace y Hopper) y AMD (basada en las arquitecturas RDNA2 (Navi 21) y RDNA3 (Navi 3x)). El soporte para SSE4.1 se declara como un requisito mínimo.

Intel publica Open Image Denoise 2.0 Image Denoise Library
Intel publica Open Image Denoise 2.0 Image Denoise Library

Cambios clave en el lanzamiento de Open Image Denoise 2.0:

  • Compatibilidad para acelerar las operaciones de reducción de ruido mediante la GPU. Compatibilidad implementada para la descarga de GPU con sistemas SYCL, CUDA y HIP que se pueden usar con GPU basadas en la arquitectura Intel Xe, AMD RDNA2, AMD RDNA3, NVIDIA Volta, NVIDIA Turing, NVIDIA Ampere, NVIDIA Ada Lovelace y NVIDIA Hopper.
  • Se agregó una nueva API de administración de búfer, que le permite seleccionar el tipo de almacenamiento, copiar datos del host e importar búferes externos desde API de gráficos como Vulkan y Direct3D 12.
  • Se agregó soporte para el modo de ejecución asíncrono (funciones oidnExecuteFilterAsync y oidnSyncDevice).
  • Se agregó una API para enviar solicitudes a dispositivos físicos presentes en el sistema.
  • Se agregó la función oidnNewDeviceByID para crear un nuevo dispositivo basado en la identificación del dispositivo físico, como UUID o dirección PCI.
  • Funciones añadidas para la portabilidad con SYCL, CUDA y HIP.
  • Se agregaron nuevas opciones de escaneo de dispositivos (systemMemorySupported, ManagedMemorySupported, externalMemoryTypes).
  • Se agregó un parámetro para establecer el nivel de calidad de los filtros.

Fuente: opennet.ru

Añadir un comentario