Intel veröffentlicht Open Image Denoise 2.0 Image Denoise Library

Intel hat die Veröffentlichung des Projekts oidn 2.0 (Open Image Denoise) veröffentlicht, das eine Sammlung von Filtern zum Entrauschen von Bildern entwickelt, die mit Raytracing-Rendering-Systemen erstellt wurden. Open Image Denoise wird im Rahmen eines größeren oneAPI Rendering Toolkit-Projekts entwickelt, das auf die Entwicklung wissenschaftlicher Software-Visualisierungstools (SDVis (Software Defined Visualization)) abzielt, darunter die Embree-Raytracing-Bibliothek, das fotorealistische Rendering-System GLuRay und die verteilte Raytracing-Plattform OSPRay und das OpenSWR-Software-Rasterisierungssystem. Der Code ist in C++ geschrieben und unter der Apache 2.0-Lizenz veröffentlicht.

Ziel des Projekts ist die Bereitstellung hochwertiger, effizienter und benutzerfreundlicher Rauschunterdrückungsfunktionen, die zur Verbesserung der Qualität der Raytracing-Ergebnisse eingesetzt werden können. Die vorgeschlagenen Filter ermöglichen es, basierend auf dem Ergebnis eines verkürzten Raytracing-Zyklus, ein endgültiges Qualitätsniveau zu erreichen, das mit dem Ergebnis eines teureren und zeitaufwändigeren Prozesses der detaillierten Darstellung vergleichbar ist.

Open Image Denoise filtert zufälliges Rauschen wie MCRT-Raytracing (Monte Carlo Numerical Integration). Um in solchen Algorithmen ein qualitativ hochwertiges Rendering zu erreichen, ist die Verfolgung einer sehr großen Anzahl von Strahlen erforderlich, da sonst im resultierenden Bild auffällige Artefakte in Form von zufälligem Rauschen auftreten.

Durch die Verwendung von Open Image Denoise können Sie die Anzahl der erforderlichen Berechnungen bei der Berechnung jedes Pixels um mehrere Größenordnungen reduzieren. Dadurch ist es möglich, ein anfänglich verrauschtes Bild viel schneller zu erzeugen, es dann aber mithilfe schneller Rauschunterdrückungsalgorithmen auf eine akzeptable Qualität zu bringen. Mit der entsprechenden Ausstattung lassen sich die vorgeschlagenen Tools sogar für interaktives Raytracing mit On-the-fly-Rauschunterdrückung nutzen.

Die Bibliothek kann auf verschiedenen Geräteklassen verwendet werden, von Laptops und PCs bis hin zu Knoten in Clustern. Die Implementierung ist für verschiedene Klassen von 64-Bit-Intel-CPUs mit Unterstützung für SSE4-, AVX2-, AVX-512- und NVIDIA (basierend auf den Architekturen Volta, Turing, Ampere, Ada Lovelace und Hopper) und AMD (basierend auf den Architekturen RDNA2 (Navi 21) und RDNA3 (Navi 3x)). Die Unterstützung von SSE4.1 wird als Mindestanforderung deklariert.

Intel veröffentlicht Open Image Denoise 2.0 Image Denoise Library
Intel veröffentlicht Open Image Denoise 2.0 Image Denoise Library

Wichtige Änderungen in der Veröffentlichung von Open Image Denoise 2.0:

  • Unterstützung für die Beschleunigung von Rauschunterdrückungsvorgängen mithilfe der GPU. Implementierte Unterstützung für GPU-Offloading mithilfe von SYCL-, CUDA- und HIP-Systemen, die mit GPUs verwendet werden können, die auf der Intel Xe-Architektur, AMD RDNA2, AMD RDNA3, NVIDIA Volta, NVIDIA Turing, NVIDIA Ampere, NVIDIA Ada Lovelace und NVIDIA Hopper basieren.
  • Es wurde eine neue Pufferverwaltungs-API hinzugefügt, mit der Sie den Speichertyp auswählen, Daten vom Host kopieren und externe Puffer von Grafik-APIs wie Vulkan und Direct3D 12 importieren können.
  • Unterstützung für den asynchronen Ausführungsmodus hinzugefügt (Funktionen oidnExecuteFilterAsync und oidnSyncDevice).
  • Es wurde eine API zum Senden von Anfragen an im System vorhandene physische Geräte hinzugefügt.
  • Funktion oidnNewDeviceByID hinzugefügt, um ein neues Gerät basierend auf der physischen Geräte-ID zu erstellen, z. B. UUID oder PCI-Adresse.
  • Hinzugefügte Funktionen für die Portabilität mit SYCL, CUDA und HIP.
  • Neue Geräte-Scan-Optionen hinzugefügt (systemMemorySupported, ManagedMemorySupported, externalMemoryTypes).
  • Es wurde ein Parameter hinzugefügt, um die Qualitätsstufe der Filter festzulegen.

Source: opennet.ru

Kommentar hinzufügen