HornetsEye

From MMVLWiki
(Difference between revisions)
Jump to: navigation, search
m (See Also)
m
 
(65 intermediate revisions by one user not shown)
Line 1: Line 1:
 
{|align="right"
 
{|align="right"
 
|-
 
|-
|colspan="2" align="center" | [[Image:Hornetseyerf.png|thumb|240px|Hornetseye on [http://rubyforge.org/projects/hornetseye/ RubyForge]]]
+
|[[Image:AVA-Bristol-2008.jpg|thumb|240px|[http://vision.eng.shu.ac.uk/jan/ava-bristol-2008.pdf Poster] for the 2008 [http://hlsweb.dmu.ac.uk/ava/meetings/bristol2008.html AVA meeting] in Bristol]]
 
|-
 
|-
|colspan="2" align="center" | [[Image:Mrcrubytem08.jpg|thumb|240px|Seminar presentation "[http://vision.eng.shu.ac.uk/jan/mrcrubytem08.pdf Machine vision and device integration with the Ruby Programming Language]"]]
+
|[[Image:Oscon08foils.jpg|240px|thumb|Conference presentation [http://vision.eng.shu.ac.uk/jan/oscon08-foils.pdf Real-time Computer Vision With Ruby] presented at [http://en.oreilly.com/oscon2008/ OSCON 2008]]]
|-
+
|colspan="2" align="center" | [[Image:Rubywebcam.jpg|thumb|240px|Screenshot of Linux webcam application written in Ruby]]
+
|-
+
|[[Image:Apollo left.jpg|thumb|76px|Left part of image]]||[[Image:Apollo right.jpg|thumb|114px|Right part of image]]
+
|-
+
|colspan="2" align="center" | [[Image:Apollo result.jpg|thumb|163px|Stitched image]]
+
|-
+
|colspan="2" align="center" | [[Image:Hornetseye.png|240px]]
+
 
|-
 
|-
 
|}
 
|}
 
=Introduction=
 
=Introduction=
 
'''[http://www.wedesoft.demon.co.uk/hornetseye-api/ 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.
 
'''[http://www.wedesoft.demon.co.uk/hornetseye-api/ 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.
 
After installation you can use '''HornetsEye''' without having to compile or link anything!  You can even develop computer vision
 
algorithms on the command-line using Interactive Ruby (irb).  HornetsEye offers image file-I/O, video input, access to webcams and
 
framegrabbers, access to firewire digital cameras, edge detection, corner detection, user-defined filters. It thightly integrates
 
with existing Ruby extensions.
 
 
'''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'''.
 
 
The logo was created using [http://gimp.org/ GIMP] and it shows a honeycomb structure as you would find on an insect's compound eye. A hornet is capable of navigating and detecting objects with the limited resolution of its [http://en.wikipedia.org/wiki/Compound_eye compound eyes].
 
 
==Webcam==
 
The [http://www.wedesoft.demon.co.uk/hornetseye-api/files/webcamapp-txt.html Linux webcam application] uses [[HornetsEye]], [http://rubyforge.org/projects/rmagick/ RMagick], and [http://rubyforge.org/projects/korundum/ qt4-ruby] (there also is a [http://www.wedesoft.demon.co.uk/hornetseye-api/files/vfwcamapp-txt.html Windows webcam] already).
 
 
See [http://www.wedesoft.demon.co.uk/hornetseye-api/files/inputgrey-txt.html Hornetseye homepage] for more examples.
 
 
==Phase Correlation==
 
The [http://www.wedesoft.demon.co.uk/hornetseye-api/files/phasecorrelation-txt.html phase correlation example] is an implementation of the [http://en.wikipedia.org/wiki/Phase_correlation phase correlation] for aligning images.
 
The code depends on [[HornetsEye]], [http://rubyforge.org/projects/rmagick/ RMagick] and [http://rubyforge.org/projects/narray/ NArray-fftw3].
 
 
=Downloads=
 
[[Image:Hornetseye.png|48px]] Before downloading you may want to check the [http://www.wedesoft.demon.co.uk/hornetseye-api/files/Installation-txt.html installation instructions] for information on what other software you need to install and run Hornetseye.
 
See [http://www.wedesoft.demon.co.uk/hornetseye-api/files/Download-txt.html download instructions] on how to obtain 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:
 
# [[Image:Qt logo.png|30px]] '''Qt4-QtRuby''', [[Image:Kde.png|30px]] '''Korundum''': [http://rubyforge.org/projects/korundum/ QtRuby] and [http://developer.kde.org/language-bindings/ruby/ Korundum] can be used to develop graphical user interfaces and desktop applications.
 
# [[Image:Xine logo.png|48px|]] '''Xine''': Using [http://www.xinehq.de/ Xine] one can read virtually any video file and it is even possible to read streaming videos.
 
# [[Image:Tanaka.png|30px]] '''NArray''': Masahiro Tanaka's [http://narray.rubyforge.org/ NArray] is an implementation of n-dimensional arrays for Ruby.
 
# [[Image:Fftw logo.gif|50px|]] '''FFTW'''. The [http://www.fftw.org/ fftw]-library can is maybe the fastest library for performing discrete Fourier transforms. It can be invoked by using Masahiro Tanaka's [http://narray.rubyforge.org/ fftw3] extension.
 
# [[Image:RMagick.png|80px]] '''RMagick''': The [http://rmagick.rubyforge.org/ RMagick] Ruby-extension allows to use the powerful [http://www.imagemagick.org/Magick++/ Magick++] library in Ruby for loading and saving images.
 
# [[Image:Coriander.png|30px]] '''libdc1394''': Using [http://damien.douxchamps.net/ieee1394/libdc1394/ libdc1394] one can make use of a large choice of firewire digital cameras.
 
# [[Image:OpenEXR.jpg|30px]] '''OpenEXR''': The [http://www.openexr.org/ OpenEXR library] is used for saving and loading [http://en.wikipedia.org/wiki/High_dynamic_range_imaging high dynamic range] images.
 
# [[Image:C--boost logo.gif|80px|]] '''Boost''': The [http://www.boost.org/ 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.
 
# [[Image:Stl logo.gif|30px|]] '''STL''': The software makes use of the [http://www.sgi.com/tech/stl/ Standard Template Library]
 
# [[Image:Ruby.png|30px]] [http://www.ruby-lang.org/ Ruby] programming language
 
# [[Image:Gnu-arch logo.png|30px|]] '''gnu-arch''': [http://www.gnu.org/software/gnu-arch/ gnu-arch] is being used for version control.
 
# [[Image:Gcc logo.png|30px|]] '''Gcc''': [http://www.gnu.org/software/gcc/ gcc] is the C++ compiler of the GNU project.
 
# [[Image:Gnu-head.jpg|35px|]] '''autoconf''', '''automake''' and '''make''': [http://www.gnu.org/software/make/ make], [http://www.gnu.org/software/autoconf/ autoconf] and [http://www.gnu.org/software/automake/ automake] are used to configure and perform the build of the software on various distributions of the Linux operating system.
 
# [[Image:Naturaldocs.png|80px]] '''Natural Docs''': [http://www.naturaldocs.org/ Natural Docs] is used to create the HTML documentation.
 
  
 
=See Also=
 
=See Also=
* [[Image:Mimasanim.gif|40px]] [[Mimas]]
+
* [[Interactive Presentation Software]]
* [[Computer Vision Software]]
+
* [[Just-in-time compiler]]
 +
* [[Lucas-Kanade tracker]]
 
* [[Hypercomplex Wavelets]]
 
* [[Hypercomplex Wavelets]]
* [[Lucas-Kanade tracker]]
 
 
* [[Qt4-QtRuby installer for Microsoft Windows]]
 
* [[Qt4-QtRuby installer for Microsoft Windows]]
* [[Image:New.gif]] [http://vision.eng.shu.ac.uk/jan/mrcrubytem08.pdf Machine vision and device integration with the Ruby Programming Language] (MRC seminar)
+
* [[TEM vision software]]
* [[Image:New.gif]] [http://en.oreilly.com/oscon2008/public/schedule/detail/2471 HornetsEye talk planned for OSCON2008]]
+
* [[Image:Mimasanim.gif|40px]] [[Mimas]]
  
 
=External Links=
 
=External Links=
* [[Image:Hornetseye.png|48px]] [http://www.wedesoft.demon.co.uk/hornetseye-api/ Hornetseye homepage]
+
* [[Image:Hornetseye.png|48px]] [http://www.wedesoft.demon.co.uk/hornetseye-api/ HornetsEye homepage]
* [[Image:Rubyforge.png|75px]] [http://rubyforge.org/projects/hornetseye/ Hornetseye at Rubyforge]
+
* [[Image:Rubyforge.png|75px]] [http://rubyforge.org/projects/hornetseye/ HornetsEye at Rubyforge]
* [[Image:Sourceforge.png|58px]] [http://sourceforge.net/projects/hornetseye/ Hornetseye at Sourceforge]
+
* [[Image:Sourceforge.png|58px]] [http://sourceforge.net/projects/hornetseye/ HornetsEye at Sourceforge]
 
* [[Image:Swig.png|48px]] [http://www.swig.org/ SWIG] (Simplified Wrapper and Interface Generator)
 
* [[Image:Swig.png|48px]] [http://www.swig.org/ SWIG] (Simplified Wrapper and Interface Generator)
* [http://www.csie.ntnu.edu.tw/~bbailey/Moments%20in%20IP.htm Moments in image processing]
+
 
 +
{{AddThis}}
  
 
[[Category:Projects]]
 
[[Category:Projects]]
 
[[Category:Nanorobotics]]
 
[[Category:Nanorobotics]]

Latest revision as of 21:49, 31 July 2011

Poster for the 2008 AVA meeting in Bristol
Conference presentation Real-time Computer Vision With Ruby presented at OSCON 2008

[edit] 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.

[edit] See Also

[edit] External Links

Bookmark and Share

Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox