NVIDIA Optical Flow SDK

Optical Flow SDK exposes the latest hardware capability of Turing and Ampere GPUs dedicated to computing the relative motion of pixels between images. The hardware uses sophisticated algorithms to yield highly accurate flow vectors, which are robust to frame-to-frame intensity variations, and track the true object motion.

Get started
Turing hardware generated optical flow map sample
Turing hardware generated optical flow map sample --- source footage

Video Analytics

Detect and track objects in successive video frames accurately while heavily reducing the computational complexity requirements.

Real-Time Performance

Interpolate or extrapolate video frames in real-time, improving smoothness of video playback or reducing latency in VR experiences

GPU Accelerated

Optimized for Turing, Ampere and future generations of NVIDIA GPU architectures. High speed computation of accurate flow vectors with little impact on the CPU or GPU.

Object Tracking for Intelligent Video Analytics

Optical Flow SDK 2.0 introduced an object tracker library based on optical flow, along with source code and ready-to-use API. In our experiments, the optical flow-based object tracker has shown to reduce the GPU utilization by up to 80%, compared to some of the most popular algorithms without compromising the accuracy of tracking. Optical Flow SDK 3.0 introduces a DirectX12 Interface, forward and backward flow and a global flow vector.

Learn More

Video Frame Interpolation and Extrapolation

Optical flow can also be used very effectively for interpolating or extrapolating the video frames in real-time. This can be useful in improving the smoothness of video playback, generating slow-motion videos or reducing the apparent latency in VR experience, as used by Oculus (details). Optical Flow functionality in Turing and Ampere GPUs accelerates these use-cases by offloading the intensive flow vector computation to a dedicated hardware engine on the GPU silicon, thereby freeing up GPU and CPU cycles for other tasks. This functionality in hardware is independent of CUDA cores..


Optical Flow

DevBlog: What’s New in Optical Flow SDK 3.0

The NVIDIA Turing architecture introduced a new hardware functionality for computing optical flow between a pair of images with very high performance. NVIDIA Optical Flow SDK exposes the APIs to use this Optical Flow hardware...

Learn More
Accelerate OpenCV blog

DevBlog: Accelerate OpenCV

The new NVIDIA hardware accelerated OpenCV interface is similar to that of other optical flow algorithms in OpenCV so developers can easily port and accelerate their existing optical flow based applications with minimal code changes.

Learn More
Video codec and optical flow

GTC 20: Video Codec and Optical Flow SDK

We'll present details of the recent updates to NVIDIA Video Codec SDK and NVIDIA Optical Flow SDK. Turing and later GPUs bring significant enhancements to video codec and optical flow hardware functionality.

Learn More

Ready to get started developing with Optical Flow?

Get Started