The RoboHow partners follow an open-source software strategy. The RoboHow software infrastructure is based on ROS and most of the components developed in the project are available as free or open-source software. The following links give an overview of software components that are developed or maintained as part of the project.
3D hand tracking library
This library by partner FORTH tracks the 3D position, orientation and full articulation of a human hand from marker-less visual observations. It estimates the full articulation of a hand in unconstrained motions using RGB-D cameras without markers at a rate of 20fps in modern architectures. The FORTH 3D Hand Tracking library is available with a free license for non-commercial use for MS Windows and Linux operating systems.
The CRAM plan language is the core of the CRAM framework and provides the basic functionality to write flexible and robust robot control programs. In \robohow, CRAM is being extended towards executing motions specified in terms of constraints on the constraint- and optimization-based control framework.
iTaSC (instantaneous Task Specification using Constraints) is a framework to generate robot motions by specifying constraints between (parts of) the robots and their environment. iTaSC was born as a specification formalisms to generalize and extend existing approaches, such as the Operational Space Approach, the Task Function Approach, the Task Frame Formalism, geometric Cartesian Space control, and Joint Space control.
KnowRob is a knowledge processing system that combines knowledge representation and reasoning methods with techniques for acquiring knowledge from different sources and for grounding the knowledge in a physical system. It became the main knowledge base in the ROS ecosystem and is actively being used in different labs and for several EU projects (e.g. RoboEarth, SRS, Sherpa, ACAT).
The ``Physics-aware Robot Manipulation'' package provides tools that help robots to infer the consequences of their parameterized manipulation actions in order to make competent and failure-aware decisions during their course of action. It allows asking queries using a first-order language that are answered based on detailed physics-based simulations of parameterized robot control programs.
Semantic relations checking
The goal of the geometric relations semantics is to provide semantic checking for calculations with geometric relations between rigid bodies on top of existing geometric libraries, which are only working on specific coordinate representations. Since there are already a lot of libraries with good support for geometric calculations on specific coordinate representations, we do not want to design yet another library but rather will extend these existing geometric libraries with semantic support.
Hierarchical solver for the Stack of Tasks control framework
As part of RoboHow, a generic optimization solver for hierarchical quadratic problems has been developed and made available as an open-source library.