Tracker Bounding Boxes Exceeding Frame Dimensions with bbox unclipping = 0

Please provide complete information as applicable to your setup.

• Hardware Platform (Jetson / GPU)
jetson xavier nx
• DeepStream Version
6
• JetPack Version (valid for Jetson only)
• TensorRT Version
• NVIDIA GPU Driver Version (valid for GPU only)
• Issue Type( questions, new requirements, bugs)

We are using the provided tracker config file “/opt/nvidia/deepstream/deepstream-6.0/samples/configs/deepstream-app/config_tracker_NvDCF_max_perf.yml”, which has disabled bbox unclipping.

We are still seeing some bounding boxes with values that slighty exceed the frame dimensions, for example a bounding box with:

left: 1300.24394989014
top: 940.227062702179
width: 55.8464348316193
height: 150.41189789772

which would put its bottom centre co-ord at ( 1328.16707611084, 1090.63892841339) for a 1920x1080 frame.

Is this expected behaviour for the tracker ? Is there a way to ensure that the tracker does not return bbox values outside the frame dims ?

Can you see BBox exceeding frame dimension without tracker? Can you share the reproduce steps? So I can reproduce it in my side.

We are not tracking the bbox dimensions in our use-case without the tracker, only bbox dimensions after the tracker.

This issue began to occur when we correctly configured the app to use the tracker yaml file - before we had been passing it a bad filepath and so it had been running at default behaviour (see log below):

stdout. gstnvtracker: Loading low-level lib at /opt/nvidia/deepstream/deepstream/lib/libnvds_nvmultiobjecttracker.so. 
stdout. ~~ CLOG[/dvs/git/dirty/git-master_linux/deepstream/sdk/src/utils/nvmultiobjecttracker/include/modules/NvMultiObjectTracker/NvTrackerParams.hpp, getConfigRoot() @line 54]: [NvTrackerParams::getConfigRoot()] !!![WARNING] Invalid low-level config file caused an exception, but will go ahead with the default config values. 
stdout. gstnvtracker: Batch processing is ON. 
stderr. 0:00:04.190235603   505   0x555f335d60 INFO                 nvinfer gstnvinfer.cpp:638:gst_nvinfer_logger:<primary_gie> NvDsInferContext[UID 1]: Info from NvDsInferContextImpl::buildModel() <nvdsinfer_context_impl.cpp:1914> [UID = 1]: Trying to create engine from model files. 
stdout. gstnvtracker: Past frame output is OFF. 
stdout. ~~ CLOG[/dvs/git/dirty/git-master_linux/deepstream/sdk/src/utils/nvmultiobjecttracker/include/modules/NvMultiObjectTracker/NvTrackerParams.hpp, getConfigRoot() @line 54]: [NvTrackerParams::getConfigRoot()] !!![WARNING] Invalid low-level config file caused an exception, but will go ahead with the default config values. 

Config Details:

[streammux]
gpu-id = 0
live-source = 1
batch-size = 2
batched-push-timeout = 40000
width = 1920
height = 1080
enable-padding = 0
nvbuf-memory-type = 0
attach-sys-ts-as-ntp = 1

[tracker]
enable = 1
tracker-width = 960
tracker-height = 544
ll-lib-file = /opt/nvidia/deepstream/deepstream/lib/libnvds_nvmultiobjecttracker.so
ll-config-file = /opt/nvidia/deepstream/deepstream-6.0/samples/configs/deepstream-app/config_tracker_NvDCF_max_perf.yml
gpu-id = 0
enable-batch-process = 1
enable-past-frame = 0
display-tracking-id = 1

Seems you use DeepStream 6.0. Can you have a try with DeepStream 6.1?

Hey kesong,

We have a production application that uses Deepstream 6.0 that we cannot migrate. Is this a known issue within Deepstream 6.0 ?

There is no update from you for a period, assuming this is not an issue anymore.
Hence we are closing this topic. If need further support, please open a new one.
Thanks

Can you see the BBox exceeding video frame with osd on the screen? Can it be reproduced with DS samples?

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.