Open-source software I've developed

State Estimation Robot Walking

State Estimation Robot Walking (SEROW) is a 3D base and CoM estimation framework for legged robot walking. SEROW is available as a ROS1/2 – C/C++ and Python package.

 

Legged Contact Detection

Legged Contact Detection (LCD) is a quality of contact estimation supervised deep learning framework for legged robots. It utilizes leg Force/Torque and IMU measurements to predict the probability of Stable Contact and Unstable Contact. LCD is implemented as a Python + PyTorch package.

NAO WALK

NAO WALK is a walking engine for the NAO Humanoid Robot implemented as a NaoQi module in C/C++. Additionally, a ROS1 interface is offered to allow for real-time communication with the robot.

 

GAIT-PHASE ESTIMATION

Gait-Phase Estimation Module (GEM) is an unsupervised learning framework to estimate the phase of the gait in humanoid robot walking. GEM is offered as a ROS1 – Keras/Python package.

WHOLE-BODY INVERSE KINEMATICS

Whole-Body Inverse Kinematics is a ROS1/C++ package that performs hierarchical task-based inverse kinematics at the velocity level for open-kinematic chains such as legged robots, by respecting  joint positional and velocity constraints.

cublox

cublox is a standalone C/C++ and CUDA library for real-time 3D occupancy mapping. It maintains an ego-centric voxel grid centered on the robot and updates it incrementally from point clouds. When the robot drifts far enough from the grid origin, the map recenters on the GPU so the robot stays near the center of a fixed-size sliding window.