At CHILI Lab, we research innovative use of computer-based technologies for learning and teaching. To this end, we have developed over the years a solid set of open-source libraries that may be useful to a large audience.
This page lists the one that have been officially released, and are ready for use.
You can browse our other projects on GitHub.
qml plugins
We have written and are actively using a number of small, powerful and reusable software components, in the form of QML plugins for our QtQuick applications; most of them are supported on desktop and Android:
- github.com/chili-epfl/qml-imu – Plugin that fuses, filters and exports inertial sensor data
- github.com/chili-epfl/qml-logger – Plugin for file logging from QML
- github.com/chili-epfl/qml-cache – Persistent app-specific key-value store accessible from QML
- github.com/chili-epfl/qml-tcpsockets – QML wrappers for QTcpServer and QTcpSocket
- github.com/chili-epfl/qml-bluetooth-extras – QML wrappers for missing Qt Bluetooth objects
- github.com/chili-epfl/qml-ARToolkit – QML wrapper for ARToolkit
- github.com/chili-epfl/qml-chilitags – QML wrapper for Chilitags, a fiducial marker tracker, on desktop & Android
- github.com/chili-epfl/qml-cvcamera – QML wrapper for fast OpenCV camera access on desktop & Android (probably outdated now that camera support in QtMultimedia is better)
- github.com/chili-epfl/qtphysics-unofficial – QML wrapper around Bullet Physics
libdots, High-Accuracy 2D Localization with Structured Patterns
Please follow: www.epfl.ch/labs/chili/libdots
Chilitags, Robust Fiducial Markers for Augmented Reality
chilitags
is a C++ cross-platform software library for the detection and identification of 2D fiducial markers. Their purpose is to be printed and placed on objects from the real world, to form the basis or Augmented Reality (AR) applications. Using a camera, the position of the tagged objects can be acquired by a computer and used to virtually display information on them.
Chilitags were developed internally for projects like Metroscope or TapaCarp. The following videos show real applications of Chilitags for experiments in tangible learning or paper-based interfaces. Another demonstration video shows how chilitags deal with a worst case scenario in an unevenly lit, large scene.
Language: C++
Platforms: Linux, Windows, MacOSX
Main dependencies: OpenCV
License: LGPL3
[Documentation] [Get the source code (GIT)]
[ Get the source (zip file)] [Download pre-rendered tags]
Other open-source projects
agportal
CHILI’s Activity Graph (to be deployed as a CakePHP app)
AR.js
chiligeom
[superseeded by chilitags!] 2D/3D geometry helpers: projective transformation, pose estimation…
chilitags
Robust Fiducial Markers for Augmented Reality
chilitags-testdata
Data for the automated test of chilitags
cowriter-letters-extractor
A Qt app that helps with the extraction of subparts of images
cowriter-trajectory-generator
A Qt app that reads a SVG file and generate a 2D trajcetory suitable for execution on a robot
eTapaCarp
TapaCarp Online Web App
hoap3_description
ROS package that contains HOAP3 robot URDF and meshes. Based on EPFL’s RobotToolKit models.
hoap3_moveit_config
ROS MoveIt configuration for HOAP3
hoap3_write
A set of scripts to help HOAP3 to write letters for the CoWriter project. Based on the ROS toolset.
jsBasicSetup
Basic javascript app setup, using CoffeeScript, Grunt, RequireJS and Mocha (Unit testing)
minimalkb
A SQLite-backed minimalistic knowledge based for robotic application. Mostly KB-API conformant.
nao_camera
ROS driver for Nao cameras
pykb
A Python API to access a KB-API conformant knowledge base
ros4nao
Helpers to compile and distribute ROS for Aldebaran’s Nao
ros_markers
ROS wrapper for the EPFL’s chilitags library
tangible-meteor
Tangible apps with Meteor.
videoTracker
A c++ application tracking Chilitags in a .avi video and logging their position at each frame. Used as a post-analysis tool for an eye-tracking experiment.
websocketTracker
A very simple example of a cpp websocket communicating with a web page.