I suspect there’s some bug in
probationAge of the Nvdcf tracker.
We have a reproducible test case with Deepstream 5.0.1, where we run our app (based on the reference app architecture) from the same video in 2 modes, with nvdcf tracker enabled and no tracker.
- probationAge: 11
- minTrackingConfidenceDuringInactive: 0.92
- maxShadowTrackingAge: 10
Attaching 2 dumps of deepstream metadata written to CSV for one particular object.
When running without the tracker, the object was detected once by the primary detector in 1 frame (5864). No other detection was made, and no other objects were in this frames, 14 frames before, and some 100 frames after.
When running with the tracker, the same object was output in frame 5875 (11 frames later) and lingered until frame 6028.
Two potentially critical issues here:
- why did the object get out of temporary mode after 11 frame, if there were no detections for 10 frames after it was first detected
- why the object wasn’t terminated within
maxShadowTrackingAgebut was tracked for another 43 frames