# model.jde

Description

🎯 Joint Detection and Embedding model for human detection and tracking.

class Node(config, **kwargs)[source]

Initializes and uses JDE tracking model to detect and track people from the supplied image frame.

JDE is a fast and high-performance multiple-object tracker that learns the object detection task and appearance embedding task simultaneously in a shared neural network.

Inputs

img (numpy.ndarray): A NumPy array of shape $$(height, width, channels)$$ containing the image data in BGR format.

Outputs

bboxes (numpy.ndarray): A NumPy array of shape $$(N, 4)$$ containing normalized bounding box coordinates of $$N$$ detected objects. Each bounding box is represented as $$(x_1, y_1, x_2, y_2)$$ where $$(x_1, y_1)$$ is the top-left corner and $$(x_2, y_2)$$ is the bottom-right corner. The order corresponds to bbox_labels and bbox_scores.

bbox_labels (numpy.ndarray): A NumPy array of shape $$(N)$$ containing strings representing the labels of detected objects. The order corresponds to bboxes and bbox_scores.

bbox_scores (numpy.ndarray): A NumPy array of shape $$(N)$$ containing confidence scores $$[0, 1]$$ of detected objects. The order corresponds to bboxes and bbox_labels.

obj_attrs (Dict[str, Any]): A dictionary of attributes associated with each bounding box, in the same order as bboxes. Different nodes that produce this obj_attrs output type may contribute different attributes. model.fairmot produces the ids attribute which contains the tracking IDs of the detections.

Configs
• weights_parent_dir (Optional[str]) – default = null.
Change the parent directory where weights will be stored by replacing null with an absolute path to the desired directory.

• iou_threshold (float) – default = 0.5.
Threshold value for Intersecton-over-Union of detections.

• nms_threshold (float) – default = 0.4.
Threshold values for non-max suppression.

• score_threshold (float) – default = 0.5.
Object confidence score threshold.

• min_box_area (int) – default = 200.
Minimum value for area of detected bounding box. Calculated by $$width \times height$$.

• track_buffer (int) – default = 30.
Threshold to remove track if track is lost for more frames than value.

References

Towards Real-Time Multi-Object Tracking: https://arxiv.org/abs/1909.12605v2

Model weights trained by: https://github.com/Zhongdao/Towards-Realtime-MOT