CoViS (Cognitive Vision Software) is a C++ computer vision library framework. Its core functionality is the extraction of an Early Cognitive Vision inspired scene representation. Based on this additional processes (e.g., motion estimation, model accumulation, creation of higher level features) are provided.
CoViS is supposed to be used as an Early cognitive vision level which bridges the gap between early vision pixel wise processing and cognitive vision tasks and which is in particular useful for bootstrapping processes in cognitive robots. It is the basis for all applications developed by SDU within the PACO-PLUS project.
CoViS is made available under a BSD license. Access is currently by personal request since we are still improving the documentation and demo programs. We expect a full public release by fall 2010.
ADGr, the BoxGraspingSuite, is a package for Box Approximation, Decomposition, and Grasping. BADGr provides modules to approximate the shape of a point cloud (possibly from sensor data) by box primitives. These box primitives then serve as a base for the generation of box-based pre-grasp hypotheses for robot grippers. BADGr allows to implement algorithms and experiments on shape approximation and grasping, using the Columbia grasp simulator GraspIt!. BADGr uses a client/server interface to the grasp simulator GraspIt! and is therefore not standalone. The program envelops all the experimental setups used for KTH publications on BADGr in the PACO-PLUS project.
Provides estimation of the hand pose in terms of orientation and joint angles. It's based on classification of a monocular view against a database of hand pose synthetic images generated with Poser software.
Provides real-time estimation of the hand pose in terms of orientation with respect to the camera and joint angles. It's based on classification of a monocular view against a database of hand pose synthetic images generated with Poser software. After that classification, the best candidates are compared with previous estimations to avoid glitches. The library also shows which is the closest match from the database. More information about the system can be found in:
Javier Romero, Hedvig Kjellstrom, Danica Kragic. Hands in Action: Real-Time 3D Reconstruction of Hands in Interaction with Objects. In ICRA 2010
The IVT is an object-oriented computer vision library that offers various functionality that is necessary for developing robot vision systems, such as a camera interface and various ready-to-use image capture modules, a generic camera model, camera calibration, mathematic data structures and functions, various image processing functions for filtering, segmentation, 3D reconstruction, recognition, tracking, and particle filtering. The IVT is a platform independent standalone library with no dependencies to other libraries. It offers its own multi-platform GUI toolkit with implementations for various target platforms (Win32 API, Cocoa for Mac OS X, GTK for Linux, or Qt)
SPOAC: Symbolic Planning Interface for Object Action Complexes» show details
SPOAC provides a network interface and a software framework for symbolic execution of OACs on a robot. It contains a network interface to a symbolic planner, an OAC database server and a GUI through which all three parts can be controlled and monitored.
The PKS plan execution monitor is designed to control plan generation and replanning activities in an online system using the PKS planner. The plan execution monitor makes use of the message passing protocol provided by the PLComm library, and includes interface code for the network services provided by PLComm. It also includes sample interface code that can be adapted for other network transport mechanisms (e.g., ICE). The plan execution monitor provides a network-based front-end to the PKS planner and its services (e.g., domain specification, plan generation, and plan exploration), but can also be used in an “offline” mode, to simulate planning and replanning scenarios.
he high-level domain definitions we have developed during PACO-PLUS will be made available as part of a collection of benchmark planning problems. This collection with include descriptions of the planning domains for the SDU robot/vision system and the KIT ARMAR robot. It will also include examples of simple dialogue problems. The domain description files will be provided primarily as PKS input files, but also converted to PDDL where possible.
Dynamic Motor Primitives for discrete and periodic movements» show details
Motor knowledge is an integral part of the OAC formalism. It is often represented by dynamic movement primitives (DMPs). The code implementing periodic and discrete dynamic movement primitives as well as the generalizing the DMPs across the space of the observed movements is provided as a Matlab toolbox. The main application is programming of complex robot skills by demonstration, both for industrial and service robots. The software can also be used for educational purposes.
Inventor Physics API (IPSA) is an extension of the Open Inventor toolkit with physics objects using the ODE library for simulating rigid body dynamics. IPSA allows the generation of 3D animations and simulations by considering physical attributes such as shape, mass, gravitation, friction etc. The simulations may be programmed directly using the Open Inventor extension classes or more preferably by writing an Open Inventor Scene description file.
Several examples for both methods are provided with the code.
Software components needed for the control of the Karlsruhe Humanoid head. This includes an API for the access to the actuators and sensors of the head. This API allows using the head together with applications of other researchers in different labs. The applications range from visual tasks (grasping, object recognition and localization) to human-robot interaction.
This library facilitates the exchange of messages between the high-level planning components (e.g., action planner and plan execution monitor) and other modules in a multi-component software system. The library is divided into three main parts: (i) a lightweight network transport mechanism, based on sockets, providing a range of communication services (i.e., point-to-point, subscription, and broadcast messaging), (ii) a predefined message exchange protocol for requesting and delivering high-level plans to particular components in the system, and (iii) interface code for operating with the PKS planner, and for using plans generated by other external services.