class_docstr: Tracker for ByteTrack.
  
  Args:
      motion (dict): Configuration of motion. Defaults to None.
      obj_score_thrs (dict): Detection score threshold for matching objects.
          - high (float): Threshold of the first matching. Defaults to 0.6.
          - low (float): Threshold of the second matching. Defaults to 0.1.
      init_track_thr (float): Detection score threshold for initializing a
          new tracklet. Defaults to 0.7.
      weight_iou_with_det_scores (bool): Whether using detection scores to
          weight IOU which is used for matching. Defaults to True.
      match_iou_thrs (dict): IOU distance threshold for matching between two
          frames.
          - high (float): Threshold of the first matching. Defaults to 0.1.
          - low (float): Threshold of the second matching. Defaults to 0.5.
          - tentative (float): Threshold of the matching for tentative
              tracklets. Defaults to 0.3.
      num_tentatives (int, optional): Number of continuous frames to confirm
          a track. Defaults to 3.
class_docstr_tok: ["Tracker","for","ByteTrack",".","Args",":","motion","(","dict",")",":","Configuration","of","motion",".","Defaults","to","None",".","obj_score_thrs","(","dict",")",":","Detection","score","threshold","for","matching","objects",".","-","high","(","float",")",":","Threshold","of","the","first","matching",".","Defaults","to","0.6",".","-","low","(","float",")",":","Threshold","of","the","second","matching",".","Defaults","to","0.1.","init_track_thr","(","float",")",":","Detection","score","threshold","for","initializing","a","new","tracklet",".","Defaults","to","0.7.","weight_iou_with_det_scores","(","bool",")",":","Whether","using","detection","scores","to","weight","IOU","which","is","used","for","matching",".","Defaults","to","True",".","match_iou_thrs","(","dict",")",":","IOU","distance","threshold","for","matching","between","two","frames",".","-","high","(","float",")",":","Threshold","of","the","first","matching",".","Defaults","to","0.1",".","-","low","(","float",")",":","Threshold","of","the","second","matching",".","Defaults","to","0.5",".","-","tentative","(","float",")",":","Threshold","of","the","matching","for","tentative","tracklets",".","Defaults","to","0.3.","num_tentatives","(","int",",","optional",")",":","Number","of","continuous","frames","to","confirm","a","track",".","Defaults","to","3","."]
code: def __init__(
      self,
      motion: Optional[dict] = None,
      obj_score_thrs: dict = dict(high=0.6, low=0.1),
      init_track_thr: float = 0.7,
      weight_iou_with_det_scores: bool = True,
      match_iou_thrs: dict = dict(high=0.1, low=0.5, tentative=0.3),
      num_tentatives: int = 3,
      **kwargs,
  ):
      super().__init__(**kwargs)
  
      if lap is None:
          raise RuntimeError(
              "lap is not installed,\
                   please install it by: pip install lap"
          )
      if motion is not None:
          self.motion = TASK_UTILS.build(motion)
  
      self.obj_score_thrs = obj_score_thrs
      self.init_track_thr = init_track_thr
  
      self.weight_iou_with_det_scores = weight_iou_with_det_scores
      self.match_iou_thrs = match_iou_thrs
  
      self.num_tentatives = num_tentatives
  
file_path: mmdetection/mmdet/models/trackers/byte_tracker.py
imports: from typing import List, Optional, Tuple
  import numpy
  import torch
  from mmengine.structures import InstanceData
  from mmdet.registry import MODELS, TASK_UTILS
  from mmdet.structures import DetDataSample
  from mmdet.structures.bbox import bbox_cxcyah_to_xyxy, bbox_overlaps, bbox_xyxy_to_cxcyah
  from .base_tracker import BaseTracker
label_desc: Use image node_id 1 to create a new ByteTracker object from inherited base classes: BaseTracker with example: obj = ByteTracker(motion, obj_score_thrs, init_track_thr, weight_iou_with_det_scores, match_iou_thrs, num_tentatives)