According to a Freshmeat
announcement, version 2.0 of the Mimas Vision
Toolkit is now available. Mimas, named after one of the moons of
Saturn, is a real-time, C++ library of machine vision
algorithms. It includes a wide range of tools used in robotics
applications including edge detection, corner detection, various
filters, optic flow, tracking, and blob analysis. Mimas was developed
for use with several European Union robotics projects. It is being used
on the MiCRoN
miniature robotics project on which we've previously reported. The
software is also used in the European Nanrobotics
project. Full online
documentation is available and there's also a Mimas mailing list and
Mimas
Wiki where you can find more information. Mimas is Free Software
licensed under the GNU LGPL.
Thanks for mentioning our project ;)
To show you, how easy it is, to access video-devices (using
video4linux), have a look at this code:
#include <fstream>
#include <GL/glut.h>
#include "image_v4linput.h"
#include "image_mesaoutput.h"
using namespace std;
using namespace mimas;
// Minimal program for accessing the video-device and displaying the
// captured frames.
int main( int argc, char *argv[] )
{
int retVal = 0;
try {
glutInit( &argc, argv );
x11_display display;
image_v4linput< rgba< unsigned char > > input( "/dev/video0" );
image_mesaoutput< rgba< unsigned char > > window( &display );
image< rgba< unsigned char > > img;
while ( input ) {
input >> img;
window << img;
};
} catch ( exception &e ) {
cerr << e.what() << endl;
retVal = 1;
};
return retVal;
}
In a similar fashion one can do fourier-transforms, edge-detection,
linear-algebra, convolutions and element-wise operations.