Functions | Variables
deep_sort::linear_assignment Namespace Reference

Functions

def gate_cost_matrix
def matching_cascade
def min_cost_matching

Variables

int INFTY_COST = 1

Function Documentation

def deep_sort.linear_assignment.gate_cost_matrix (   kf,
  cost_matrix,
  tracks,
  detections,
  track_indices,
  detection_indices,
  gated_cost = INFTY_COST,
  only_position = False 
)
Invalidate infeasible entries in cost matrix based on the state
distributions obtained by Kalman filtering.

Parameters
----------
kf : The Kalman filter.
cost_matrix : ndarray
    The NxM dimensional cost matrix, where N is the number of track indices
    and M is the number of detection indices, such that entry (i, j) is the
    association cost between `tracks[track_indices[i]]` and
    `detections[detection_indices[j]]`.
tracks : List[track.Track]
    A list of predicted tracks at the current time step.
detections : List[detection.Detection]
    A list of detections at the current time step.
track_indices : List[int]
    List of track indices that maps rows in `cost_matrix` to tracks in
    `tracks` (see description above).
detection_indices : List[int]
    List of detection indices that maps columns in `cost_matrix` to
    detections in `detections` (see description above).
gated_cost : Optional[float]
    Entries in the cost matrix corresponding to infeasible associations are
    set this value. Defaults to a very large value.
only_position : Optional[bool]
    If True, only the x, y position of the state distribution is considered
    during gating. Defaults to False.

Returns
-------
ndarray
    Returns the modified cost matrix.

Definition at line 144 of file linear_assignment.py.

def deep_sort.linear_assignment.matching_cascade (   distance_metric,
  max_distance,
  cascade_depth,
  tracks,
  detections,
  track_indices = None,
  detection_indices = None 
)
Run matching cascade.

Parameters
----------
distance_metric : Callable[List[Track], List[Detection], List[int], List[int]) -> ndarray
    The distance metric is given a list of tracks and detections as well as
    a list of N track indices and M detection indices. The metric should
    return the NxM dimensional cost matrix, where element (i, j) is the
    association cost between the i-th track in the given track indices and
    the j-th detection in the given detection indices.
max_distance : float
    Gating threshold. Associations with cost larger than this value are
    disregarded.
cascade_depth: int
    The cascade depth, should be se to the maximum track age.
tracks : List[track.Track]
    A list of predicted tracks at the current time step.
detections : List[detection.Detection]
    A list of detections at the current time step.
track_indices : Optional[List[int]]
    List of track indices that maps rows in `cost_matrix` to tracks in
    `tracks` (see description above). Defaults to all tracks.
detection_indices : Optional[List[int]]
    List of detection indices that maps columns in `cost_matrix` to
    detections in `detections` (see description above). Defaults to all
    detections.

Returns
-------
(List[(int, int)], List[int], List[int])
    Returns a tuple with the following three entries:
    * A list of matched track and detection indices.
    * A list of unmatched track indices.
    * A list of unmatched detection indices.

Definition at line 78 of file linear_assignment.py.

def deep_sort.linear_assignment.min_cost_matching (   distance_metric,
  max_distance,
  tracks,
  detections,
  track_indices = None,
  detection_indices = None 
)
Solve linear assignment problem.

Parameters
----------
distance_metric : Callable[List[Track], List[Detection], List[int], List[int]) -> ndarray
    The distance metric is given a list of tracks and detections as well as
    a list of N track indices and M detection indices. The metric should
    return the NxM dimensional cost matrix, where element (i, j) is the
    association cost between the i-th track in the given track indices and
    the j-th detection in the given detection_indices.
max_distance : float
    Gating threshold. Associations with cost larger than this value are
    disregarded.
tracks : List[track.Track]
    A list of predicted tracks at the current time step.
detections : List[detection.Detection]
    A list of detections at the current time step.
track_indices : List[int]
    List of track indices that maps rows in `cost_matrix` to tracks in
    `tracks` (see description above).
detection_indices : List[int]
    List of detection indices that maps columns in `cost_matrix` to
    detections in `detections` (see description above).

Returns
-------
(List[(int, int)], List[int], List[int])
    Returns a tuple with the following three entries:
    * A list of matched track and detection indices.
    * A list of unmatched track indices.
    * A list of unmatched detection indices.

Definition at line 11 of file linear_assignment.py.


Variable Documentation

Definition at line 8 of file linear_assignment.py.



jsk_perception
Author(s): Manabu Saito, Ryohei Ueda
autogenerated on Tue Jul 2 2019 19:41:08