Deepstreams dependency on OpenCV

• Hardware Platform (Jetson / GPU)
Jetson NX
• DeepStream Version
5.0
• JetPack Version (valid for Jetson only)
4.0
• TensorRT Version
7.1

Hi,

I have been reviewing deepstream code, and trying to understand the dependencies on OpenCV. Unfortunately, my company will not allow us to use OpenCV, and I am trying to figure out if using deepstream for RetinaNet Object Detection will still be possible.

Can I run a RetinaNet model using deepstream with OpenCV uninstalled, removed from .h .cpp files, etc?

If you can, what functionality is lost? All i see are a couple examples that use opencv, but it doesn’t appear to be needed to acquire video, inference, display video and bounding boxes.

Thank you for your response. We would love to continue to use this NVIDIA product.

-Derek

Can I run a RetinaNet model using deepstream with OpenCV uninstalled, removed from .h .cpp files, etc?

if you don’t use “the OpenCV groupRectangles() function for grouping detected objects” function of nvdsinfer, RetinaNet model can run with deepstream without opencv.
But, opencv is using now in gst-nvinfer plugin, so you need to modofiy the nvdsinfer code (/opt/nvidia/deepstream/deepstream/sources/libs/nvdsinfer, /opt/nvidia/deepstream/deepstream/sources/gst-plugins/gst-nvinfer) to remove the opencv.

https://docs.nvidia.com/metropolis/deepstream/dev-guide/text/DS_plugin_gst-nvinfer.html

Thank you for your response. This is exactly the info i was looking for. It sounds like this is doable. I would have to remove all traces of OpenCV, as it cannot be installed on my system.

While I have you, what do you know about the NVDCF tracker’s use of OpenCV. I was going to start looking in to the 3 different trackers, and how they use OpenCV, so any info on that subject is greatly appreciated.

Thanks,
Derek

Hi @derek.r.skilling ,
Sorry for delay! Yes, NvDCF, KLT and IOU are all also using OpenCV.

Thanks!