HornetsEye
Contents |
Introduction
HornetsEye is a Ruby-extension for real-time computer vision under GNU/Linux offering interfaces to do image- and video-I/O with RMagick, Xine, firewire digital camera (DC1394) and video for Linux (V4L).
HornetsEye also is an attempt to use the Mimas library and create a minimalistic and consistent real-time computer vision library.
- minimalistic: The library is focused on real-time computer vision. Existing libraries are being made used of.
- consistent:: A non-redundant set of data-types is used. Also the library tries to stay consistent with existing libraries.
The logo was created using GIMP and it is based on a nice photo published by Olivander. A hornet is capable of navigating and detecting objects with the limited resolution of its compound eyes.
Simple Webcam Application
#!/usr/bin/ruby require 'hornetseye' require 'Qt' app=Qt::Application.new(ARGV) class VideoWidget < Qt::Label def initialize( parent = nil ) super @input = Hornetseye::V4LInput.new startTimer( 0 ) end def timerEvent( e ) str = @input.read.to_magick.to_blob { self.format = "PPM"; self.depth = 8 } pix = Qt::Pixmap.new pix.loadFromData( Qt::ByteArray.fromRawData( str, str.size ) ) setPixmap( pix ) resize( pix.width, pix.height ) update end end win = VideoWidget.new win.show app.exec
The webcam application uses HornetsEye, RMagick, and qt4-ruby.
To install qt4-qtruby-1.4.7 I had to change the script ./smoke/qt/qtguess.pl.in. Otherwise on gets an error message like this:
problem with QListWidget missing parent at ../../kalyptus/kalyptusCxxToSmoke.pm line 2207.
Also qt4-qtruby-1.4.7 seems to have a memory leak in Qt::ByteArray. Thanks to Richard Dale the problem was solved and the bugfix will be included in the next release of qt4-qtruby. The modified code already is available via the KDE source repository.
See Hornetseye homepage for more examples.
Downloads
Hornetseye-0.13
- 48px Download HornetsEye-0.13 released on April 5th 2007
Release Notes
See HornetsEye homepage for installation instructions.
Change log
- Porting documentation from RDoc to NaturalDocs.
- hornetseye/io/openglimagepainter.cc: Not including GL/glext.h any more because it leads to problems on some NVidia installations.
- Added methods to unmap and map X11-windows.
- Bug! Dimensions of NArray were swapped. All conversion to and from Hornetseye::Image as well as the filters had to be fixed.
HornetsEye-0.12
- 48px Download HornetsEye-0.12 released on March 20th 2007
Release Notes
See HornetsEye homepage for installation instructions.
Change log
- Added OpenGLOutput and XVideoOutput for displaying images and videos. Added corresponding examples in directory ./samples/display.
HornetsEye-0.11
- 48px Download HornetsEye-0.11 released on March 11th 2007
Release Notes
See HornetsEye homepage for installation instructions.
Change log
- hornetseye/io/dc1394input.cc: Do not prefer RGB24 in mode selection.
- hornetseye/io/v4linput.cc: Do not prefer RGB24 in mode selection, because it is very slow. Fixed bug in colourspace selection code. Improved speed by implementing background capture.
- Now also links with versions of libdc1394 older than 1.1
HornetsEye-0.10
- 48px Download HornetsEye-0.10 released on February 1st 2007
Release Notes
See HornetsEye homepage for installation instructions.
Change log
- Made display method accept more element-types.
- Normalisation also works on blank image.
Older releases
See Hornetseye page at Rubyforge for older releases.
See Also
External Links
- Hornetseye homepage
- Hornetseye at Rubyforge
- Ruby programming language
- QtRuby, Korundum
- SWIG (Simplified Wrapper and Interface Generator)
- Moments in image processing