HornetsEye

From MMVLWiki
Revision as of 14:51, 18 August 2009 by Engjw (Talk | contribs)
Jump to: navigation, search
Poster for the 2008 AVA meeting in Bristol
Conference presentation Real-time Computer Vision With Ruby presented at OSCON 2008
A naive object recognition algorithm using colour segmentation (video also available as 8.6 MByte DivX video or on Google Video)
Face tracking with the Camshift algorithm (also available as 4 MB DivX3 video)
Demo video showing interactive development of video processing algorithms (available as Google-Video or 24.4 MByte DivX-video)

Contents

Introduction

HornetsEye is a Ruby-extension for developing video processing and real-time computer vision software under GNU/Linux offering interfaces to do image- and video-I/O with RMagick, Xine, firewire digital camera, and video for Linux. A new class of unprecedented solutions and a new way of working becomes conceivable when applying a dynamically typed, object-oriented language like Ruby to computer vision.

HornetsEye is maybe the first free software project providing a solid platform for implementing real-time computer vision software in a scripting language. The platform potentially could be used in robotic applications, industrial automation as well as in microscopy and the life sciences.

If you are funding a project which uses HornetsEye you should understand that the contract is between you and the seller and it is the responsibility of the individual seller to deliver on the contract.

Download

Hornetseye.png Check the installation instructions on how to obtain and install HornetsEye.

Software Engineering

HornetsEye brings the functionality of existing powerful free software packages into Ruby. HornetsEye also tries to make existing Ruby extension operate with each other to enable the development of novel solutions:

  1. Qt4.png Qt4-QtRuby, Kde.png Korundum: QtRuby and Korundum can be used to develop graphical user interfaces and desktop applications with Qt4 and KDE4.
  2. Xine logo.png Xine: Using Xine one can read virtually any video file and it is even possible to read streaming videos.
  3. Mplayerlogo.png MPlayer: MPlayer is a player which can be used to read video files under GNU/Linux as well as Microsoft Windows.
  4. Gears.png Mesa: Mesa is used for OpenGL-accelerated display of images.
  5. Tanaka.png NArray: Masahiro Tanaka's NArray is an implementation of n-dimensional arrays for Ruby.
  6. Fftw logo.gif FFTW. The fftw-library can is maybe the fastest library for performing discrete Fourier transforms. It can be invoked by using Masahiro Tanaka's fftw3 extension.
  7. RMagick.png RMagick: The RMagick Ruby-extension allows to use the powerful Magick++ library in Ruby for loading and saving images.
  8. Coriander.png libdc1394: Using libdc1394 one can make use of a large choice of firewire digital cameras.
  9. OpenEXR.jpg OpenEXR: The OpenEXR library is used for saving and loading high dynamic range images.
  10. C--boost logo.gif Boost: The Boost Library offers smart pointers to do exception safe programming, multi-dimensional arrays, template meta-programming, abstract data types for linear algebra and many other programming concepts. The Boost library is going to be part of a future C++ standard.
  11. Stl logo.gif STL: The software makes use of the Standard Template Library
  12. Ruby.png Ruby programming language
  13. Bazaar.png Bazaar: Bazaar is used for version control. You can access the repository on the Lp-diamond.png Launchpad site (see Bazaar Quick Start Card (PDF, PNG) or Bazaar User Guide if you want to know more about using Bazaar).
  14. Gcc logo.png Gcc: gcc is the C++ compiler of the GNU project.
  15. Gnu-head.jpg autoconf, automake and make: make, autoconf and automake are used to configure and perform the build of the software on GNU/Linux as well as Microsoft Windows.
  16. Naturaldocs.png Natural Docs: Natural Docs is used to create the HTML documentation.
  17. Nsis.gif NSIS: The Windows installer is generated with Nullsoft Scriptable Install System.
  18. Dotgnu.png DotGNU: The JIT library of the DotGNU project is repurposed for generating image processing code at runtime.

See Also

External Links

Bookmark and Share

Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox