def track(
        sample_collection,
        in_field,
        out_field="frames.ds_tracks",
        max_age=5,
        keep_confidence=False,
        skip_failures=True,
        progress=None,
    ):
        """Performs object tracking using the DeepSort algorithm on the given
        video samples.

        DeepSort is an algorithm for tracking multiple objects in video streams
        based on deep learning techniques. It associates bounding boxes between
        frames and maintains tracks of objects over time.

        Args:
            sample_collection: a
                :class:`fiftyone.core.collections.SampleCollection`
            in_field: the name of a frame field containing
                :class:`fiftyone.core.labels.Detections` to track. The
                ``"frames."`` prefix is optional
            out_field ("frames.ds_tracks"): the name of a frame field to store
                the output :class:`fiftyone.core.labels.Detections` with
                tracking information. The ``"frames."`` prefix is optional
            max_age (5): the maximum number of missed misses before a track is
                deleted
            keep_confidence (False): whether to store the detection confidence
                of the tracked objects in the ``out_field``
            skip_failures (True): whether to gracefully continue without
                raising an error if tracking fails for a video
            progress (False): whether to render a progress bar (True/False),
                use the default value ``fiftyone.config.show_progress_bars``
                (None), or a progress callback function to invoke instead
        """
        in_field, _ = sample_collection._handle_frame_field(in_field)
        out_field, _ = sample_collection._handle_frame_field(out_field)
        _in_field = sample_collection._FRAMES_PREFIX + in_field

        fov.validate_video_collection(sample_collection)
        fov.validate_collection_label_fields(
            sample_collection, _in_field, fo.Detections
        )

        view = sample_collection.select_fields(_in_field)

        for sample in view.iter_samples(autosave=True, progress=progress):
            try:
                DeepSort.track_sample(
                    sample,
                    in_field,
                    out_field=out_field,
                    max_age=max_age,
                    keep_confidence=keep_confidence,
                )
            except Exception as e:
                if not skip_failures:
                    raise e

                logger.warning("Sample: %s\nError: %s\n", sample.id, e)
Performs object tracking using the DeepSort algorithm on the given
        video samples.

        DeepSort is an algorithm for tracking multiple objects in video streams
        based on deep learning techniques. It associates bounding boxes between
        frames and maintains tracks of objects over time.

        Args:
            sample_collection: a
                :class:`fiftyone.core.collections.SampleCollection`
            in_field: the name of a frame field containing
                :class:`fiftyone.core.labels.Detections` to track. The
                ``"frames."`` prefix is optional
            out_field ("frames.ds_tracks"): the name of a frame field to store
                the output :class:`fiftyone.core.labels.Detections` with
                tracking information. The ``"frames."`` prefix is optional
            max_age (5): the maximum number of missed misses before a track is
                deleted
            keep_confidence (False): whether to store the detection confidence
                of the tracked objects in the ``out_field``
            skip_failures (True): whether to gracefully continue without
                raising an error if tracking fails for a video
            progress (False): whether to render a progress bar (True/False),
                use the default value ``fiftyone.config.show_progress_bars``
                (None), or a progress callback function to invoke instead
        
fiftyone/utils/tracking/deepsort.py