Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tracking algorithm for all Triggers is incorrect/insufficient for how the Tracker libs actually work. #1186

Open
rjhowell44 opened this issue Apr 21, 2024 · 3 comments
Assignees
Labels
bug Something isn't working enhancement New feature or request

Comments

@rjhowell44
Copy link
Collaborator

The current Tracking algorithm(s) delete a tracked object once it is no longer found in frame, however, the Tracker libs are capable or reacquiring objects once reported by the inference engine again. The DSL tracking needs to be able to support the same.

@rjhowell44 rjhowell44 added bug Something isn't working enhancement New feature or request labels Apr 21, 2024
@rjhowell44 rjhowell44 self-assigned this Apr 21, 2024
@rjhowell44
Copy link
Collaborator Author

Tracker config files specify two config properties relavant to this.

  maxShadowTrackingAge: 51    # Max length of shadow tracking. If the shadowTrackingAge exceeds this limit, the tracker will be terminated.
  earlyTerminationAge: 1    # If the shadowTrackingAge reaches this threshold while in TENTATIVE period, the target will be terminated prematurely.

NVIDIA Sample Configs:

  • IOU - maxShadowTrackingAge: 38
  • NvDCF_Acuracy - maxShadowTrackingAge: 42
  • NvDCF_Perf - maxShadowTrackingAge: 51
  • NvDeepSORT - maxShadowTrackingAge: 68

There will be a new DSL symbolic constant defined as

/**
 * @brief The maximum number of consecutive frames a tracked object
 * can go undetected before it is purged and no longer tracked. 
*/
#define DSL_ODE_TRACKED_OBJECT_MISSING_FROM_FRAME_MAX               100

@rjhowell44
Copy link
Collaborator Author

merged into the v0.30.alpha branch

@rjhowell44
Copy link
Collaborator Author

Although the above change will improve the behavior, there is a fundamental difference in the way the Tracker and ODE Trigger work.

  • Tracker maintains up to a fixed number of undetected objects indefinitely.
  • ODE Trigger maintains undetected objects for a max number of frames.

The DSL Tracking need to be changed to match the Tracker

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant