|
|
(17 intermediate revisions by one user not shown) |
Line 4: |
Line 4: |
| |- | | |- |
| |[[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]]] | | |[[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]]] |
− | |-
| |
− | |[[Image:ICIA08Slide.jpg|240px|thumb|Conference presentation [http://vision.eng.shu.ac.uk/jan/icia08-foils.pdf A Machine Vision Extension for the Ruby Programming Language] presented at [http://www.icia2008.org ICIA 2008]]]
| |
− | |-
| |
− | |[[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]]]
| |
− | |-
| |
− | |<html>
| |
− | <div class="thumb tright">
| |
− | <div style="width:240px;">
| |
− | <embed style="width:240px; height:180px;" id="VideoPlayback" type="application/x-shockwave-flash"
| |
− | src="http://vision.eng.shu.ac.uk/jan/flv/flvplayer.swf" width="240" height="180"
| |
− | flashvars="file=http://vision.eng.shu.ac.uk/jan/flv/pcarecognition.flv&image=http://vision.eng.shu.ac.uk/jan/flv/pcarecognition.jpg&displayheight=180"
| |
− | pluginspage="http://www.macromedia.com/go/getflashplayer"/>
| |
− | <div class="thumbcaption">A naive object recognition algorithm using colour segmentation (video also available as <a href="http://vision.eng.shu.ac.uk/jan/pcarecognition.avi">8.6 MByte DivX video</a> or on <a href="http://video.google.com/videoplay?docid=8157280827402899141">Google Video</a>)</div>
| |
− | </div>
| |
− | </div>
| |
− | </html>
| |
− | |-
| |
− | |<html><div class="thumb tright"><div style="width:240px;"><object type="application/x-shockwave-flash" data="http://www.youtube.com/v/NrGFg_0OHIA" width="240" height="204"><param name="movie" value="http://www.youtube.com/v/NrGFg_0OHIA"/></object><div class="thumbcaption">Face tracking with the Camshift algorithm</div></div></div></html>
| |
− | |-
| |
− | |<html><div class="thumb tright"><div style="width:240px;"><embed id="VideoPlayback" src="http://video.google.com/googleplayer.swf?docid=-3810247215423234127&hl=en&fs=true" style="width:240px;height:200px" allowFullScreen="true" allowScriptAccess="always" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"> </embed>
| |
− | <div class="thumbcaption">Demo video showing interactive development of video processing algorithms (available as <a href="http://video.google.com/videoplay?docid=-3810247215423234127">Google-Video</a> or <a href="http://vision.eng.shu.ac.uk/jan/hornetseye-demo.avi">24.4 MByte DivX-video</a>)</div></div></div></html>
| |
| |- | | |- |
| |} | | |} |
| =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. |
− |
| |
− | '''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=
| |
− | [[Image:Hornetseye.png|48px]] Check the [http://www.wedesoft.demon.co.uk/hornetseye-api/files/Installation-txt.html 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:
| |
− | # [[Image:Qt4.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 with [http://trolltech.com/products/qt/ Qt4] and [http://www.kde.org/ KDE4].
| |
− | # [[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:Mplayerlogo.png|38px]] '''MPlayer''': [http://www.mplayerhq.hu/ MPlayer] is a player which can be used to read video files under GNU/Linux as well as Microsoft Windows.
| |
− | # [[Image:Gears.png|30px|]] '''Mesa''': [http://www.mesa3d.org/ Mesa] is used for OpenGL-accelerated display of images.
| |
− | # [[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:Bazaar.png|30px]] '''Bazaar''': [http://bazaar-vcs.org/ Bazaar] is used for version control. You can access the repository on the [[Image:Lp-diamond.png|30px]] [https://launchpad.net/projects/hornetseye Launchpad] site (see [http://doc.bazaar-vcs.org/bzr.dev/en/quick-reference/quick-start-summary.svg Bazaar Quick Start Card] ([http://doc.bazaar-vcs.org/bzr.dev/en/quick-reference/quick-start-summary.pdf PDF], [http://doc.bazaar-vcs.org/bzr.dev/en/quick-reference/quick-start-summary.png PNG]) or [http://doc.bazaar-vcs.org/bzr.dev/en/user-guide/index.html Bazaar User Guide] if you want to know more about using Bazaar).
| |
− | # [[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 GNU/Linux as well as Microsoft Windows.
| |
− | # [[Image:Naturaldocs.png|80px]] '''Natural Docs''': [http://www.naturaldocs.org/ Natural Docs] is used to create the HTML documentation.
| |
− | # [[Image:Nsis.gif|30px]] '''NSIS''': The Windows installer is generated with [http://nsis.sourceforge.net/ Nullsoft Scriptable Install System].
| |
− | # [[Image:Dotgnu.png|110px]] '''DotGNU''': The [http://freshmeat.net/projects/libjit/ JIT library] of the [http://dotgnu.org/ DotGNU] project is repurposed for generating image processing code at runtime.
| |
| | | |
| =See Also= | | =See Also= |
Line 64: |
Line 15: |
| * [[Hypercomplex Wavelets]] | | * [[Hypercomplex Wavelets]] |
| * [[Qt4-QtRuby installer for Microsoft Windows]] | | * [[Qt4-QtRuby installer for Microsoft Windows]] |
− | * [[Image:New.gif]] [[TEM vision software]] | + | * [[TEM vision software]] |
| * [[Image:Mimasanim.gif|40px]] [[Mimas]] | | * [[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:Launchpad.png|75px]] [https://launchpad.net/hornetseye/ HornetsEye at Launchpad]
| |
| * [[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://vision.eng.shu.ac.uk/jan/mrcrubytem08.pdf Machine vision and device integration with the Ruby Programming Language] (MRC seminar)
| |
− | * J. Wedekind, B. P. Amavasai, K. Dutton, M. Boissenin: [http://digitalcommons.shu.ac.uk/mmvl_papers/2/ A Machine Vision Extension for the Ruby Programming Language] (also see [http://vision.eng.shu.ac.uk/jan/icia08-foils.pdf foils (PDF)])
| |
− | * [http://en.oreilly.com/oscon2008/public/schedule/detail/2471 Computer Vision with Ruby] presented at OSCON 2008 (also see [http://vision.eng.shu.ac.uk/jan/oscon08-foils.pdf foils (PDF)])
| |
| | | |
− | {{Addthis}} | + | {{AddThis}} |
| | | |
| [[Category:Projects]] | | [[Category:Projects]] |
| [[Category:Nanorobotics]] | | [[Category:Nanorobotics]] |