class SelectGroupSlices(ViewStage): (source)
Constructor: SelectGroupSlices(slices, media_type, _allow_mixed, _force_mixed)
Selects the samples in a group collection from the given slice(s).
The returned view is a flattened non-grouped view containing only the slice(s) of interest.
Note
This stage performs a $lookup that pulls the requested slice(s) for each sample in the input collection from the source dataset. As a result, this stage always emits unfiltered samples.
Examples:
import fiftyone as fo dataset = fo.Dataset() dataset.add_group_field("group", default="ego") group1 = fo.Group() group2 = fo.Group() dataset.add_samples( [ fo.Sample( filepath="/path/to/left-image1.jpg", group=group1.element("left"), ), fo.Sample( filepath="/path/to/video1.mp4", group=group1.element("ego"), ), fo.Sample( filepath="/path/to/right-image1.jpg", group=group1.element("right"), ), fo.Sample( filepath="/path/to/left-image2.jpg", group=group2.element("left"), ), fo.Sample( filepath="/path/to/video2.mp4", group=group2.element("ego"), ), fo.Sample( filepath="/path/to/right-image2.jpg", group=group2.element("right"), ), ] ) # # Retrieve the samples from the "ego" group slice # stage = fo.SelectGroupSlices("ego") view = dataset.add_stage(stage) # # Retrieve the samples from the "left" or "right" group slices # stage = fo.SelectGroupSlices(["left", "right"]) view = dataset.add_stage(stage) # # Retrieve all image samples # stage = fo.SelectGroupSlices(media_type="image") view = dataset.add_stage(stage)
Parameters | |
slices | a group slice or iterable of group slices to select. If neither argument is provided, a flattened list of all samples is returned |
media | a media type whose slice(s) to select |
Method | __init__ |
Undocumented |
Method | get |
Returns the media type outputted by this stage when applied to the given collection, if and only if it is different from the input type. |
Method | to |
Returns the MongoDB aggregation pipeline for the stage. |
Method | validate |
Validates that the stage can be applied to the given collection. |
Property | media |
The media type whose slices to select. |
Property | slices |
The group slice(s) to select. |
Class Method | _params |
Returns a list of JSON dicts describing the stage's supported parameters. |
Method | _get |
Undocumented |
Method | _get |
Undocumented |
Method | _kwargs |
Returns a list of [name, value] lists describing the parameters of this stage instance. |
Method | _make |
Undocumented |
Method | _make |
Undocumented |
Instance Variable | _allow |
Undocumented |
Instance Variable | _force |
Undocumented |
Instance Variable | _media |
Undocumented |
Instance Variable | _slices |
Undocumented |
Inherited from ViewStage
:
Method | __eq__ |
Undocumented |
Method | __repr__ |
Undocumented |
Method | __str__ |
Undocumented |
Method | get |
Returns a list of names of fields or embedded fields that may have been edited by the stage, if any. |
Method | get |
Returns a list of fields that have been excluded by the stage, if any. |
Method | get |
Returns a list of names of fields or embedded fields that contain arrays have been filtered by the stage, if any. |
Method | get |
Returns the dynamic group expression for the given stage, if any. |
Method | get |
Returns a list of fields that have been selected by the stage, if any. |
Method | load |
Loads the fiftyone.core.view.DatasetView containing the output of the stage. |
Property | has |
Whether this stage's output view should be loaded via load_view rather than appending stages to an aggregation pipeline via to_mongo . |
Property | outputs |
Whether this stage outputs or flattens dynamic groups. |
Class Method | _from |
Creates a ViewStage instance from a serialized JSON dict representation of it. |
Method | _needs |
Whether the stage requires frame labels of video samples to be attached. |
Method | _needs |
Whether the stage requires group slice(s) to be attached. |
Method | _serialize |
Returns a JSON dict representation of the ViewStage . |
Instance Variable | _uuid |
Undocumented |
Undocumented
Returns the media type outputted by this stage when applied to the given collection, if and only if it is different from the input type.
Parameters | |
sample | the
fiftyone.core.collections.SampleCollection to which
the stage is being applied |
Returns | |
the media type, or None if the stage does not change the type |
fiftyone.core.stages.ViewStage.to_mongo
Returns the MongoDB aggregation pipeline for the stage.
Only usable if has_view
is False.
Parameters | |
sample | the
fiftyone.core.collections.SampleCollection to which
the stage is being applied |
Returns | |
a MongoDB aggregation pipeline (list of dicts) |
fiftyone.core.stages.ViewStage.validate
Validates that the stage can be applied to the given collection.
Parameters | |
sample | a
fiftyone.core.collections.SampleCollection |
Raises | |
ViewStageError | if the stage cannot be applied to the collection |
fiftyone.core.stages.ViewStage._params
Returns a list of JSON dicts describing the stage's supported parameters.
Returns | |
a list of JSON dicts |
fiftyone.core.stages.ViewStage._kwargs
Returns a list of [name, value] lists describing the parameters of this stage instance.
Returns | |
a list of [name, value] lists |