ByteTrack Tracker¶
Class: ByteTrackBlockV1
Source: inference.core.workflows.core_steps.trackers.bytetrack.v1.ByteTrackBlockV1
Track objects across video frames using the ByteTrack algorithm from the roboflow/trackers package.
ByteTrack splits detections into high- and low-confidence pools and runs two rounds of IoU-based association. The first round matches high-confidence detections to existing tracks; the second recovers weak detections that overlap unmatched tracks. This makes ByteTrack particularly effective in dense environments where objects are frequently partially occluded and detector confidence fluctuates.
When to use ByteTrack: - General-purpose tracking across diverse scenes. - Dense or crowded environments with partial occlusions. - Sports tracking and fast-moving objects (highest benchmark scores on SportsMOT). - When your detector produces a mix of high- and low-confidence detections that you want to retain.
When to consider alternatives: - For maximum simplicity and speed with a strong detector, use SORT. - For scenes with heavy occlusion and non-linear motion, use OC-SORT.
Outputs three detection sets: - tracked_detections: All confirmed tracked detections with assigned track IDs. - new_instances: Detections whose track ID appears for the first time. - already_seen_instances: Detections whose track ID has been seen in a prior frame.
The block maintains separate tracker state and instance cache per video_identifier,
enabling multi-stream tracking within a single workflow.
Type identifier¶
Use the following identifier in step "type" field: roboflow_core/trackers_bytetrack@v1to add the block as
as step in your workflow.
Properties¶
| Name | Type | Description | Refs |
|---|---|---|---|
name |
str |
Enter a unique identifier for this step.. | ❌ |
minimum_iou_threshold |
float |
Minimum IoU required to associate a detection with an existing track. Default: 0.1.. | ✅ |
minimum_consecutive_frames |
int |
Number of consecutive frames a track must be matched before it is emitted as a confirmed track (tracker_id != -1). Default: 2.. | ✅ |
lost_track_buffer |
int |
Number of frames to keep a track alive after it loses its matched detection. Higher values improve occlusion recovery. Default: 30.. | ✅ |
track_activation_threshold |
float |
Minimum detection confidence required to spawn a new track. Detections below this threshold are not used to create new tracks. Default: 0.7.. | ✅ |
high_conf_det_threshold |
float |
Confidence threshold for high-confidence detections used in association. Default: 0.6.. | ✅ |
instances_cache_size |
int |
Maximum number of track IDs retained in the instance cache for new/already-seen categorisation. Uses FIFO eviction. Default: 16384.. | ❌ |
The Refs column marks possibility to parametrise the property with dynamic values available
in workflow runtime. See Bindings for more info.
Available Connections¶
Compatible Blocks
Check what blocks you can connect to ByteTrack Tracker in version v1.
- inputs:
Stitch Images,Image Threshold,Corner Visualization,Image Blur,Ellipse Visualization,Time in Zone,Object Detection Model,Depth Estimation,EasyOCR,Absolute Static Crop,Gaze Detection,Stability AI Image Generation,Time in Zone,Grid Visualization,Dynamic Crop,Image Slicer,Image Preprocessing,Relative Static Crop,SIFT,Morphological Transformation,Velocity,Line Counter Visualization,Instance Segmentation Model,Trace Visualization,Detections Combine,Detection Event Log,Halo Visualization,Dot Visualization,ByteTrack Tracker,Keypoint Detection Model,Pixel Color Count,Pixelate Visualization,Circle Visualization,Image Convert Grayscale,Icon Visualization,QR Code Generator,Detections Classes Replacement,Keypoint Detection Model,Detections Stabilizer,Halo Visualization,Camera Focus,SIFT Comparison,SAM 3,OC-SORT Tracker,OCR Model,Polygon Visualization,Text Display,Detections Consensus,Reference Path Visualization,Instance Segmentation Model,Identify Changes,Crop Visualization,Mask Visualization,Detection Offset,Moondream2,SORT Tracker,Heatmap Visualization,Byte Tracker,Label Visualization,Classification Label Visualization,Detections List Roll-Up,Google Vision OCR,Byte Tracker,Segment Anything 2 Model,VLM As Detector,Polygon Zone Visualization,Stability AI Inpainting,Overlap Filter,SAM 3,Perspective Correction,Camera Calibration,Distance Measurement,VLM As Detector,PTZ Tracking (ONVIF),Bounding Rectangle,Background Color Visualization,Template Matching,Background Subtraction,Contrast Equalization,SIFT Comparison,Keypoint Visualization,Line Counter,Time in Zone,Path Deviation,Detections Filter,Detections Merge,Detections Transformation,Identify Outliers,Byte Tracker,Line Counter,SAM 3,Color Visualization,Motion Detection,Dynamic Zone,Seg Preview,Object Detection Model,Mask Area Measurement,Detections Stitch,YOLO-World Model,Triangle Visualization,Clip Comparison,Blur Visualization,Bounding Box Visualization,Camera Focus,Polygon Visualization,Path Deviation,Image Slicer,Image Contours,Model Comparison Visualization,Stability AI Outpainting - outputs:
Corner Visualization,Ellipse Visualization,Roboflow Dataset Upload,Time in Zone,Stitch OCR Detections,Time in Zone,Dynamic Crop,Velocity,Detections Combine,Trace Visualization,Detection Event Log,Dot Visualization,ByteTrack Tracker,Model Monitoring Inference Aggregator,Roboflow Custom Metadata,Pixelate Visualization,Circle Visualization,Icon Visualization,Detections Classes Replacement,Detections Stabilizer,Camera Focus,OC-SORT Tracker,Detections Consensus,Crop Visualization,Roboflow Dataset Upload,Detection Offset,SORT Tracker,Heatmap Visualization,Byte Tracker,Byte Tracker,Label Visualization,Detections List Roll-Up,Florence-2 Model,Segment Anything 2 Model,Florence-2 Model,Overlap Filter,Perspective Correction,PTZ Tracking (ONVIF),Background Color Visualization,Size Measurement,Time in Zone,Line Counter,Path Deviation,Detections Filter,Stitch OCR Detections,Detections Merge,Detections Transformation,Byte Tracker,Line Counter,Color Visualization,Roboflow Vision Events,Mask Area Measurement,Detections Stitch,Triangle Visualization,Blur Visualization,Bounding Box Visualization,Distance Measurement,Path Deviation,Model Comparison Visualization
Input and Output Bindings¶
The available connections depend on its binding kinds. Check what binding kinds
ByteTrack Tracker in version v1 has.
Bindings
-
input
image(image): Input image with embedded video metadata (fps and video_identifier). Used to initialise and retrieve per-video tracker state..detections(Union[keypoint_detection_prediction,instance_segmentation_prediction,object_detection_prediction]): Detection predictions for the current frame to track..minimum_iou_threshold(float_zero_to_one): Minimum IoU required to associate a detection with an existing track. Default: 0.1..minimum_consecutive_frames(integer): Number of consecutive frames a track must be matched before it is emitted as a confirmed track (tracker_id != -1). Default: 2..lost_track_buffer(integer): Number of frames to keep a track alive after it loses its matched detection. Higher values improve occlusion recovery. Default: 30..track_activation_threshold(float_zero_to_one): Minimum detection confidence required to spawn a new track. Detections below this threshold are not used to create new tracks. Default: 0.7..high_conf_det_threshold(float_zero_to_one): Confidence threshold for high-confidence detections used in association. Default: 0.6..
-
output
tracked_detections(object_detection_prediction): Prediction with detected bounding boxes in form of sv.Detections(...) object.new_instances(object_detection_prediction): Prediction with detected bounding boxes in form of sv.Detections(...) object.already_seen_instances(object_detection_prediction): Prediction with detected bounding boxes in form of sv.Detections(...) object.
Example JSON definition of step ByteTrack Tracker in version v1
{
"name": "<your_step_name_here>",
"type": "roboflow_core/trackers_bytetrack@v1",
"image": "<block_does_not_provide_example>",
"detections": "$steps.object_detection_model.predictions",
"minimum_iou_threshold": 0.1,
"minimum_consecutive_frames": 2,
"lost_track_buffer": 30,
"track_activation_threshold": 0.7,
"high_conf_det_threshold": 0.6,
"instances_cache_size": "<block_does_not_provide_example>"
}