SeqIKPy: a Python package for inverse kinematics in insects
SeqIKPy: a Python package for inverse kinematics in insects - Published in JOSS (2026)
Science Score: 92.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
○codemeta.json file
-
○.zenodo.json file
-
✓DOI references
Found 7 DOI reference(s) in README and JOSS metadata -
✓Academic publication links
Links to: zenodo.org -
✓Committers with academic emails
2 of 4 committers (50.0%) from academic institutions -
✓Institutional organization owner
Organization nely-epfl has institutional domain (ramdya-lab.epfl.ch) -
✓JOSS paper metadata
Published in Journal of Open Source Software
Keywords
Repository
Sequential inverse kinematics pipeline.
Basic Info
- Host: GitHub
- Owner: NeLy-EPFL
- License: apache-2.0
- Language: Python
- Default Branch: main
- Homepage: https://nely-epfl.github.io/sequential-inverse-kinematics/
- Size: 72 MB
Statistics
- Stars: 9
- Watchers: 0
- Forks: 0
- Open Issues: 2
- Releases: 2
Topics
Metadata Files
README.md
🪰 Overview
SeqIKPy is a Python package that provides an implementation of inverse kinematics (IK) that is based on the open-source Python package IKPy. In constrast to the current IK approaches that aims to match only the end-effector, SeqIKPy is designed to calculate the joint angles of the fly body parts to align the 3D pose of the entire kinematic chain to a desired 3D pose. In particular, you can use SeqIKPy in the pipeline shown below.
📐 Features
- Pose alignment: Align of 3D pose data to a fly biomechanical model, e.g., NeuroMechFly.
- Leg inverse kinematics: Calculate leg joint angles using sequential inverse kinematics.
- Head inverse kinematics: Calculate head and antenna joint angles using the vector dot product method.
- Visualization and animation: Visualize and animate the results in 3D.
🗂️ Summary of directories
.
├── data: Folder containing the sample data.
├── docs: Documentation for the website.
├── examples: Examples and tutorials on how to use the package.
├── seqikpy: Main package.
└── tests: Tests for the package.
📚 Documentation
Documentation can be found here.
🛠️ Installation
If you aim to purely use SeqIKPy as a dependency for your project, you can install the newest version of the package manually by running the following line in the terminal: ```bash
Optionally create/activate a virtual environment first. Then,
$ pip install seqikpy ```
If you plan to follow the tutorial or help develop SeqIKPy, you should download the data/ directory, which contains sample data for demonstration and testing. In this case, you should clone this GitHub repository and installing it locally instead of downloading it from PyPI:
```bash
Optionally create/activate a virtual environment first. Then,
$ git clone git@github.com:NeLy-EPFL/sequential-inverse-kinematics.git
... or with HTTP: git clone https://github.com/NeLy-EPFL/sequential-inverse-kinematics.git
$ cd sequential-inverse-kinematics/
Install the package locally (development mode)
$ pip install -e ".[dev]" --config-settings editable_mode=compat
... where editable_mode=compat helps static code analyzers in IDEs parse your code better
Alternatively, use uv for faster dependency resolution (pip install uv first)
$ uv pip install -e ".[dev]" ```
🏁 Quick Start
Please see the quick start guide here.
💻 Contributing
We welcome contributions from the community. If you would like to contribute to the project, please refer to the contribution guidelines. Also, read our code of conduct. If you have any questions, please feel free to open an issue or contact the developers.
📖 License
This project is licensed under the Apache 2.0 License.
🐞 Issues
If you encounter any bugs or request a new feature, please open an issue in our issues page.
💬 Citing
If you find this package useful in your research, please consider citing it using the following BibTeX entry:
bibtex
@software{ozdil2024seqikpy,
author = {{\"O}zdil, Pembe Gizem and Wang-Chen, Sibo and Ning, Chuanfang and Ijspeert, Auke and Ramdya, Pavan},
title = {sequential-inverse-kinematics: v1.0.0},
month = jun,
year = 2024,
publisher = {Zenodo},
version = {v1.0.0},
doi = {10.5281/zenodo.12601316},
url = {https://doi.org/10.5281/zenodo.12601316}
}
Owner
- Name: Neuroengineering Laboratory @EPFL - Ramdya Lab
- Login: NeLy-EPFL
- Kind: organization
- Website: https://ramdya-lab.epfl.ch/
- Repositories: 42
- Profile: https://github.com/NeLy-EPFL
JOSS Publication
SeqIKPy: a Python package for inverse kinematics in insects
Authors
Neuroengineering Laboratory, Brain Mind Institute, EPFL, Lausanne, Switzerland, Biorobotics Laboratory, Institute of Bioengineering, EPFL, Lausanne, Switzerland
Biorobotics Laboratory, Institute of Bioengineering, EPFL, Lausanne, Switzerland
Tags
inverse kinematics motion analysis neuroscienceGitHub Events
Total
- Delete event: 3
- Member event: 1
- Pull request event: 4
- Issues event: 1
- Watch event: 8
- Push event: 48
- Pull request review event: 14
- Pull request review comment event: 34
- Create event: 4
Last Year
- Delete event: 3
- Pull request event: 3
- Issues event: 1
- Watch event: 5
- Push event: 45
- Pull request review event: 13
- Pull request review comment event: 33
- Create event: 3
Committers
Last synced: about 2 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Gizem Ozdil | p****l@e****h | 171 |
| Sibo Wang | s****g@e****h | 19 |
| alobiz-a | 7****a | 1 |
| Chuanfang-Neptune | n****g@h****m | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: about 1 month ago
All Time
- Total issues: 1
- Total pull requests: 2
- Average time to close issues: N/A
- Average time to close pull requests: about 1 month
- Total issue authors: 1
- Total pull request authors: 2
- Average comments per issue: 0.0
- Average comments per pull request: 0.0
- Merged pull requests: 2
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 1
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 1
- Pull request authors: 0
- Average comments per issue: 0.0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- gizemozd (1)
Pull Request Authors
- gizemozd (1)
- Chuanfang-Neptune (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- pypi 14 last-month
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 2
- Total maintainers: 1
pypi.org: seqikpy
Inverse kinematics module for Drosophila
- Homepage: https://github.com/NeLy-EPFL/sequential-inverse-kinematics.git
- Documentation: https://seqikpy.readthedocs.io/
- License: Apache License 2.0
-
Latest release: 1.0.3
published about 1 year ago
Rankings
Maintainers (1)
Dependencies
- ikpy *
- matplotlib *
- mycolorpy *
- nptyping *
- numpy ==1.22
- opencv-python *
- pandas *
- scipy ==1.8.0
- tqdm *
- actions/checkout v3 composite
- actions/deploy-pages v2 composite
- actions/setup-python v4 composite
- actions/upload-pages-artifact v2 composite
- ghp-import *
- jupyter-book *
- matplotlib *
- numpy *
- sphinx *