Table of Contents

Class ByteTrackerSettings

Namespace
VisioForge.Core.Types.X.AI
Assembly
VisioForge.Core.dll

Settings for the ByteTrack multi-object tracker.

public class ByteTrackerSettings

Inheritance

Inherited Members

Remarks

Confidence thresholds operate on OnnxDetection.Confidence. Association thresholds are maximum accepted costs. IoU cost is 1 - IoU. Score-fused cost is 1 - (IoU * detection confidence). VisioForge.Core.Types.X.AI.ByteTrackerSettings.LostTrackBuffer is measured in tracker Update calls, not wall-clock time.

Properties

ClassAwareMatching

Gets or sets a value indicating whether class-aware matching is enabled. When enabled, a track and detection with different class IDs receive an unmatchable cost. Defaults to true.

public bool ClassAwareMatching { get; set; }

Property Value

bool

FirstAssociationThreshold

Gets or sets the maximum accepted cost for the first (high-confidence) association stage. Defaults to 0.8.

public float FirstAssociationThreshold { get; set; }

Property Value

float

FuseDetectionScore

Gets or sets a value indicating whether detection confidence is fused into the association cost (1 - IoU * confidence). Defaults to true.

public bool FuseDetectionScore { get; set; }

Property Value

bool

HighConfidenceThreshold

Gets or sets the confidence threshold above which a detection participates in the first (high-confidence) association stage. Defaults to 0.25.

public float HighConfidenceThreshold { get; set; }

Property Value

float

LostTrackBuffer

Gets or sets the number of tracker Update calls a track may remain lost before it is expired and removed. Defaults to 30.

public int LostTrackBuffer { get; set; }

Property Value

int

LowConfidenceThreshold

Gets or sets the minimum confidence for a detection to be considered. Detections below this threshold are ignored entirely. Defaults to 0.1.

public float LowConfidenceThreshold { get; set; }

Property Value

float

NewTrackThreshold

Gets or sets the minimum confidence a high-confidence detection must reach to create a new track. Defaults to 0.35.

public float NewTrackThreshold { get; set; }

Property Value

float

SecondAssociationThreshold

Gets or sets the maximum accepted cost for the second (low-confidence) association stage. Defaults to 0.5.

public float SecondAssociationThreshold { get; set; }

Property Value

float

UnconfirmedAssociationThreshold

Gets or sets the maximum accepted cost for matching unconfirmed tracks against remaining high-confidence detections. Defaults to 0.7.

public float UnconfirmedAssociationThreshold { get; set; }

Property Value

float

Methods

Validate()

Validates the settings and throws ArgumentException if any value is invalid.

public void Validate()