robokudo.annotators.storage

Storage writer annotator for RoboKudo.

This module provides an annotator for storing sensor data in MongoDB. It supports:

  • MongoDB integration

  • CAS data persistence

  • View data storage

  • Database management

  • Configurable database settings

The module is used for:

  • Data recording

  • Offline processing

  • Dataset creation

  • Experiment logging

Classes

StorageWriter

Annotator for storing sensor data in MongoDB.

Module Contents

class robokudo.annotators.storage.StorageWriter(name: str = 'StorageWriter', descriptor: StorageWriter = Descriptor())

Bases: robokudo.annotators.core.BaseAnnotator

Annotator for storing sensor data in MongoDB.

This annotator provides methods to store sensor data in a MongoDB database, allowing for data recording and offline processing without using ROS bag files.

class Descriptor

Bases: robokudo.annotators.core.BaseAnnotator.Descriptor

Configuration descriptor for storage writer.

class Parameters

Parameter container for storage configuration.

db_name: str = 'rk_scenes'

Database name

drop_database_on_storage: bool = True

Whether to clear database before recording

parameters
storage
update() py_trees.common.Status

Store current CAS data in MongoDB.

Creates a deep copy of the CAS, flattens it into a dictionary, and stores both views and CAS data in the database.

Returns:

SUCCESS if storage successful, FAILURE otherwise