1
0
Fork 0
mirror of https://github.com/ruby-opencv/ruby-opencv synced 2023-03-27 23:22:12 -04:00
Versioned fork of the OpenCV gem for Ruby
Find a file
2011-12-19 03:45:50 +09:00
examples fixed some bugs of examples/snake.rb 2011-11-20 22:50:24 +09:00
ext/opencv added CvFeatureTree 2011-12-19 03:45:50 +09:00
images Unflip binary files 2008-08-19 11:08:07 -04:00
setup Initial commit, with some minor changes from orig (date, exec bit, line endings, /usr/bin/env) 2008-08-19 11:01:28 -04:00
test added CvFeatureTree 2011-12-19 03:45:50 +09:00
.gitignore fixed for installing on Windows (mswin32) 2011-11-28 08:31:12 +09:00
extconf.rb fixed for installing on Windows (mswin32) 2011-11-28 08:31:12 +09:00
Gemfile modified to be able to install both "rake package && gem install opencv-x.y.z.gem" and "ruby extconf.rb && make && make install" ways 2011-05-03 17:12:47 +09:00
Gemfile.lock updated Gemfile.lock 2011-08-12 16:23:26 +09:00
History.txt Initial commit, with some minor changes from orig (date, exec bit, line endings, /usr/bin/env) 2008-08-19 11:01:28 -04:00
License.txt Initial commit, with some minor changes from orig (date, exec bit, line endings, /usr/bin/env) 2008-08-19 11:01:28 -04:00
Manifest.txt removed CvSet 2011-08-12 16:13:03 +09:00
opencv.gemspec removed CvSet 2011-08-12 16:13:03 +09:00
Rakefile moved version.rb to ext/opencv/lib/opencv/ 2011-05-04 02:14:33 +09:00
README.rdoc fixed for installing on Windows (mswin32) 2011-11-28 08:31:12 +09:00

= OpenCV

The initial Open Computer Vision library was originally developed by Intel 
Corporation. Recent development has been headed by Willow Garage, Inc.

* OpenCV project home http://opencv.willowgarage.com/wiki/
  * Download http://sourceforge.net/projects/opencvlibrary/
* Ruby/OpenCV original author's web page http://blueruby.mydns.jp/opencv

== DESCRIPTION:

OpenCV wrapper for Ruby

== FEATURES/PROBLEMS:

* Some OpenCV functions are wrapped.
* Ruby 1.8.7, 1.9.3 and OpenCV 2.3 are supported.

== DEPENDENCIES:

* OpenCV (required)
Ruby/OpenCV relies on the OpenCV library.

See http://opencv.willowgarage.com/wiki/InstallGuide


* ffcall (optional)
ffcall is needed to use GUI trackbar component.
Other GUI components work without ffcall.

See http://www.haible.de/bruno/packages-ffcall.html


== INSTALLATION:
=== Install Ruby/OpenCV manually
==== Unix/Linux/Mac

  $ git clone git://github.com/ser1zw/ruby-opencv.git
  $ cd ruby-opencv
  $ git checkout master  # for OpenCV 2.3 or later. To use OpenCV 2.2, type "git checkout OpenCV_2.2" instead
  $ ruby extconf.rb --with-opencv-dir=/path/to/opencvdir
  $ make
  $ make install

==== Windows (mswin32)
Use "nmake" instead of "make".

  $ git clone git://github.com/ser1zw/ruby-opencv.git
  $ cd ruby-opencv
  $ git checkout master  # for OpenCV 2.3 or later. To use OpenCV 2.2, type "git checkout OpenCV_2.2" instead
  $ ruby extconf.rb --with-opencv-dir=/path/to/opencvdir
  $ nmake
  $ nmake install


*/path/to/opencvdir* is the path you installs OpenCV library (default: /usr/local).

For example, if you install OpenCV library to */opt/local/* like:

  $ cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/opt/local/ ./OpenCV-2.3.1
  $ make
  $ make install

Install Ruby/OpenCV with the following command:

  $ ruby extconf.rb --with-opencv-dir=/opt/local
  $ make
  $ make install


=== Create Ruby/OpenCV Gem
You can also install this library creating a gem like:

  $ git clone git://github.com/ser1zw/ruby-opencv.git
  $ cd ruby-opencv
  $ git checkout master  # for OpenCV 2.3 or later. To use OpenCV 2.2, type "git checkout OpenCV_2.2" instead
  $ bundle install
  $ rake gem
  $ gem install pkg/opencv-*.gem -- --with-opencv-dir=/path/to/opencvdir

To add ruby-opencv in your Gemfile:

  $ echo -e "\n"'gem "opencv", :git => "https://github.com/ser1zw/ruby-opencv"' >> Gemfile
  $ bundle install  # or bundle update

== SYNOPSIS:
=== Show Image using GUI Component

  #!/usr/bin/env ruby
  require "opencv"

  image = OpenCV::IplImage.load("sample.jpg")
  window = OpenCV::GUI::Window.new("preview")
  window.show(image)
  OpenCV::GUI::wait_key

=== Face Detection

Here is a sample face detection program that doesn't rely on the GUI components.
In order for this to work you must copy the OpenCV haarcascades data into a 
subfolder called data.

  #!/usr/bin/env ruby
  require "opencv"

  if ARGV.length < 2
    puts "Usage: your_app_name source dest"
    exit
  end
 
  data = "./data/haarcascades/haarcascade_frontalface_alt.xml"
  detector = OpenCV::CvHaarClassifierCascade::load(data)
  image = OpenCV::IplImage.load(ARGV[0])
  detector.detect_objects(image).each do |region|
    color = OpenCV::CvColor::Blue
    image.rectangle! region.top_left, region.bottom_right, :color => color
  end
  image.save_image(ARGV[1])

For more samples, see examples/*.rb

== LICENSE:

The BSD Liscense

see LICENSE.txt