pysolotools.core package

Subpackages

Submodules

pysolotools.core.constants module

pysolotools.core.exceptions module

exception pysolotools.core.exceptions.AuthenticationException(message, source=None)

Bases: PySoloException

Raised when no Auth Token is provided

exception pysolotools.core.exceptions.DatasetException(message, source=None)

Bases: PySoloException

exception pysolotools.core.exceptions.DatasetNotFoundException(message, source=None)

Bases: PySoloException

exception pysolotools.core.exceptions.MalformedQueryException(message, source=None)

Bases: PySoloException

exception pysolotools.core.exceptions.MissingCaptureException(message, source=None)

Bases: PySoloException

Raise when capture is missing in the dataset.

exception pysolotools.core.exceptions.MissingKeypointAnnotatorException(message, source=None)

Bases: PySoloException

Raised when keypoint annotator is missing

exception pysolotools.core.exceptions.PySoloException(message, source=None)

Bases: Exception

Base class for Exceptions

exception pysolotools.core.exceptions.TimeoutException(message, source=None)

Bases: PySoloException

Raised when request times-out.

exception pysolotools.core.exceptions.UCVDException(message, source=None)

Bases: PySoloException

exception pysolotools.core.exceptions.UnrecognizedAuthException(message, source=None)

Bases: PySoloException

Raise when unknown authentiction methods are used

pysolotools.core.stats module

Module contents

class pysolotools.core.Annotation(type: str, id: str, sensorId: str, description: str, extra_data: Union[CatchAllVar, NoneType])

Bases: object

dataclass_json_config = {'undefined': Undefined.INCLUDE}
description: str
extra_data: Optional[CatchAllVar]
classmethod from_dict(kvs: Optional[Union[dict, list, str, int, float, bool]], *, infer_missing=False) A
classmethod from_json(s: Union[str, bytes, bytearray], *, parse_float=None, parse_int=None, parse_constant=None, infer_missing=False, **kw) A
id: str
classmethod schema(*, infer_missing: bool = False, only=None, exclude=(), many: bool = False, context=None, load_only=(), dump_only=(), partial: bool = False, unknown=None) SchemaF[A]
sensorId: str
to_dict(encode_json=False) Dict[str, Optional[Union[dict, list, str, int, float, bool]]]
to_json(*, skipkeys: bool = False, ensure_ascii: bool = True, check_circular: bool = True, allow_nan: bool = True, indent: Optional[Union[int, str]] = None, separators: Optional[Tuple[str, str]] = None, default: Optional[Callable] = None, sort_keys: bool = False, **kw) str
type: str
class pysolotools.core.AnnotationLabel(instanceId: int, labelId: int)

Bases: _BaseMeta

instanceId: int
labelId: int
class pysolotools.core.BoundingBox2DAnnotation(type: str, id: str, sensorId: str, description: str, extra_data: Union[~CatchAllVar, NoneType], values: List[pysolotools.core.models.solo.BoundingBox2DLabel] = <factory>)

Bases: Annotation

values: List[BoundingBox2DLabel]
class pysolotools.core.BoundingBox2DAnnotationDefinition(id: str, description: str, extra_data: Union[CatchAllVar, NoneType], spec: List[pysolotools.core.models.solo.LabelNameSpec])

Bases: AnnotationDefinition

spec: List[LabelNameSpec]
class pysolotools.core.BoundingBox3DAnnotation(type: str, id: str, sensorId: str, description: str, extra_data: Union[CatchAllVar, NoneType], values: List[pysolotools.core.models.solo.BoundingBox3DLabel])

Bases: Annotation

values: List[BoundingBox3DLabel]
class pysolotools.core.Capture(id: str, type: str, description: str, position: List[float], rotation: List[float], annotations: List[dataclass])

Bases: object

id (str): Id type(str):

annotations: List[dataclass]
description: str
classmethod from_dict(kvs: Optional[Union[dict, list, str, int, float, bool]], *, infer_missing=False) A
classmethod from_json(s: Union[str, bytes, bytearray], *, parse_float=None, parse_int=None, parse_constant=None, infer_missing=False, **kw) A
get_annotations_df() DataFrame
Returns

Captures List fo

Return type

pd.DataFrame

id: str
position: List[float]
rotation: List[float]
classmethod schema(*, infer_missing: bool = False, only=None, exclude=(), many: bool = False, context=None, load_only=(), dump_only=(), partial: bool = False, unknown=None) SchemaF[A]
to_dict(encode_json=False) Dict[str, Optional[Union[dict, list, str, int, float, bool]]]
to_json(*, skipkeys: bool = False, ensure_ascii: bool = True, check_circular: bool = True, allow_nan: bool = True, indent: Optional[Union[int, str]] = None, separators: Optional[Tuple[str, str]] = None, default: Optional[Callable] = None, sort_keys: bool = False, **kw) str
type: str
class pysolotools.core.DatasetMetadata(unityVersion: str, perceptionVersion: str, totalFrames: int, totalSequences: int, sensors: List[str], metricCollectors: List[str], annotators: List[object] = <factory>, scenarioActiveRandomizers: List[str] = <factory>, simulationStartTime: str = None, simulationEndTime: str = None, renderPipeline: str = None, scenarioRandomSeed: float = None)

Bases: object

annotators: List[object]
classmethod from_dict(kvs: Optional[Union[dict, list, str, int, float, bool]], *, infer_missing=False) A
classmethod from_json(s: Union[str, bytes, bytearray], *, parse_float=None, parse_int=None, parse_constant=None, infer_missing=False, **kw) A
metricCollectors: List[str]
perceptionVersion: str
renderPipeline: str = None
scenarioActiveRandomizers: List[str]
scenarioRandomSeed: float = None
classmethod schema(*, infer_missing: bool = False, only=None, exclude=(), many: bool = False, context=None, load_only=(), dump_only=(), partial: bool = False, unknown=None) SchemaF[A]
sensors: List[str]
simulationEndTime: str = None
simulationStartTime: str = None
to_dict(encode_json=False) Dict[str, Optional[Union[dict, list, str, int, float, bool]]]
to_json(*, skipkeys: bool = False, ensure_ascii: bool = True, check_circular: bool = True, allow_nan: bool = True, indent: Optional[Union[int, str]] = None, separators: Optional[Tuple[str, str]] = None, default: Optional[Callable] = None, sort_keys: bool = False, **kw) str
totalFrames: int
totalSequences: int
unityVersion: str
class pysolotools.core.Frame(frame: int, sequence: int, step: int, timestamp: float = 0.0, metrics: List[dataclass] = <factory>, captures: List[dataclass] = <factory>)

Bases: object

captures: List[dataclass]
filter_captures(sensor)
frame: int
classmethod from_dict(kvs: Optional[Union[dict, list, str, int, float, bool]], *, infer_missing=False) A
classmethod from_json(s: Union[str, bytes, bytearray], *, parse_float=None, parse_int=None, parse_constant=None, infer_missing=False, **kw) A
get_captures_df() DataFrame
Returns

Captures List for a Solo Frame

Return type

pd.DataFrame

get_file_path(capture: Capture) str
Returns

File path of given capture having current sequence as root

Return type

str

get_metrics_df() DataFrame
Returns

Solo Frame Metrics

Return type

pd.DataFrame

metrics: List[dataclass]
classmethod schema(*, infer_missing: bool = False, only=None, exclude=(), many: bool = False, context=None, load_only=(), dump_only=(), partial: bool = False, unknown=None) SchemaF[A]
sequence: int
step: int
timestamp: float = 0.0
to_dict(encode_json=False) Dict[str, Optional[Union[dict, list, str, int, float, bool]]]
to_json(*, skipkeys: bool = False, ensure_ascii: bool = True, check_circular: bool = True, allow_nan: bool = True, indent: Optional[Union[int, str]] = None, separators: Optional[Tuple[str, str]] = None, default: Optional[Callable] = None, sort_keys: bool = False, **kw) str
class pysolotools.core.InstanceSegmentationAnnotation(type: str, id: str, sensorId: str, description: str, extra_data: Union[~CatchAllVar, NoneType], imageFormat: str, dimension: List[int], filename: str, instances: List[pysolotools.core.models.solo.InstanceSegmentationLabel] = <factory>)

Bases: Annotation

dimension: List[int]
filename: str
imageFormat: str
instances: List[InstanceSegmentationLabel]
class pysolotools.core.Keypoint(index: int, location: List[float], state: int, cameraCartesianLocation: List[float] = <factory>)

Bases: object

cameraCartesianLocation: List[float]
index: int
location: List[float]
state: int
class pysolotools.core.KeypointAnnotation(type: str, id: str, sensorId: str, description: str, extra_data: Union[CatchAllVar, NoneType], templateId: str, values: List[pysolotools.core.models.solo.KeypointLabel])

Bases: Annotation

templateId: str
values: List[KeypointLabel]
class pysolotools.core.KeypointAnnotationDefinition(id: str, description: str, extra_data: Union[CatchAllVar, NoneType], template: pysolotools.core.models.solo.KeypointTemplateDefinition)

Bases: AnnotationDefinition

template: KeypointTemplateDefinition
class pysolotools.core.RGBCameraCapture(id: str, type: str, description: str, position: List[float], rotation: List[float], annotations: List[dataclass], velocity: List[float], acceleration: List[float], filename: str, imageFormat: str, dimension: List[float], projection: str, matrix: List[float])

Bases: Capture

acceleration: List[float]
dimension: List[float]
filename: str
imageFormat: str
matrix: List[float]
projection: str
rotation: List[float]
velocity: List[float]
class pysolotools.core.SemanticSegmentationAnnotation(type: str, id: str, sensorId: str, description: str, extra_data: Union[CatchAllVar, NoneType], imageFormat: str, dimension: List[int], filename: str, instances: List[pysolotools.core.models.solo.SemanticSegmentationLabel])

Bases: Annotation

dimension: List[int]
filename: str
imageFormat: str
instances: List[SemanticSegmentationLabel]