Skip to main content

Data-collection logging (MCAP over Zenoh) and detection-dataset tooling (YOLO / RF-DETR) for the Telekinesis SDK.

Project description

GitHub  •  LinkedIn  •  X  •  Discord

Telekinesis Data Engine

Telekinesis Data Engine turns real-world, online-collected robot and perception data into standard, trainable datasets within the Telekinesis ecosystem.

Features

It includes:

  • MCAP logging: capture every publisher on the Zenoh network into a single self-describing .mcap file, and read it back into live objects
  • Detection-dataset logging: write labelled frames straight to a trainable YOLO (Ultralytics) or RF-DETR (COCO) dataset, with automatic train/val/test routing
  • Decoupled pub/sub writers so disk I/O never stalls the capture loop
  • Lossless conversion and merging between the YOLO and COCO / RF-DETR layouts
  • FiftyOne-based visualization of detection datasets

Requirements

Current support for Python versions - 3.10, 3.11, 3.12.

Note

  • Telekinesis Data Engine is currently in its early development phase (pre-1.0).
  • There will be continuous version updates which introduce new features and optimizations. To have the latest features, please always install or upgrade to the latest version of the package.

Installation

pip install telekinesis-dataengine

Example

Run a sample python code to quickly test your installation.

  1. Create a Python file named dataengine_example.py in a directory of your choice, and copy paste the below:

    import numpy as np
    from telekinesis.dataengine import DetectionLogger
    
    # Create a logger that writes an Ultralytics YOLO dataset.
    # categories=None builds the class table dynamically from what you log.
    logger = DetectionLogger.create("yolo", "results/demo_dataset", mode="overwrite")
    
    # A labelled frame: a raw image (HxWxC) + COCO-style boxes [x, y, w, h].
    image = np.zeros((480, 640, 3), dtype=np.uint8)
    annotations = [{"category_id": 0, "bbox": [100, 120, 80, 60]}]
    
    logger.log(image, annotations)   # auto-routed 80/10/10 across train/val/test
    logger.close()                   # writes images/, labels/, and data.yaml
    
    print("Dataset written to results/demo_dataset")
    
  2. On a terminal, navigate to the directory where dataengine_example.py was created, and run:

    python dataengine_example.py
    

    Expected output:

    Dataset written to results/demo_dataset
    

    Swap "yolo""rfdetr" to emit a COCO dataset instead — the call sites stay the same.

You are now set up with Telekinesis Data Engine.

Resources

Support

For issues and questions:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

telekinesis_dataengine-0.0.3.tar.gz (33.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

telekinesis_dataengine-0.0.3-py3-none-any.whl (33.7 kB view details)

Uploaded Python 3

File details

Details for the file telekinesis_dataengine-0.0.3.tar.gz.

File metadata

  • Download URL: telekinesis_dataengine-0.0.3.tar.gz
  • Upload date:
  • Size: 33.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for telekinesis_dataengine-0.0.3.tar.gz
Algorithm Hash digest
SHA256 630ac699816be397a5cdfc84a31560319b06fec9b2cb08b1d53baf08339b1639
MD5 58334effea4940bba7683939613fbb34
BLAKE2b-256 254a2a398650806b84d16ea790d75a11835a7a1ae6e25a461031886e72442d59

See more details on using hashes here.

File details

Details for the file telekinesis_dataengine-0.0.3-py3-none-any.whl.

File metadata

File hashes

Hashes for telekinesis_dataengine-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 c798c265841709d014bc1cec0854b28689b0ab1803bc77ec9568346461c78a3d
MD5 7575faedee03060fe722e2750818c5b0
BLAKE2b-256 072636651730076bae0c0b3f67b83b0a77abc7b87c43d880e4f2efbbb32a37c5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page