Intel опублікував бібліотеку усунення шуму на зображеннях Open Image Denoise 2.0

Компанія Intel опублікувала випуск проекту oidn 2.0 (Open Image Denoise), який розвиває колекцію фільтрів для усунення шумів на зображеннях, підготовлених з використанням систем рендерингу на основі трасування променів. Open Image Denoise развивается как часть более крупного проекта oneAPI Rendering Toolkit, нацеленного на разработку средств программной визуализации научных расчётов (SDVis (Software Defined Visualization), включающих библиотеку трассировки лучей Embree, систему фотореалистичной отрисовки GLuRay, платформу распределённой трассировки лучей OSPRay и систему программной растеризации OpenSWR Код написаний мовою С++ і опублікований під ліцензією Apache 2.0.

Метою проекту є надання високоякісних, ефективних та простих у використанні функцій шумоподавлення, які можна застосовувати для підвищення якості результатів трасування променів. Запропоновані фільтри дозволяють на підставі результату скороченого циклу трасування променів отримати підсумковий рівень якості, який можна порівняти з результатом більш витратного та тривалого процесу деталізованого рендерингу.

Open Image Denoise забезпечує відсіювання випадкового шуму, що виникає, наприклад, при трасуванні променів на основі чисельного інтегрування методом Монте-Карло (MCRT). Для досягнення високої якості рендерингу в подібних алгоритмах потрібне проведення трасування дуже великої кількості променів, інакше на результуючому зображенні з'являються помітні артефакти як випадковий шум.

Застосування Open Image Denoise дозволяє на кілька порядків скоротити кількість необхідних обчислень під час розрахунку кожного пікселя. У результаті можна значно швидше згенерувати спочатку зашумлене зображення, але потім довести його до прийнятної якості за допомогою швидких алгоритмів придушення шумів. За наявності відповідного обладнання запропонований інструментарій можна застосовувати навіть для інтерактивного трасування променів з усуненням шумів на льоту.

Бібліотека може застосовуватися на різних класах пристроїв, від ноутбуків та ПК до вузлів у кластерах. Реалізація оптимізована для різних класів 64-розрядних CPU Intel з підтримкою інструкцій SSE4, AVX2, AVX-512 та XMX (Xe Matrix Extensions), чіпів Apple Silicon та систем з GPU Intel Xe (серії Arc, Flex та Max), NVIDIA (на базі архітектур Volta, Turing, Ampere, Ada Lovelace та Hopper) та AMD (на базі архітектур RDNA2 (Navi 21) та RDNA3 (Navi 3x)). Як мінімальна вимога заявлена ​​підтримка SSE4.1.

Intel опублікував бібліотеку усунення шуму на зображеннях Open Image Denoise 2.0
Intel опублікував бібліотеку усунення шуму на зображеннях Open Image Denoise 2.0

Основні зміни у випуску Open Image Denoise 2.0:

  • Підтримка прискорення операцій придушення шуму за допомогою GPU. Реалізовано підтримку винесення обчислень на бік GPU за допомогою систем SYCL, CUDA та HIP, які можна використовувати з GPU на базі архітектури Intel Xe, AMD RDNA2, AMD RDNA3, NVIDIA Volta, NVIDIA Turing, NVIDIA Ampere, NVIDIA Ada Lovelace та NVIDIA Hopper.
  • Додано новий API для керування буфером, що дозволяє вибирати тип сховища, копіювати дані з хоста та імпортувати зовнішні буфери з графічних API, таких як Vulkan та Direct3D 12.
  • Додано підтримку асинхронного режиму виконання (функції oidnExecuteFilterAsync та oidnSyncDevice).
  • Доданий API для надсилання запитів фізичним пристроям, що присутні в системі.
  • Додана функція oidnNewDeviceByID для створення нового пристрою на основі ідентифікатора фізичного пристрою, наприклад UUID або адреси PCI.
  • Додані функції для організації переносимості з SYCL, CUDA та HIP.
  • Додано нові параметри перевірки пристроїв (systemMemorySupported, managedMemorySupported, externalMemoryTypes).
  • Додано параметр для визначення рівня якості роботи фільтрів.

Джерело: opennet.ru

Додати коментар або відгук