NVIDIA Optical Flow 加速器( NVOFA )是新 NVIDIA GPU 上的專用硬件單元,用于高性能計算一對圖像之間的光流。 NVIDIA Optical Flow SDK 公開了開發者 API ,使您能夠在應用程序中利用 NVOFA 硬件的強大功能。
我們很高興地宣布 Optical Flow SDK 5.0 的可用性,它增加了對 Vulkan 應用程序中生成光流的支持。
Vulkan 啟用顯式 GPU 控制
Vulkan 是一個低開銷, 跨平臺、開放標準 API 三維圖形 和 計算 Vulkan 提供更高的性能和更高效 CPU 和 GPU 與上一代 API (如 OpenGL )相比的使用情況 和 Direct3D 11 。
您可以利用 Vulkan 提供的顯式 GPU 訪問來優化您的應用程序,并完全控制資源管理和同步。自 2016 年發布以來, Vulkan 在游戲和圖形應用程序開發人員中的采用率迅速增長。
Optical Flow SDK 有什么新功能?
NVIDIA Optical Flow SDK 5.0 現在允許 Vulkan 應用程序在 NVIDIA Ampere 架構和新一代 GPU 上運行時使用 NVIDIA 光流引擎。
使用 NVOFA 計算的光流通過提高幀速率和實現視頻分析的有效對象跟蹤,為游戲和視頻創造了更流暢的體驗。
為了增加幀速率,Frame?Rate?Up?Conversion (FRUC)技術在原始幀之間插入插值幀。插值算法使用幀對之間的流來生成中間幀。
有了新的 Computer Vision / Video Analytics,Rendering / Ray Tracing,Gaming,Optical Flow SDK,Beginner Technical,Release,Video Processing,Vulkan SDK ,您現在可以在 Vulkan 應用程序中使用 NVIDIA Optical Flow FRUC 技術( NvOFFRUC )來提高視覺流動性。
這個Optical Flow SDK package包含標頭、演示用法的示例應用程序、可以根據需要重新使用或修改的 C ++包裝類以及文檔。用于訪問光流硬件的所有其他“隱藏”組件均包含在NVIDIA display driver,其中包含NVIDIA Optical Flow Vulkan extension.
您不必直接使用 Vulkan 擴展名。相反,您可以使用 Vulkan Optical Flow SDK API ,這些 API 在 Windows 10 、 11 和 Linux 上都受支持。
Vulkan 光流 API 被設計為盡可能類似于 SDK 中已經可用的其他接口,包括 CUDA 、 DirectX 11 和 DirectX 12 。它由三個核心功能組成:初始化、流量估計和銷毀。
typedef NV_OF_STATUS(NVOFAPI* PFNNVOFINIT) (NvOFHandle hOf, const NV_OF_INIT_PARAMS* initParams); typedef NV_OF_STATUS(NVOFAPI* PFNNVOFEXECUTEVK) (NvOFHandle hOf, const NV_OF_EXECUTE_INPUT_PARAMS_VK* executeInParams, NV_OF_EXECUTE_OUTPUT_PARAMS_VK* executeOutParams); typedef NV_OF_STATUS(NVOFAPI* PFNNVOFDESTROY) (NvOFHandle hOf);
初始化和銷毀 API 在所有接口上都是相同的,但 Vulkan 執行 API 需要顯式的信號量和信號量值輸入參數來提供對同步的直接控制。這些信號量對象用于同步 CPU 到 – GPU 和 GPU – 到 – GPU 操作。
Vulkan 中的緩沖區管理 API 接口也需要柵欄對象進行同步。有關詳細信息,請參閱NVOFA Programming Guide.
無論使用 Vulkan 、 DX11 、 DX12 還是 CUDA ,光流輸出質量都是相同的,所有接口的性能都相當
開始使用
將 NVIDIA 光流加速器與光流 SDK 結合在您的 Vulkan 應用程序中Optical Flow SDK 5.0.
有關開始使用 Vulkan 的更多信息,請參閱以下資源:
- Vulkan resources at The Khronos Group
- NVIDIA 光流 Vulkan 擴展:VK_NV_optical_flow
有關 NVIDIA Optical Flow SDK 的更多信息,請參閱以下資源:
- Harnessing the NVIDIA Ada Architecture for Frame-Rate Up-Conversion in the NVIDIA Optical Flow SDK
- AV1 Encoding and Optical Flow: Video Performance Boosts and Higher Fidelity on the NVIDIA Ada Architecture
?