class_docstr: This class represents a track/tracklet used in the SMOT Tracker
  It has the following properties
  
  *******************************************************
  mean: 4-tuple representing the (x0, y0, x1, y1) as the current state (location) of the tracked object
  track_id: the numerical id of the track
  age: the number of timesteps since its first occurrence
  time_since_update: number of time-steps since the last update of the its location
  state: the state of the track, can be one in `TrackState`
  confidence_score: tracking_confidence at the current timestep
  
  source: a tuple of (anchor_indices, anchor_weights)
  attributes: np.ndarray of additional attributes of the object
  *******************************************************
  
  It also has these configs
  keep_alive_thresh: the minimal tracking/detection confidence to keep the track in Active state
  max_missing: the maximal timesteps we will keep searching for this track when missing before we mark it as deleted
  *******************************************************
class_docstr_tok: ["This","class","represents","a","track\/tracklet","used","in","the","SMOT","Tracker","It","has","the","following","properties","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","mean",":","4-tuple","representing","the","(","x0",",","y0",",","x1",",","y1",")","as","the","current","state","(","location",")","of","the","tracked","object","track_id",":","the","numerical","id","of","the","track","age",":","the","number","of","timesteps","since","its","first","occurrence","time_since_update",":","number","of","time-steps","since","the","last","update","of","the","its","location","state",":","the","state","of","the","track",",","can","be","one","in","`","TrackState","`","confidence_score",":","tracking_confidence","at","the","current","timestep","source",":","a","tuple","of","(","anchor_indices",",","anchor_weights",")","attributes",":","np.ndarray","of","additional","attributes","of","the","object","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","It","also","has","these","configs","keep_alive_thresh",":","the","minimal","tracking\/detection","confidence","to","keep","the","track","in","Active","state","max_missing",":","the","maximal","timesteps","we","will","keep","searching","for","this","track","when","missing","before","we","mark","it","as","deleted","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*","*"]
docstr: Update the state of the track. We override the predicted track position.
  Updating the track will keep or flip its state as Active
  If the confidence of detection is below the keep_alive_threshold, we will mark this track as missed.
  ----------
  bbx : new detection location of this object
  attributes: some useful attributes of this object at this frame, e.g. landmarks
docstr_tok: ["Update","the","state","of","the","track",".","We","override","the","predicted","track","position",".","Updating","the","track","will","keep","or","flip","its","state","as","Active","If","the","confidence","of","detection","is","below","the","keep_alive_threshold",",","we","will","mark","this","track","as","missed",".","--","--","--","--","--","bbx",":","new","detection","location","of","this","object","attributes",":","some","useful","attributes","of","this","object","at","this","frame",",","e.g",".","landmarks"]
code: def update(self, bbx, source=None, attributes=None):
      """
      Update the state of the track. We override the predicted track position.
      Updating the track will keep or flip its state as Active
      If the confidence of detection is below the keep_alive_threshold, we will mark this track as missed.
      ----------
      bbx : new detection location of this object
      attributes: some useful attributes of this object at this frame, e.g. landmarks
      """
      self.mean = bbx[:4]
      self.confidence_score = bbx[4]
      self.time_since_update = 0
      self.state = TrackState.Active
      self.attributes = attributes
      self.source = source
  
      if self.confidence_score < self.keep_alive_thresh:
          self.mark_missed()
  
imports: import time
  import logging
  from contextlib import contextmanager
  import mxnet
  import numpy
label_desc: Use image node_id 6 for calling the Track obj's underlying member method code with example usage: obj.update(bbx, source, attributes) without return types