mirror of
https://github.com/ruby-opencv/ruby-opencv
synced 2023-03-27 23:22:12 -04:00
187 lines
4.4 KiB
Ruby
Executable file
187 lines
4.4 KiB
Ruby
Executable file
#!/usr/bin/env ruby
|
|
# -*- mode: ruby; coding: utf-8-unix -*-
|
|
require 'test/unit'
|
|
require 'opencv'
|
|
require File.expand_path(File.dirname(__FILE__)) + '/helper'
|
|
|
|
include OpenCV
|
|
|
|
# Tests for OpenCV::CvCapture
|
|
class TestCvCapture < OpenCVTestCase
|
|
def setup
|
|
@cap = CvCapture.open(AVI_SAMPLE)
|
|
@cap.query
|
|
end
|
|
|
|
def teardown
|
|
@cap = nil
|
|
end
|
|
|
|
def test_INTERFACE
|
|
assert_equal(CvCapture::INTERFACE[:any], 0)
|
|
assert_equal(CvCapture::INTERFACE[:mil], 100)
|
|
assert_equal(CvCapture::INTERFACE[:vfw], 200)
|
|
assert_equal(CvCapture::INTERFACE[:v4l], 200)
|
|
assert_equal(CvCapture::INTERFACE[:v4l2], 200)
|
|
assert_equal(CvCapture::INTERFACE[:fireware], 300)
|
|
assert_equal(CvCapture::INTERFACE[:ieee1394], 300)
|
|
assert_equal(CvCapture::INTERFACE[:dc1394], 300)
|
|
assert_equal(CvCapture::INTERFACE[:cmu1394], 300)
|
|
assert_equal(CvCapture::INTERFACE[:stereo], 400)
|
|
assert_equal(CvCapture::INTERFACE[:tyzx], 400)
|
|
assert_equal(CvCapture::INTERFACE[:tyzx_left], 400)
|
|
assert_equal(CvCapture::INTERFACE[:tyzx_right], 401)
|
|
assert_equal(CvCapture::INTERFACE[:tyzx_color], 402)
|
|
assert_equal(CvCapture::INTERFACE[:tyzx_z], 403)
|
|
assert_equal(CvCapture::INTERFACE[:qt], 500)
|
|
assert_equal(CvCapture::INTERFACE[:quicktime], 500)
|
|
end
|
|
|
|
def test_open
|
|
cap1 = CvCapture.open(AVI_SAMPLE)
|
|
assert_equal(CvCapture, cap1.class)
|
|
|
|
# Uncomment the following lines to test capturing from camera
|
|
# cap2 = CvCapture.open(0)
|
|
# assert_equal(CvCapture, cap2.class)
|
|
# CvCapture::INTERFACE.each { |k, v|
|
|
# cap3 = CvCapture.open(k)
|
|
# assert_equal(CvCapture, cap3.class)
|
|
# }
|
|
end
|
|
|
|
def test_grab
|
|
assert(@cap.grab)
|
|
end
|
|
|
|
def test_retrieve
|
|
@cap.grab
|
|
img = @cap.retrieve
|
|
assert_equal(IplImage, img.class)
|
|
end
|
|
|
|
def test_query
|
|
img = @cap.query
|
|
assert_equal(IplImage, img.class)
|
|
end
|
|
|
|
def test_millisecond
|
|
@cap.millisecond = 10
|
|
assert(@cap.millisecond.is_a? Numeric)
|
|
# assert_equal(10, @cap.millisecond)
|
|
@cap.millisecond = 20
|
|
assert(@cap.millisecond.is_a? Numeric)
|
|
# assert_equal(20, @cap.millisecond)
|
|
end
|
|
|
|
def test_frames
|
|
@cap.frames = 10
|
|
assert(@cap.frames.is_a? Numeric)
|
|
# assert_equal(10, @cap.frames)
|
|
@cap.frames = 20
|
|
assert(@cap.frames.is_a? Numeric)
|
|
# assert_equal(20, @cap.frames)
|
|
end
|
|
|
|
def test_avi_ratio
|
|
@cap.avi_ratio = 0.1
|
|
assert(@cap.avi_ratio.is_a? Numeric)
|
|
# assert_equal(0.1, @cap.avi_ratio)
|
|
@cap.avi_ratio = 0.8
|
|
assert(@cap.avi_ratio.is_a? Numeric)
|
|
# assert_equal(0.8, @cap.avi_ratio)
|
|
end
|
|
|
|
def test_size
|
|
@cap.size = CvSize.new(320, 240)
|
|
assert_equal(CvSize, @cap.size.class)
|
|
# assert_equal(320, @cap.size.width)
|
|
# assert_equal(240, @cap.size.height)
|
|
|
|
@cap.size = CvSize.new(640, 480)
|
|
assert_equal(CvSize, @cap.size.class)
|
|
# assert_equal(640, @cap.size.width)
|
|
# assert_equal(480, @cap.size.height)
|
|
end
|
|
|
|
def test_width
|
|
@cap.width = 320
|
|
assert(@cap.width.is_a? Numeric)
|
|
# assert_equal(320, @cap.width)
|
|
@cap.width = 640
|
|
assert(@cap.width.is_a? Numeric)
|
|
# assert_equal(640, @cap.width)
|
|
end
|
|
|
|
def test_height
|
|
@cap.height = 240
|
|
assert(@cap.height.is_a? Numeric)
|
|
# assert_equal(240, @cap.height)
|
|
@cap.height = 480
|
|
assert(@cap.height.is_a? Numeric)
|
|
# assert_equal(480, @cap.height)
|
|
end
|
|
|
|
def test_fps
|
|
@cap.fps = 15
|
|
assert(@cap.fps.is_a? Numeric)
|
|
# assert_equal(15, @cap.fps)
|
|
@cap.fps = 30
|
|
assert(@cap.fps.is_a? Numeric)
|
|
# assert_equal(30, @cap.fps)
|
|
end
|
|
|
|
def test_fourcc
|
|
assert_equal(String, @cap.fourcc.class)
|
|
end
|
|
|
|
def test_frame_count
|
|
assert(@cap.frame_count.is_a? Numeric)
|
|
end
|
|
|
|
def test_format
|
|
assert(@cap.format.is_a? Numeric)
|
|
end
|
|
|
|
def test_mode
|
|
assert(@cap.mode.is_a? Numeric)
|
|
end
|
|
|
|
def test_brightness
|
|
assert(@cap.brightness.is_a? Numeric)
|
|
end
|
|
|
|
def test_contrast
|
|
assert(@cap.contrast.is_a? Numeric)
|
|
end
|
|
|
|
def test_saturation
|
|
assert(@cap.saturation.is_a? Numeric)
|
|
end
|
|
|
|
def test_hue
|
|
assert(@cap.hue.is_a? Numeric)
|
|
end
|
|
|
|
def test_gain
|
|
assert(@cap.gain.is_a? Numeric)
|
|
end
|
|
|
|
def test_exposure
|
|
assert(@cap.exposure.is_a? Numeric)
|
|
end
|
|
|
|
def test_convert_rgb
|
|
assert((@cap.convert_rgb == true) ||
|
|
(@cap.convert_rgb == false))
|
|
end
|
|
|
|
def test_white_balance
|
|
assert(@cap.white_balance.is_a? Numeric)
|
|
end
|
|
|
|
def test_rectification
|
|
assert(@cap.rectification.is_a? Numeric)
|
|
end
|
|
end
|
|
|