class COCODetectionDatasetImporter(foud.LabeledImageDatasetImporter, foud.ImportPathsMixin): (source)
Constructor: COCODetectionDatasetImporter(dataset_dir, data_path, labels_path, label_types, ...)
Importer for COCO detection datasets stored on disk.
See :ref:`this page <COCODetectionDataset-import>` for format details.
Parameters | |
dataset | the dataset directory. If omitted, data_path and/or labels_path must be provided |
data | an optional parameter that enables explicit control over the location of the media. Can be any of the following:
If None, this parameter will default to whichever of data/ or data.json exists in the dataset directory |
labels | an optional parameter that enables explicit control over the location of the labels. Can be any of the following:
If None, the parameter will default to labels.json |
label | a label type or list of label types to load. The supported values are ("detections", "segmentations", "keypoints"). By default, all label types are loaded |
classes | a string or list of strings specifying required classes to load. Only samples containing at least one instance of a specified class will be loaded |
image | an optional list of specific image IDs to load. Can be provided in any of the following formats:
|
include | whether to include the COCO ID of each sample in the loaded labels |
include | whether to include the COCO ID of each annotation in the loaded labels |
include | whether to include the license ID of each sample in the loaded labels, if available. Supported values are:
Note that the license descriptions (if available) are always loaded into dataset.info["licenses"] and can be used to convert between ID, name, and URL later |
extra | whether to load extra annotation attributes onto the imported labels. Supported values are:
|
only | whether to only load labels that match the classes requirement that you provide (True), or to load all labels for samples that match the requirements (False) |
use | whether to represent segmentations as
fiftyone.core.labels.Polylines instances rather than
fiftyone.core.labels.Detections with dense masks |
tolerance | a tolerance, in pixels, when generating approximate polylines for instance masks. Typical values are 1-3 pixels |
shuffle | whether to randomly shuffle the order in which the samples are imported |
seed | a random seed to use when shuffling |
max | a maximum number of samples to load. If label_types and/or classes are also specified, first priority will be given to samples that contain all of the specified label types and/or classes, followed by samples that contain at least one of the specified labels types or classes. The actual number of samples loaded may be less than this maximum value if the dataset does not contain sufficient samples matching your requirements. By default, all matching samples are loaded |
Method | __init__ |
Undocumented |
Method | __iter__ |
Undocumented |
Method | __len__ |
The total number of samples that will be imported. |
Method | __next__ |
Returns information about the next sample in the dataset. |
Method | get |
Returns the dataset info for the dataset. |
Method | setup |
Performs any necessary setup before importing the first sample in the dataset. |
Instance Variable | classes |
Undocumented |
Instance Variable | data |
Undocumented |
Instance Variable | extra |
Undocumented |
Instance Variable | image |
Undocumented |
Instance Variable | include |
Undocumented |
Instance Variable | include |
Undocumented |
Instance Variable | include |
Undocumented |
Instance Variable | label |
Undocumented |
Instance Variable | labels |
Undocumented |
Instance Variable | only |
Undocumented |
Instance Variable | tolerance |
Undocumented |
Instance Variable | use |
Undocumented |
Property | has |
Whether this importer produces a dataset info dictionary. |
Property | has |
Whether this importer produces fiftyone.core.metadata.ImageMetadata instances for each image. |
Property | label |
The fiftyone.core.labels.Label class(es) returned by this importer. |
Instance Variable | _annotations |
Undocumented |
Instance Variable | _class |
Undocumented |
Instance Variable | _classes |
Undocumented |
Instance Variable | _filenames |
Undocumented |
Instance Variable | _image |
Undocumented |
Instance Variable | _image |
Undocumented |
Instance Variable | _info |
Undocumented |
Instance Variable | _iter |
Undocumented |
Instance Variable | _label |
Undocumented |
Instance Variable | _license |
Undocumented |
Instance Variable | _supercategory |
Undocumented |
Property | _has |
Undocumented |
Inherited from DatasetImporter
(via LabeledImageDatasetImporter
):
Method | __enter__ |
Undocumented |
Method | __exit__ |
Undocumented |
Method | close |
Performs any necessary actions after the last sample has been imported. |
Method | _preprocess |
Internal utility that preprocesses the given list---which is presumed to be a list defining the samples that should be imported---by applying the values of the shuffle, seed, and max_samples parameters of the importer. |
Inherited from ImportPathsMixin
(via LabeledImageDatasetImporter
, DatasetImporter
):
Static Method | _load |
Helper function that parses either a data directory or a data manifest file into a UUID -> filepath map. |
Static Method | _parse |
Helper function that computes default values for the data_path parameter supported by many importers. |
Static Method | _parse |
Helper function that computes default values for the labels_path parameter supported by many importers. |
Undocumented
Returns information about the next sample in the dataset.
Returns | |
an(image_path, image_metadata, label)tuple, where |
|
Raises | |
StopIteration | if there are no more samples to import |
Returns the dataset info for the dataset.
By convention, this method should be called after all samples in the dataset have been imported.
Returns | |
a dict of dataset info |
Performs any necessary setup before importing the first sample in the dataset.
This method is called when the importer's context manager interface is
entered, DatasetImporter.__enter__
.
The fiftyone.core.labels.Label
class(es) returned by this
importer.
This can be any of the following:
- a
fiftyone.core.labels.Label
class. In this case, the importer is guaranteed to return labels of this type - a list or tuple of
fiftyone.core.labels.Label
classes. In this case, the importer can produce a single label field of any of these types - a dict mapping keys to
fiftyone.core.labels.Label
classes. In this case, the importer will return label dictionaries with keys and value-types specified by this dictionary. Not all keys need be present in the imported labels - None. In this case, the importer makes no guarantees about the labels that it may return