I am currently using DeepStream with the IOU tracking algorithm, and my detection model is YOLOv8. However, I have noticed frequent occurrences of tracking ID switching or inheritance in the inference results. Below are the relevant parameter settings for the IOU tracking algorithm:
BaseConfig:
minDetectorConfidence: 0 # If the confidence of a detector bbox is lower than this, then it won’t be considered for tracking
TargetManagement:
maxTargetsPerStream: 5000 # Max number of targets to track per stream. Recommended to set >10. Note: this value should account for the targets being tracked in shadow mode as well. Max value depends on the memory capacity
[Creation & Termination Policy]
minIouDiff4NewTarget: 0.4 # If the IOU between the newly detected object and any of the existing targets is higher than this threshold, this newly detected object will be discarded.
probationAge: 2 # If the target’s age exceeds this, the target will be considered to be valid.
maxShadowTrackingAge: 50 # Max length of shadow tracking. If the shadowTrackingAge exceeds this limit, the tracker will be terminated.
earlyTerminationAge: 15 # If the shadowTrackingAge reaches this threshold while in TENTATIVE period, the target will be terminated prematurely.
TrajectoryManagement:
useUniqueID: 0 # Use 64-bit long Unique ID when assignining tracker ID.
DataAssociator:
dataAssociatorType: 0 # the type of data associator among { DEFAULT= 0 }
associationMatcherType: 1 # the type of matching algorithm among { GREEDY=0, GLOBAL=1 }
checkClassMatch: 1 # If checked, only the same-class objects are associated with each other. Default: true
[Association Metric: Thresholds for valid candidates]
minMatchingScore4Overall: 0.0 # Min total score
minMatchingScore4SizeSimilarity: 0.0 # Min bbox size similarity score
minMatchingScore4Iou: 0.0 # Min IOU score
[Association Metric: Weights]
matchingScoreWeight4SizeSimilarity: 0.4 # Weight for the Size-similarity score
matchingScoreWeight4Iou: 0.6 # Weight for the IOU score
Could you please advise what might be causing this issue and suggest how I could optimize the parameters or the configuration to reduce these ID inconsistencies?
Thank you for your support!