pycapacity

Github Documentation pip

PyPI package Tests Docs status

What is pycapacity?

Python package pycapacity provides a set of tools for evaluating task space physical ability metrics for humans and robots, based on polytopes and ellipsoids. The aim of pycapacity is to provide a set of efficient tools for their evaluation in an easy to use framework that can be easily integrated with standard robotics and biomechanics libraries. The package implements several state of the art algorithms for polytope evaluation that bring many of the polytope metrics to the few milliseconds evaluation time, making it possible to use them in online and interactive applications.

The package can be easily interfaced with standard libraries for robotic manipulator rigid body simulation such as robotic-toolbox or pinocchio, as well as human musculoskeletal model biomechanics softwares opensim and biorbd. The package can also be used with the Robot Operating System (ROS).

The package additionally implements a set of visualization tools for polytopes and ellipsoids based on the Python package matplotlib intended for fast prototyping and quick and interactive visualization.

See full API documentation and docs.

Installation

The package can be easily installed using pip:

pip install pycapacity

pycapacity for research

We are very happy that pycapacity has been used as a component of several research project and has made its way to several scientific papers. We are hoping that this trend is going to continue as the project matures and becomes more robust!

A short resume paper about pycapacity has been published in the Journal of Open Source Software, see full paper

If you are interested in citing pycapacity in your research, we suggest you to cite our paper:

@article{Skuric_Pycapacity_a_real-time_2023,
author = {Skuric, Antun and Padois, Vincent and Daney, David},
doi = {10.21105/joss.05670},
journal = {Journal of Open Source Software},
month = sep,
number = {89},
pages = {5670},
title = {Pycapacity: a real-time task-space capacity calculation package for robotics and biomechanics},
url = {https://joss.theoj.org/papers/10.21105/joss.05670},
volume = {8},
year = {2023}
}

Demo video

In this video the polytopes of the human arm, based on the 50 muslce 7 degrees of freedom, musculoskeletal model and the Franka Emika Panda roobt are calculated in real time using the pycapacity package. The experiment in the video is a part of the our recent paper.