Turing Optical flow in OpenCV

It was stated at a talk at GTC2019 (S91024 - NVIDIA Optical Flow SDK in Turing GPUs) that the Nvidia Optical Flow SDK is available to be used with OpenCV. I am unable to locate any source OpenCV source code that is the same as the talk (ie cuda::NvidiaOpticalFlow). Where might I find this?

A color conversion routine from CUDA SDK non documenting at all colorspace to OpenCV color standard would be must appreciated.
Even if I don’t need to use OpenCV, a documentation about the color standards used in SDK decoder is a must have (pixel alignments, structure, …). It’s the base of all further processings.
Retro-engineering not commented CUDA code is a pain in the ass.

I would also be interested in any integration with OpenCv.

Integration of optical flow to OpenCV is work-in-progress. It has taken longer than expected due to certain non-engineering issues. We hope to resolve them soon. Thanks for your patience.


NVIDIA Optical Flow is integrated into OpenCV. All our code resides in OpenCV_Contrib branch. Thanks for your patience.

Note that this will work only on Turing+ GPUs as only Turing GPUs (as of this writing) have the hardware capability to return optical flow vectors.

Vishal Chiluka

WHERE in the OpenCV_Contrib branch? are there any docs or samples?

modules\cudaoptflow. Nice.

I’m trying to compare performance of the Nvidia Optical Flow as January 2020 with OpenCV 4.1.2. but I’m getting an error:

OpenCV(4.1.2) /home/nvidia/opencv_contrib-4.1.2/modules/cudaoptflow/src/nvidiaOpticalFlow.cpp:172: error: (-6:Unknown error code -6) Cannot find NvOF library. in function ‘LoadNvidiaModules’

Is it possible to build OpenCV with Nvidia Optical Flow SDK on the Jetson TX2?


For an error “Cannot find NvOF library”, please confirm driver version you are using, how is the OpenCV built. Execute nvidia-bug-report.sh as a root privileged user and share the logs. This script is installed as a part of NVIDIA GPU driver installation.

NVIDIA Optical Flow SDK is not supported on Jetson TX2.