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
2013-03-03 02:28:21 +09:00
examples changed detector type, descriptor type and matcher type for matching descriptors to be optional arguments; and updated document for CvMat#match_descriptors 2012-08-14 14:45:34 -07:00
ext/opencv update file layout 2013-03-03 02:28:21 +09:00
images Unflip binary files 2008-08-19 11:08:07 -04:00
lib update file layout 2013-03-03 02:28:21 +09:00
test update tests of CvMat#log_polar 2013-01-20 04:41:39 +09:00
.gitignore cleanup Rakefile and recreate gemspec 2013-01-20 08:12:44 +09:00
DEVELOPERS_NOTE.md update description of the way to create gem 2013-01-27 12:45:31 +09:00
Gemfile update gem source 2013-03-03 00:27:47 +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 update file layout 2013-03-03 02:28:21 +09:00
Rakefile update file layout 2013-03-03 02:28:21 +09:00
README.md update documents 2013-01-27 12:31:21 +09:00
ruby-opencv.gemspec update file layout 2013-03-03 02:28:21 +09:00

ruby-opencv

An OpenCV wrapper for Ruby.

Requirement

Install

Linux/Mac

  1. Install OpenCV
  2. Install ruby-opencv
$ gem install ruby-opencv -- --with-opencv-dir=/path/to/opencvdir

Note: /path/to/opencvdir is the directory where you installed OpenCV.

Windows

You can use pre-build binary for Windows (mswin32, mingw32).

  1. Install OpenCV
  2. Set path to OpenCV libraries. When you installed OpenCV to C:\opencv, add C:\opencv\build\x86\vc10\bin (for mswin32) or C:\opencv\build\x86\mingw\bin (for mingw32) to the systems path.
  3. Install ruby-opencv
$ gem install ruby-opencv

Sample code

Load and Display an Image

A sample to load and display an image. An equivalent code of this tutorial.

require 'opencv'
include OpenCV

if ARGV.size == 0
  puts "Usage: ruby #{__FILE__} ImageToLoadAndDisplay"
  exit
end

image = nil
begin
  image = CvMat.load(ARGV[0], CV_LOAD_IMAGE_COLOR) # Read the file.
rescue
  puts 'Could not open or find the image.'
  exit
end

window = GUI::Window.new('Display window') # Create a window for display.
window.show(image) # Show our image inside it.
GUI::wait_key # Wait for a keystroke in the window.

Face Detection

A sample to detect faces from an image.

require 'opencv'
include OpenCV

if ARGV.length < 2
  puts "Usage: ruby #{__FILE__} source dest"
  exit
end

data = './data/haarcascades/haarcascade_frontalface_alt.xml'
detector = CvHaarClassifierCascade::load(data)
image = CvMat.load(ARGV[0])
detector.detect_objects(image).each do |region|
  color = CvColor::Blue
  image.rectangle! region.top_left, region.bottom_right, :color => color
end

image.save_image(ARGV[1])
window = GUI::Window.new('Face detection')
window.show(image)
GUI::wait_key

For more samples, see examples/*.rb

LICENSE:

The BSD Liscense

see LICENSE.txt