Using separate threads for displaying ip camera stream and performing tracking on Jetson Xavier NX

Hi, I’m performing visual object tracking on a stream from an IP camera. I constructed a Gstreamer pipeline with Nvidia acceleration and it’s working great (low latency, high fps). However, when I added a few tracking algorithms on top of the stream, things got jerky and I’m looking to improve performance of tracking. I’m on a Jetson Xavier NX, Python 3.6, and would like to know what I can do to improve performance while tracking. I’m thinking of separating the tracking from streaming and use threading or multiprocessing but couldn’t manage to find a solid application. Any suggestions? Thanks a lot!

Hi,
The optimal solution of runnig deep learning inference is DeepStream SDK.

Would suggest you check the sample apps and give it a try.

Thanks for the quick reply! I’ll give it a try. However, I’d still appreciate some ideas on implementing some sort of a threaded processing of frames and performing tracking on parallel. Thanks!

Hi,
The implementation is to run a pipeline sequentially. If you would like to run the models parallelly, may need to customize the default implementation. For object tracking, we have nvtracker plugin. You may give it a try and see if it can be applied to your usecase.