fiftyone.utils.openlabel#
Utilities for working with datasets in OpenLABEL format.
Classes:
|
The FiftyOne label type used to store segmentations |
|
Importer for OpenLABEL image datasets stored on disk. |
|
Importer for OpenLABEL video datasets stored on disk. |
Annotations parsed from OpenLABEL format able to be converted to FiftyOne labels. |
|
|
A collection of multiple |
|
Information about a stream used to gather specific objects for a media file. |
A utility for parsing groups of OpenLABEL elements |
|
A collection of |
|
A collection of OpenLABEL streams. |
|
Methods used to parse attributes from OpenLABEL annotations. |
|
|
A single OpenLABEL shape like a bounding box or polygon. |
|
An OpenLABEL bounding box. |
|
An OpenLABEL polyline. |
|
An OpenLABEL keypoint. |
|
A collection of OpenLABEL shapes. |
|
An OpenLABEL stream corresponding to one uri or file_id. |
|
A parser and storage for OpenLABEL metadata. |
|
An object parsed from OpenLABEL labels. |
- class fiftyone.utils.openlabel.SegmentationType(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#
Bases:
Enum
The FiftyOne label type used to store segmentations
Attributes:
- INSTANCE = 1#
- POLYLINE = 2#
- SEMANTIC = 3#
- class fiftyone.utils.openlabel.OpenLABELImageDatasetImporter(dataset_dir=None, data_path=None, labels_path=None, label_types=None, use_polylines=False, shuffle=False, seed=None, max_samples=None, skeleton=None, skeleton_key=None)#
Bases:
LabeledImageDatasetImporter
,ImportPathsMixin
Importer for OpenLABEL image datasets stored on disk.
See this page for format details.
- Parameters:
dataset_dir (None) – the dataset directory. If omitted,
data_path
and/orlabels_path
must be provideddata_path (None) –
an optional parameter that enables explicit control over the location of the media. Can be any of the following:
a folder name like
"data"
or"data/"
specifying a subfolder ofdataset_dir
where the media files residean absolute directory path where the media files reside. In this case, the
dataset_dir
has no effect on the location of the dataa filename like
"data.json"
specifying the filename of the JSON data manifest file indataset_dir
an absolute filepath specifying the location of the JSON data manifest. In this case,
dataset_dir
has no effect on the location of the dataa dict mapping file_ids to absolute filepaths
If None, this parameter will default to whichever of
data/
ordata.json
exists in the dataset directorylabels_path (None) –
an optional parameter that enables explicit control over the location of the labels. Can be any of the following:
a filename like
"labels.json"
specifying the location of the labels indataset_dir
a folder name like
"labels"
or"labels/"
specifying a subfolder ofdataset_dir
where the multiple label files residean absolute filepath to the labels. In this case,
dataset_dir
has no effect on the location of the labels
If None, the parameter will default to looking for
labels.json
andlabel/
label_types (None) – a label type or list of label types to load. The supported values are
("detections", "segmentations", "keypoints")
. By default, all labels are loadeduse_polylines (False) – whether to represent segmentations as
fiftyone.core.labels.Polylines
instances rather thanfiftyone.core.labels.Detections
with dense masksshuffle (False) – whether to randomly shuffle the order in which the samples are imported
seed (None) – a random seed to use when shuffling
max_samples (None) – a maximum number of samples to load
skeleton (None) – a
fiftyone.core.odm.dataset.KeypointSkeleton
to reference when loading keypointsskeleton_key (None) – the key in the OpenLABEL annotations pointing to the label of each keypoint matching the labels defined in the given
skeleton
Attributes:
Whether this importer produces a dataset info dictionary.
Whether this importer produces
fiftyone.core.metadata.ImageMetadata
instances for each image.The
fiftyone.core.labels.Label
class(es) returned by this importer.Methods:
setup
()Performs any necessary setup before importing the first sample in the dataset.
Returns the dataset info for the dataset.
close
(*args)Performs any necessary actions after the last sample has been imported.
- property has_dataset_info#
Whether this importer produces a dataset info dictionary.
- property has_image_metadata#
Whether this importer produces
fiftyone.core.metadata.ImageMetadata
instances for each image.
- property label_cls#
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 typea list or tuple of
fiftyone.core.labels.Label
classes. In this case, the importer can produce a single label field of any of these typesa 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 labelsNone
. In this case, the importer makes no guarantees about the labels that it may return
- setup()#
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__()
.
- get_dataset_info()#
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
- close(*args)#
Performs any necessary actions after the last sample has been imported.
This method is called when the importer’s context manager interface is exited,
DatasetImporter.__exit__()
.- Parameters:
*args – the arguments to
DatasetImporter.__exit__()
- class fiftyone.utils.openlabel.OpenLABELVideoDatasetImporter(dataset_dir=None, data_path=None, labels_path=None, label_types=None, use_polylines=False, shuffle=False, seed=None, max_samples=None, skeleton=None, skeleton_key=None)#
Bases:
LabeledVideoDatasetImporter
,ImportPathsMixin
Importer for OpenLABEL video datasets stored on disk.
See this page for format details.
- Parameters:
dataset_dir (None) – the dataset directory. If omitted,
data_path
and/orlabels_path
must be provideddata_path (None) –
an optional parameter that enables explicit control over the location of the media. Can be any of the following:
a folder name like
"data"
or"data/"
specifying a subfolder ofdataset_dir
where the media files residean absolute directory path where the media files reside. In this case, the
dataset_dir
has no effect on the location of the dataa filename like
"data.json"
specifying the filename of the JSON data manifest file indataset_dir
an absolute filepath specifying the location of the JSON data manifest. In this case,
dataset_dir
has no effect on the location of the dataa dict mapping file_ids to absolute filepaths
If None, this parameter will default to whichever of
data/
ordata.json
exists in the dataset directorylabels_path (None) –
an optional parameter that enables explicit control over the location of the labels. Can be any of the following:
a filename like
"labels.json"
specifying the location of the labels indataset_dir
a folder name like
"labels"
or"labels/"
specifying a subfolder ofdataset_dir
where the multiple label files residean absolute filepath to the labels. In this case,
dataset_dir
has no effect on the location of the labels
If None, the parameter will default to looking for
labels.json
andlabels/
label_types (None) – a label type or list of label types to load. The supported values are
("detections", "segmentations", "keypoints")
. By default, all labels are loadeduse_polylines (False) – whether to represent segmentations as
fiftyone.core.labels.Polylines
instances rather thanfiftyone.core.labels.Detections
with dense masksshuffle (False) – whether to randomly shuffle the order in which the samples are imported
seed (None) – a random seed to use when shuffling
max_samples (None) – a maximum number of samples to load
skeleton (None) – a
fiftyone.core.odm.dataset.KeypointSkeleton
to reference when loading keypointsskeleton_key (None) – the key in the OpenLABEL annotations pointing to the label of each keypoint matching the labels defined in the given
skeleton
Attributes:
Whether this importer produces a dataset info dictionary.
Whether this importer produces
fiftyone.core.metadata.VideoMetadata
instances for each video.The
fiftyone.core.labels.Label
class(es) returned by this importer within the sample-level labels that it produces.The
fiftyone.core.labels.Label
class(es) returned by this importer within the frame labels that it produces.Methods:
setup
()Performs any necessary setup before importing the first sample in the dataset.
Returns the dataset info for the dataset.
close
(*args)Performs any necessary actions after the last sample has been imported.
- property has_dataset_info#
Whether this importer produces a dataset info dictionary.
- property has_video_metadata#
Whether this importer produces
fiftyone.core.metadata.VideoMetadata
instances for each video.
- property label_cls#
The
fiftyone.core.labels.Label
class(es) returned by this importer within the sample-level labels that it produces.This can be any of the following:
a
fiftyone.core.labels.Label
class. In this case, the importer is guaranteed to return sample-level labels of this typea list or tuple of
fiftyone.core.labels.Label
classes. In this case, the importer can produce a single sample-level label field of any of these typesa dict mapping keys to
fiftyone.core.labels.Label
classes. In this case, the importer will return sample-level label dictionaries with keys and value-types specified by this dictionary. Not all keys need be present in the imported labelsNone
. In this case, the importer makes no guarantees about the sample-level labels that it may return
- setup()#
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__()
.
- get_dataset_info()#
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
- close(*args)#
Performs any necessary actions after the last sample has been imported.
This method is called when the importer’s context manager interface is exited,
DatasetImporter.__exit__()
.- Parameters:
*args – the arguments to
DatasetImporter.__exit__()
- property frame_labels_cls#
The
fiftyone.core.labels.Label
class(es) returned by this importer within the frame labels that it produces.This can be any of the following:
a
fiftyone.core.labels.Label
class. In this case, the importer is guaranteed to return frame labels of this typea list or tuple of
fiftyone.core.labels.Label
classes. In this case, the importer can produce a single frame label field of any of these typesa dict mapping keys to
fiftyone.core.labels.Label
classes. In this case, the importer will return frame label dictionaries with keys and value-types specified by this dictionary. Not all keys need be present in each frameNone
. In this case, the importer makes no guarantees about the frame labels that it may return
- class fiftyone.utils.openlabel.OpenLABELAnnotations#
Bases:
object
Annotations parsed from OpenLABEL format able to be converted to FiftyOne labels.
Methods:
parse_labels
(base_dir, labels_path)Parses a single OpenLABEL labels file.
get_dimensions
(file_id)Get the width and height of a given URI or file id
get_labels
(uri, label_types, frame_size, ...)Get the FiftyOne labels corresponding to the annotations of a given URI.
- parse_labels(base_dir, labels_path)#
Parses a single OpenLABEL labels file.
- Parameters:
base_dir – path to the directory containing the labels file
labels_path – path to the labels json file
- Returns:
a list of potential file_ids that the parsed labels correspond to
- get_dimensions(file_id)#
Get the width and height of a given URI or file id
- Parameters:
file_id – the unique identifier to a media file
- Returns:
(width, height) of the given file
- get_labels(uri, label_types, frame_size, seg_type, skeleton=None, skeleton_key=None)#
Get the FiftyOne labels corresponding to the annotations of a given URI. The results are two dictionaries, sample- and frame-level, mapping field names to values and label objects.
- Parameters:
uri – the unique identifier to a media file
label_types – a list of label types to load. The supported values are
("detections", "segmentations", "keypoints")
.frame_size – the (width, height) tuple for the media frame
seg_type – the
SegmentationType
to use for segmentation annotationsskeleton (None) – a
fiftyone.core.odm.dataset.KeypointSkeleton
to use as a reference when loading keypointsskeleton_key (None) – the name of the field in the OpenLABEL annotations containing the labels of keypoints matching the labels of the given skeleton
- Returns:
a dictionary of sample level fields and label objects and a dictionary of frame numbers to frame level fields and label objects
- class fiftyone.utils.openlabel.OpenLABELStreamInfos(infos=None)#
Bases:
object
A collection of multiple
OpenLABELStreamInfo
objects.Methods:
get_stream_attributes
([frame_number])Aggregates attributes from all streams in this collection.
Attributes:
All frame numbers existing in the
OpenLABELStreamInfo
objects in this collection.- get_stream_attributes(frame_number=None)#
Aggregates attributes from all streams in this collection.
- Parameters:
frame_number (None) – a specific frame number for which to get stream attributes
- Returns:
a dictionary of attributes from all streams in this collection
- property frame_numbers#
All frame numbers existing in the
OpenLABELStreamInfo
objects in this collection.
- class fiftyone.utils.openlabel.OpenLABELStreamInfo(frame_numbers=None, stream=None, label_file_id=None, is_sample_level=None)#
Bases:
object
Information about a stream used to gather specific objects for a media file.
- Parameters:
frame_numbers (None) – frame numbers related to this stream info
stream (None) – an
OpenLABELStream
label_file_id (None) – a label file id related to this stream info
is_sample_level (None) – whether this stream info corresponds to sample-level or frame-level
Attributes:
Whether there exists a stream corresponding to this info.
Methods:
Get a dictionary of attributes for the stream in this object.
- property is_streamless#
Whether there exists a stream corresponding to this info.
- get_stream_attributes()#
Get a dictionary of attributes for the stream in this object.
- Returns:
a dictionary of attributes from the corresponding stream
- class fiftyone.utils.openlabel.OpenLABELGroup#
Bases:
object
A utility for parsing groups of OpenLABEL elements
- class fiftyone.utils.openlabel.OpenLABELObjects#
Bases:
OpenLABELGroup
A collection of
OpenLABELObject
and corresponding utility methods.Attributes:
Get streams corresponding to any object in this collection.
A list of
OpenLABELObject
instances in this collection.Methods:
parse_objects_dict
(objects_dict, label_file_id)Parses the OpenLABEL annotations corresponding to a specific dictionary of objects.
add_object
(obj_key, label_file_id, obj)Adds an
OpenLABELObject
to this collection.get_objects
(stream_infos)Gets any objects that correspond to an info in the given stream infos.
to_labels
(frame_size, label_types, seg_type, ...)Converts the stored
OpenLABELObject
to FiftyOne labels.- property streams#
Get streams corresponding to any object in this collection.
- property all_objects#
A list of
OpenLABELObject
instances in this collection.
- parse_objects_dict(objects_dict, label_file_id, frame_number=None)#
Parses the OpenLABEL annotations corresponding to a specific dictionary of objects.
- Parameters:
objects_dict – the dict of OpenLABEL object annotations
label_file_id – the name of the annotations file containing these objects
frame_number (None) – an optional frame that this
objects_dict
is in
- add_object(obj_key, label_file_id, obj)#
Adds an
OpenLABELObject
to this collection.- Parameters:
obj_key – the name of the object in the OpenLABEL annotations
label_file_id – the filename of the annotations file containing this label
obj – the
OpenLABELObject
to add
- get_objects(stream_infos)#
Gets any objects that correspond to an info in the given stream infos.
- Parameters:
stream_infos – a
OpenLABELStreamInfos
used to get corresponding objects- Returns:
an
OpenLABELObjects
with objects that correspond to any of the given stream infos
- to_labels(frame_size, label_types, seg_type, stream_infos, skeleton=None, skeleton_key=None)#
Converts the stored
OpenLABELObject
to FiftyOne labels.- Parameters:
frame_size – the size of the image frame in pixels (width, height)
label_types – a list of label types to load
seg_type – the
SegmentationType
to use to store segmentationsstream_infos – the
OpenLABELStreamInfos
containing sample-level attributes to parse into labelsskeleton (None) – a
fiftyone.core.odm.dataset.KeypointSkeleton
to use when loading keypoint annotationsskeleton_key (None) – the name of the field in the OpenLABEL annotations containing the labels of keypoints matching the labels of the given skeleton
- Returns:
a dictionary of sample level fields and label objects and a dictionary of frame numbers to frame level fields and label objects
- class fiftyone.utils.openlabel.OpenLABELStreams#
Bases:
OpenLABELGroup
A collection of OpenLABEL streams.
Attributes:
All unique media file identifiers corresponding to streams in this collection.
Methods:
parse_streams_dict
(streams_dict, label_file_id)Parses the OpenLABEL annotations corresponding to a specific dictionary of streams.
get_dimensions
(uri)Get the width and height of a given URI or file id.
get_stream_info
(uri)Get all stream infos, including stream and relevant frame numbers, for a given media file identifier.
- property uris#
All unique media file identifiers corresponding to streams in this collection.
- parse_streams_dict(streams_dict, label_file_id, frame_number=None)#
Parses the OpenLABEL annotations corresponding to a specific dictionary of streams.
- Parameters:
streams_dict – the dict of OpenLABEL stream annotations
label_file_id – the name of the annotations file containing these streams
frame_number (None) – an optional frame that this
streams_dict
is in
- get_dimensions(uri)#
Get the width and height of a given URI or file id.
- Parameters:
file_id – the unique identifier to a media file
- Returns:
the
(width, height)
of the given file
- get_stream_info(uri)#
Get all stream infos, including stream and relevant frame numbers, for a given media file identifier.
- Parameters:
uri – the unique media file identifier for which to get all stream infos
- Returns:
the
OpenLABELStreamInfos
corresponding to the given uri
- class fiftyone.utils.openlabel.AttributeParser#
Bases:
object
Methods used to parse attributes from OpenLABEL annotations.
- class fiftyone.utils.openlabel.OpenLABELShape(coords, attributes=None, stream=None)#
Bases:
AttributeParser
A single OpenLABEL shape like a bounding box or polygon.
Methods:
Constructs a shape from a dictionary of information.
- classmethod from_shape_dict(d)#
Constructs a shape from a dictionary of information.
- Parameters:
d – a dictionary containing information about a shape
- Returns:
- class fiftyone.utils.openlabel.OpenLABELBBox(coords, attributes=None, stream=None)#
Bases:
OpenLABELShape
An OpenLABEL bounding box.
Methods:
to_label
(label, attributes, width, height)Convert this shape to a FiftyOne label.
Constructs a shape from a dictionary of information.
- to_label(label, attributes, width, height)#
Convert this shape to a FiftyOne label.
- Parameters:
label – the class label for this shape
attributes – a dictionary of attributes for this shape
width – the width of the frame in pixels
height – the height of the frame in pixels
- Returns:
- classmethod from_shape_dict(d)#
Constructs a shape from a dictionary of information.
- Parameters:
d – a dictionary containing information about a shape
- Returns:
- class fiftyone.utils.openlabel.OpenLABELPoly2D(coords, attributes=None, stream=None)#
Bases:
OpenLABELShape
An OpenLABEL polyline.
Methods:
to_label
(label, attributes, width, height)Convert this shape to a FiftyOne label.
Constructs a shape from a dictionary of information.
- to_label(label, attributes, width, height)#
Convert this shape to a FiftyOne label.
- Parameters:
label – the class label for this shape
attributes – a dictionary of attributes for this shape
width – the width of the frame in pixels
height – the height of the frame in pixels
- Returns:
- classmethod from_shape_dict(d)#
Constructs a shape from a dictionary of information.
- Parameters:
d – a dictionary containing information about a shape
- Returns:
- class fiftyone.utils.openlabel.OpenLABELPoint(coords, attributes=None, stream=None)#
Bases:
OpenLABELShape
An OpenLABEL keypoint.
Methods:
to_label
(label, attributes, width, height[, ...])Convert this shape to a FiftyOne label.
Constructs a shape from a dictionary of information.
- to_label(label, attributes, width, height, skeleton=None, skeleton_key=None)#
Convert this shape to a FiftyOne label.
- Parameters:
label – the class label for this shape
attributes – a dictionary of attributes for this shape
width – the width of the frame in pixels
height – the height of the frame in pixels
skeleton (None) – a
fiftyone.core.odm.dataset.KeypointSkeleton
used to sort list attributes based on the labels in the skeleton. Used only ifskeleton_key
is providedskeleton_key (None) – the string key into the attributes dictionary containing the label of each point, used to sort list attribute fields based on the labels in the skeleton. Used only if
skeleton
is provided
- Returns:
- classmethod from_shape_dict(d)#
Constructs a shape from a dictionary of information.
- Parameters:
d – a dictionary containing information about a shape
- Returns:
- class fiftyone.utils.openlabel.OpenLABELShapes(shapes=None, attributes=None, stream=None)#
Bases:
AttributeParser
A collection of OpenLABEL shapes.
Attributes:
A list of streams corresponding to any object in this collection.
Methods:
from_object_data_list
(shape_type, l[, ...])Construct an
OpenLABELShapes
from a list of shape dictionaries.merge_shapes
(shapes)Merges another
OpenLABELShapes
into this one.to_labels
(label, attributes, width, height)Convert this shape to a FiftyOne label.
- property streams#
A list of streams corresponding to any object in this collection.
- classmethod from_object_data_list(shape_type, l, attributes=None)#
Construct an
OpenLABELShapes
from a list of shape dictionaries.- Parameters:
shape_type – the type of the shape being loaded. Options are (
OpenLABELBBox
,OpenLABELPoly2D
,OpenLABELPoint
)l – a list of shape dictionaries parsed from OpenLABEL object annotations
attributes (None) – a dictionary of attributes corresponding to all shapes in this collection
- Returns:
- merge_shapes(shapes)#
Merges another
OpenLABELShapes
into this one.- Parameters:
shapes – another
OpenLABELShapes
to merge into this object
- to_labels(label, attributes, width, height, is_points=False, skeleton=None, skeleton_key=None)#
Convert this shape to a FiftyOne label.
- Parameters:
label – the class label for this shape
attributes – a dictionary of attributes for this shape
width – the width of the frame in pixels
height – the height of the frame in pixels
is_points (False) – whether the labels being converted are keypoints
skeleton (None) – a
fiftyone.core.odm.dataset.KeypointSkeleton
used to sort list attributes based on the labels in the skeleton. Used only ifis_points
andskeleton_key
is providedskeleton_key (None) – the string key into the attributes dictionary containing the label of each point, used to sort list attribute fields based on the labels in the skeleton. Used only if
is_points
andskeleton
is provided
- Returns:
- class fiftyone.utils.openlabel.OpenLABELStream(name, type=None, properties=None, uris=None, other_attrs=None)#
Bases:
object
An OpenLABEL stream corresponding to one uri or file_id.
- Parameters:
name (None) – the name of the stream
type (None) – the type of the stream
description (None) – a string description for this stream
properties (None) – a dict of properties for this stream
uri (None) – the uri or file_id of the media corresponding to this stream
other_attrs (None) – a dictionary of other attributes corresponding to this stream
Methods:
update_dict
(d[, frame_number])Updates this stream with additional information.
get_frame_numbers
(uri)Get frame numbers corresponding to the given uri.
from_anno_dict
(stream_name, d, frame_number)Create an OpenLABEL stream from the stream information dictionary.
Attributes:
Get uris corresponding to any stream in this collection.
- update_dict(d, frame_number=None)#
Updates this stream with additional information.
- Parameters:
d – a dict containing additional stream information
frame_number (None) – the frame number from which this stream information dict was parsed, ‘None’ if from the top-level streams
- property uris#
Get uris corresponding to any stream in this collection.
- get_frame_numbers(uri)#
Get frame numbers corresponding to the given uri.
- classmethod from_anno_dict(stream_name, d, frame_number)#
Create an OpenLABEL stream from the stream information dictionary.
- Parameters:
stream_name – the name of the stream
d – a dict containing information about this stream
frame_number – the frame number from which this stream information dict was parsed, ‘None’ if from the top-level streams
- Returns:
- class fiftyone.utils.openlabel.OpenLABELMetadata(metadata_dict)#
Bases:
object
A parser and storage for OpenLABEL metadata.
Methods:
Parses metadata for any fields that may correspond to a label-wide media file_id.
- parse_potential_file_ids()#
Parses metadata for any fields that may correspond to a label-wide media file_id.
- Returns:
a list of potential file_id strings
- class fiftyone.utils.openlabel.OpenLABELObject(key, name=None, type=None, bboxes=None, segmentations=None, keypoints=None, stream=None, other_attrs=None, is_frame_level=False)#
Bases:
AttributeParser
An object parsed from OpenLABEL labels.
- Parameters:
key – the OpenLABEL key string for this object
name (None) – the name string of the object
type (None) – the type string of the object
bboxes (None) – an :class`OpenLABELShapes` of bounding boxes for this object
segmentations (None) – an :class`OpenLABELShapes` of polygon segmentations for this object
keyponts (None) – an
OpenLABELShapes
of keypoints for this objectstream (None) – the
OpenLABELStream
this object corresponds toother_attrs (None) – a dict of attributes and their values for this object
is_frame_level (False) – whether this object is sample-level or frame-level
Attributes:
Get streams corresponding to this object.
Whether any streams are connected to this object or corresponding frame-level objects.
Methods:
filter_stream
(stream_info)Filters this object to contain only frame labels specified in the given stream info
to_detections
(frame_size)Converts the bounding boxes in this object to
fiftyone.core.labels.Detection
objects.to_polylines
(frame_size)Converts the segmentations in this object to
fiftyone.core.labels.Polyline
objects.to_keypoints
(frame_size[, skeleton, ...])Converts the keypoints in this object to
fiftyone.core.labels.Keypoint
objects.from_anno_dict
(obj_key, d[, frame_number])Create an
OpenLABELObject
from the raw label dictionary.update_dict
(d[, frame_number])Updates this
OpenLABELObject
given the raw label dictionary.- property streams#
Get streams corresponding to this object.
- property is_streamless#
Whether any streams are connected to this object or corresponding frame-level objects.
- filter_stream(stream_info)#
Filters this object to contain only frame labels specified in the given stream info
- Parameters:
stream_info – the
OpenLABELStreamInfo
to use to filter this object- Returns:
an
OpenLABELObject
containing only frames related to the given stream info
- to_detections(frame_size)#
Converts the bounding boxes in this object to
fiftyone.core.labels.Detection
objects.- Parameters:
frame_size – the size of the frame in pixels (width, height)
- Returns:
a list of
fiftyone.core.labels.Detection
objects for each bounding box in this object
- to_polylines(frame_size)#
Converts the segmentations in this object to
fiftyone.core.labels.Polyline
objects.- Parameters:
frame_size – the size of the frame in pixels (width, height)
- Returns:
a list of
fiftyone.core.labels.Polyline
objects for each polyline in this object
- to_keypoints(frame_size, skeleton=None, skeleton_key=None)#
Converts the keypoints in this object to
fiftyone.core.labels.Keypoint
objects.- Parameters:
frame_size – the size of the frame in pixels (width, height)
- Returns:
a list of
fiftyone.core.labels.Keypoint
objects for each keypoint in this object
- classmethod from_anno_dict(obj_key, d, frame_number=None)#
Create an
OpenLABELObject
from the raw label dictionary.- Parameters:
anno_id – id of the object
d – dict containing the information for this object
- Returns:
a tuple containing the
OpenLABELObject
and the frame numbers the object corresponds to, if any.
- update_dict(d, frame_number=None)#
Updates this
OpenLABELObject
given the raw label dictionary.- Parameters:
d – dict containing the information for this object
- Returns:
newly parsed frame numbers the object corresponds to, if any