docstr: The abstract method for predicting movement of bounding boxes given the two frames.
  Parameters
  ----------
  prev_frame_cache: cached image from motion estimation, numpy.ndarray
  prev_bboxes: Nx4 numpy.ndarray, bounding boxes in (left, top, right, bottom) format
  new_frame: BGR image, numpy.ndarray
  new_frame_motion_pred_data: additional data for motion prediction
  tracked_boxes_anchor_indices: anchor indices used to build the prev_bboxes
  tracked_boxes_anchor_weights: voting weights of anchors used to build prev_bboxes
  skip: whether to just skip motion estimation for this frame
  kwargs: other information
  Returns
      new_boxes: Nx4 numpy.ndarray
      cache_information:
  -------
docstr_tok: ["The","abstract","method","for","predicting","movement","of","bounding","boxes","given","the","two","frames",".","Parameters","--","--","--","--","--","prev_frame_cache",":","cached","image","from","motion","estimation",",","numpy.ndarray","prev_bboxes",":","Nx4","numpy.ndarray",",","bounding","boxes","in","(","left",",","top",",","right",",","bottom",")","format","new_frame",":","BGR","image",",","numpy.ndarray","new_frame_motion_pred_data",":","additional","data","for","motion","prediction","tracked_boxes_anchor_indices",":","anchor","indices","used","to","build","the","prev_bboxes","tracked_boxes_anchor_weights",":","voting","weights","of","anchors","used","to","build","prev_bboxes","skip",":","whether","to","just","skip","motion","estimation","for","this","frame","kwargs",":","other","information","Returns","new_boxes",":","Nx4","numpy.ndarray","cache_information",":","--","--","--","-"]
code: def predict_new_locations(
      self,
      prev_frame_cache: np.ndarray,
      prev_bboxes: np.ndarray,
      new_frame: np.ndarray,
      new_frame_motion_pred_data,
      tracked_boxes_anchor_indices=None,
      tracked_boxes_anchor_weights=None,
      skip: bool = False,
      **kwargs,
  ):
      """
      The abstract method for predicting movement of bounding boxes given the two frames.
      Parameters
      ----------
      prev_frame_cache: cached image from motion estimation, numpy.ndarray
      prev_bboxes: Nx4 numpy.ndarray, bounding boxes in (left, top, right, bottom) format
      new_frame: BGR image, numpy.ndarray
      new_frame_motion_pred_data: additional data for motion prediction
      tracked_boxes_anchor_indices: anchor indices used to build the prev_bboxes
      tracked_boxes_anchor_weights: voting weights of anchors used to build prev_bboxes
      skip: whether to just skip motion estimation for this frame
      kwargs: other information
      Returns
          new_boxes: Nx4 numpy.ndarray
          cache_information:
      -------
  
      """
      # pylint: disable=notimplemented-raised,raising-bad-type
      raise NotImplemented
  
imports: import time
  import logging
  from abc import ABC, abstractmethod
  import numpy
label_desc: Use image node_id 2 for calling the MotionEstimator obj's underlying member method code with example usage: obj.predict_new_locations(prev_frame_cache, prev_bboxes, new_frame, new_frame_motion_pred_data, tracked_boxes_anchor_indices, tracked_boxes_anchor_weights, skip) without return types