Intel publica Open Image Denoise 2.0 Image Denoise Library

Intel publicou o lanzamento do proxecto oidn 2.0 (Open Image Denoise), que desenvolve unha colección de filtros para a eliminación de ruído de imaxes preparadas mediante sistemas de renderizado de trazado de raios. Open Image Denoise estase a desenvolver como parte dun proxecto oneAPI Rendering Toolkit máis amplo destinado a desenvolver ferramentas de visualización de software científico (SDVis (Software Defined Visualization)), incluíndo a biblioteca de trazado de raios Embree, o sistema de renderizado fotorrealista GLuRay, a plataforma de trazado de raios distribuído OSPRay. , e o sistema de rasterización de software OpenSWR O código está escrito en C++ e publicado baixo a licenza Apache 2.0.

O obxectivo do proxecto é proporcionar funcións de eliminación de ruído de alta calidade, eficientes e fáciles de usar que se poidan aplicar para mellorar a calidade dos resultados do trazado de raios. Os filtros propostos permiten, baseándose no resultado dun ciclo de trazado de raios acurtado, obter un nivel de calidade final comparable ao resultado dun proceso máis custoso e lento de renderizado detallado.

Open Image Denoise filtra o ruído aleatorio como o trazado de raios de Integración Numérica de Monte Carlo (MCRT). Para conseguir unha representación de alta calidade en tales algoritmos, é necesario o trazado dun número moi grande de raios, se non, na imaxe resultante aparecen artefactos notables en forma de ruído aleatorio.

O uso de Open Image Denoise permítelle reducir o número de cálculos necesarios en varias ordes de magnitude ao calcular cada píxel. Como resultado, é posible xerar unha imaxe inicialmente ruidosa moito máis rápido, pero despois levala a unha calidade aceptable mediante algoritmos de redución de ruído rápidos. Co equipamento axeitado, as ferramentas propostas poden incluso utilizarse para o trazado de raios interactivo con eliminación de ruído sobre a marcha.

A biblioteca pódese usar en varias clases de dispositivos, desde portátiles e PC ata nodos en clústeres. A implementación está optimizada para varias clases de CPU Intel de 64 bits con soporte para instrucións SSE4, AVX2, AVX-512 e XMX (Xe Matrix Extensions), chips Apple Silicon e sistemas con GPU Intel Xe (series Arc, Flex e Max). NVIDIA (baseado en arquitecturas Volta, Turing, Ampere, Ada Lovelace e Hopper) e AMD (baseado en arquitecturas RDNA2 (Navi 21) e RDNA3 (Navi 3x). O soporte para SSE4.1 declárase como 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 no lanzamento de Open Image Denoise 2.0:

  • Soporte para acelerar as operacións de redución de ruído mediante a GPU. Compatibilidade implementada para a descarga de GPU con sistemas SYCL, CUDA e HIP que se poden usar con GPU baseadas na arquitectura Intel Xe, AMD RDNA2, AMD RDNA3, NVIDIA Volta, NVIDIA Turing, NVIDIA Ampere, NVIDIA Ada Lovelace e NVIDIA Hopper.
  • Engadiuse unha nova API de xestión de búfer, que lle permite seleccionar o tipo de almacenamento, copiar datos do host e importar búfers externos desde API de gráficos como Vulkan e Direct3D 12.
  • Engadido soporte para o modo de execución asíncrona (funcións oidnExecuteFilterAsync e oidnSyncDevice).
  • Engadiuse unha API para enviar solicitudes a dispositivos físicos presentes no sistema.
  • Engadiuse a función oidnNewDeviceByID para crear un novo dispositivo baseado no ID físico do dispositivo, como UUID ou enderezo PCI.
  • Funcións engadidas para a portabilidade con SYCL, CUDA e HIP.
  • Engadíronse novas opcións de exploración de dispositivos (systemMemorySupported, managedMemorySupported, externalMemoryTypes).
  • Engadiuse un parámetro para establecer o nivel de calidade dos filtros.

Fonte: opennet.ru

Engadir un comentario