Shortcuts

mmtrack.datasets.pipelines.loading 源代码

# Copyright (c) OpenMMLab. All rights reserved.
from mmdet.datasets.builder import PIPELINES
from mmdet.datasets.pipelines import LoadAnnotations, LoadImageFromFile

from mmtrack.core import results2outs


[文档]@PIPELINES.register_module() class LoadMultiImagesFromFile(LoadImageFromFile): """Load multi images from file. Please refer to `mmdet.datasets.pipelines.loading.py:LoadImageFromFile` for detailed docstring. """ def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) def __call__(self, results): """Call function. For each dict in `results`, call the call function of `LoadImageFromFile` to load image. Args: results (list[dict]): List of dict from :obj:`mmtrack.CocoVideoDataset`. Returns: list[dict]: List of dict that contains loaded image. """ outs = [] for _results in results: _results = super().__call__(_results) outs.append(_results) return outs
[文档]@PIPELINES.register_module() class SeqLoadAnnotations(LoadAnnotations): """Sequence load annotations. Please refer to `mmdet.datasets.pipelines.loading.py:LoadAnnotations` for detailed docstring. Args: with_track (bool): If True, load instance ids of bboxes. """ def __init__(self, with_track=False, *args, **kwargs): super().__init__(*args, **kwargs) self.with_track = with_track def _load_track(self, results): """Private function to load label annotations. Args: results (dict): Result dict from :obj:`mmtrack.CocoVideoDataset`. Returns: dict: The dict contains loaded label annotations. """ results['gt_instance_ids'] = results['ann_info']['instance_ids'].copy() return results def __call__(self, results): """Call function. For each dict in results, call the call function of `LoadAnnotations` to load annotation. Args: results (list[dict]): List of dict that from :obj:`mmtrack.CocoVideoDataset`. Returns: list[dict]: List of dict that contains loaded annotations, such as bounding boxes, labels, instance ids, masks and semantic segmentation annotations. """ outs = [] for _results in results: _results = super().__call__(_results) if self.with_track: _results = self._load_track(_results) outs.append(_results) return outs
[文档]@PIPELINES.register_module() class LoadDetections(object): """Load public detections from MOT benchmark. Args: results (dict): Result dict from :obj:`mmtrack.CocoVideoDataset`. """ def __call__(self, results): outs_det = results2outs(bbox_results=results['detections']) bboxes = outs_det['bboxes'] labels = outs_det['labels'] results['public_bboxes'] = bboxes[:, :4] if bboxes.shape[1] > 4: results['public_scores'] = bboxes[:, -1] results['public_labels'] = labels results['bbox_fields'].append('public_bboxes') return results
Read the Docs v: latest
Versions
latest
stable
Downloads
pdf
html
epub
On Read the Docs
Project Home
Builds

Free document hosting provided by Read the Docs.