thecyberiad.net logo



theCyberiad is a library of C++ source code.
It contains algorithms for artificial intelligence, computer vision, and robotics.

documents, this website and software produced by david rawlinson

 
Publications
IEEE Robotics & Automation Magazine 2008: Ways to tell robots where to go: Directing autonomous robots using topological instructions
David Rawlinson and Ray Jarvis

Robotica 2007: Topologically-Directed Navigation
David Rawlinson and Ray Jarvis

ACRA 2006: Person tracking, pursuit and interception by mobile robot
Punarjay Chakravarty, David Rawlinson and Ray Jarvis

IROS 2006:Simple yet effective visuo-spatial mapping
David Rawlinson and Ray Jarvis

ICRA 2006:Bi-modal search using complementary sensing (olfaction/vision) for odour source localization
Gideon Kowadlo, David Rawlinson, R. Andy Russell and Ray Jarvis

ACRA 2005:Panoramic horizon recognition
David Rawlinson and Ray Jarvis

ACRA 2004:Distributed visual servoing of a mobile robot, for surveillance applications
David Rawlinson, Punarjay Chakravarty and Ray Jarvis
 
Robot videos
Topologically-directed navigation in laboratory, and around.
Lab., figure-8 route
video81, video82

Lab., figure-q route
videoq1, videoq2

Leaving lab.
videof1, videof2
the robot, click to enlarge
Robot used in these videos
 
Source Code
The library of source code can be downloaded here. Use of the code is restricted only by the GPL.

It contains thousands of functions in object-oriented C++, using templates. The code only depends on ANSI C++ libraries. The QT4 toolkit is used for graphical interface components.

Algorithms in the library include:
  • Occupancy Grid (robotics)
  • Particle Filter (robotics)
  • Distance Transform (robotics)
  • Behavioural Dynamics (robotics)
  • Voronoi Approx. (robotics)
  • Subsumption model (robotics)
  • Topological maps (robotics)
  • Topological directions (robotics)
  • Kohonen SOM (ai)
  • Finite State model (ai)
  • RANSAC search (ai)
  • A* search (ai)
  • Combinatorial optimization (ai)
  • Stochastic Hill-Climber (ai)
  • Roulette Selection (ai)
  • Simulated Annealing (ai)
  • Evolutionary Algorithms (ai)
  • Image smoothing (computer vision)
  • Image normalization (computer vision)
  • Image convolution (computer vision)
  • Image pyramids (computer vision)
  • Image contours (computer vision)
  • Image moments (computer vision)
  • Histogram equalization (computer vision)
  • Lowe's SIFT (computer vision)
  • Canny Edges (computer vision)
  • SUSAN features (computer vision)
  • Watershed transform (computer vision)
  • Connected components (computer vision)
  • Region labelling (computer vision)
  • Colour constancy (computer vision)
  • Region skeleton (computer vision)