Skip to main content

Module for connecting to cameras and hardware devices within the Telekinesis ecosystem.

Project description

GitHub  •  LinkedIn  •  X  •  Discord

medulla: Hardware Communication Skills

medulla is a module in the Telekinesis SDK for connecting to cameras and hardware devices. It provides tools to interface with various 2D and 3D cameras and integrate them into Telekinesis applications. It includes:

  • 2D and 3D camera interfacing
  • Data acquisition and preprocessing
  • Time-synchronized sensor streams
  • Integration with Telekinesis modules (vitreous, retina, cornea, pupil)

This library is used for robotics applications that require camera connectivity, including vision pipelines, multi-camera robot perception, and Physical AI agent integration.

medulla is currently in its early development phase (pre-1.0). There will be continuous minor version updates that may introduce new features and improvements. To ensure compatibility and have the latest features, please always install or upgrade to the latest version of the package.

Installation

  1. Create an isolated environment to avoid dependency conflicts. We recommend installing Miniconda by following the instructions from here.

  2. Create a new conda environment called telekinesis-medulla:

    conda create -n telekinesis-medulla python=3.11
    
  3. Activate the environment:

    conda activate telekinesis-medulla
    
  4. Install medulla using pip:

    We currently support Python versions - 3.11, 3.12. Ensure your environment is in the specified Python version.

    pip install telekinesis-medulla
    
  5. Install BabyROS:

    medulla requires BabyROS. Follow the official documentation to install it.

  6. Install the additional dependencies to run the official examples:

    pip install telekinesis-medulla[examples]
    

Additional Setup

Camera drivers and vendor SDKs require additional installation steps. Please follow the official documentation for vendor-specific SDK setup.

IDS cameras: Installing the ids extras (pip install telekinesis-medulla[ids]) fetches ids_peak, ids_peak_ipl, and ids_peak_icv directly from IDS Imaging Development Systems GmbH's own PyPI distribution. By installing these packages, you become the licensee under the IDS Software Suite License Terms and are bound by its conditions.

Example

Run a sample Python script to quickly test your installation.

  1. Create a Python file named medulla_example.py in a directory of your choice and paste the following:

    from telekinesis.medulla.cameras import webcam
    
    camera = webcam.Webcam(name="my_webcam", camera_id=0)
    camera.connect()
    image = camera.capture_single_color_frame()
    print(image)
    camera.disconnect()
    
  2. Activate the previously created conda environment. On a terminal, navigate to the directory where medulla_example.py was created and run:

    python medulla_example.py
    

    Expected output: Some logs and an image from the connected webcam in the below format:

     ...
     [[[158 155 140]
     [159 155 142]
     [160 154 144]
     ...
     [255 255 252]
     [255 255 251]
     [255 255 251]]
     ...
    

Supported Cameras

Vendor Status
Webcam Available
IDS Available
ZIVID Coming Soon
SensoPart Coming Soon
MechMind Coming Soon
Azure Kinect Coming Soon
Intel RealSense Coming Soon

Resources

Support

For issues and questions:

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_medulla-0.1.8.tar.gz (15.8 kB view details)

Uploaded Source

Built Distribution

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

telekinesis_medulla-0.1.8-py3-none-any.whl (14.5 kB view details)

Uploaded Python 3

File details

Details for the file telekinesis_medulla-0.1.8.tar.gz.

File metadata

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

File hashes

Hashes for telekinesis_medulla-0.1.8.tar.gz
Algorithm Hash digest
SHA256 c45df0206b0ae85233927920cdf3212cbea176b927e6aff24cb2d7860eccce18
MD5 65d6d952ab951eea4e46fafa3f3461d2
BLAKE2b-256 853ee815d36a6a4d9db87e2c269ad01ef22f21f98846ca78f2ceacaa1363e15a

See more details on using hashes here.

File details

Details for the file telekinesis_medulla-0.1.8-py3-none-any.whl.

File metadata

File hashes

Hashes for telekinesis_medulla-0.1.8-py3-none-any.whl
Algorithm Hash digest
SHA256 dc88a726d11b196afc0d2180540653a279d225b300687b67615af71ebde4ac3d
MD5 98dadf5d727df84b50c167a25df90c06
BLAKE2b-256 d7a6c422603c1ceabf61042a304f368b8e598e6a044c7a2ae08dcb54163f847b

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