mirror of
https://github.com/ruby-opencv/ruby-opencv
synced 2023-03-27 23:22:12 -04:00
removed some unused codes, and uniformed code format
This commit is contained in:
parent
42c6f5cc37
commit
14659f0f90
39 changed files with 119 additions and 172 deletions
|
@ -14,7 +14,7 @@
|
||||||
* CvRect with parameter "neighbors".
|
* CvRect with parameter "neighbors".
|
||||||
* CvHaarClassifierCascade#detect_object.
|
* CvHaarClassifierCascade#detect_object.
|
||||||
*
|
*
|
||||||
* typedef struct CvAvgComp{
|
* typedef struct CvAvgComp {
|
||||||
* CvRect rect;
|
* CvRect rect;
|
||||||
* int neighbors;
|
* int neighbors;
|
||||||
* }
|
* }
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
#ifndef RUBY_OPENCV_AVGCOMP_H
|
#ifndef RUBY_OPENCV_AVGCOMP_H
|
||||||
#define RUBY_OPENCV_AVGCOMP_H
|
#define RUBY_OPENCV_AVGCOMP_H
|
||||||
|
|
||||||
#define __NAMESPACE_BEGIN_AVGCOMP namespace cCvAvgComp{
|
#define __NAMESPACE_BEGIN_AVGCOMP namespace cCvAvgComp {
|
||||||
#define __NAMESPACE_END_AVGCOMP }
|
#define __NAMESPACE_END_AVGCOMP }
|
||||||
|
|
||||||
#include <opencv.h>
|
#include <opencv.h>
|
||||||
|
|
|
@ -12,11 +12,11 @@
|
||||||
* Document-class: OpenCV::CvBox2D
|
* Document-class: OpenCV::CvBox2D
|
||||||
*
|
*
|
||||||
* C structure is here.
|
* C structure is here.
|
||||||
* typdef struct CvBox2D{
|
* typdef struct CvBox2D {
|
||||||
* CvPoint2D32f center; // center of the box.
|
* CvPoint2D32f center; // center of the box.
|
||||||
* CvSize2D32f size; // box width and length
|
* CvSize2D32f size; // box width and length
|
||||||
* float angle; // angle between the horizonal axis and the first side (i.e length) in radians
|
* float angle; // angle between the horizonal axis and the first side (i.e length) in radians
|
||||||
* }CvBox2D;
|
* } CvBox2D;
|
||||||
*/
|
*/
|
||||||
__NAMESPACE_BEGIN_OPENCV
|
__NAMESPACE_BEGIN_OPENCV
|
||||||
__NAMESPACE_BEGIN_CVBOX2D
|
__NAMESPACE_BEGIN_CVBOX2D
|
||||||
|
|
|
@ -12,12 +12,12 @@
|
||||||
|
|
||||||
#include "opencv.h"
|
#include "opencv.h"
|
||||||
|
|
||||||
#define __NAMESPACE_BEGIN_CVCIRCLE32F namespace cCvCircle32f{
|
#define __NAMESPACE_BEGIN_CVCIRCLE32F namespace cCvCircle32f {
|
||||||
#define __NAMESPACE_END_CVCIRCLE32F }
|
#define __NAMESPACE_END_CVCIRCLE32F }
|
||||||
|
|
||||||
__NAMESPACE_BEGIN_OPENCV
|
__NAMESPACE_BEGIN_OPENCV
|
||||||
|
|
||||||
typedef struct CvCircle32f{
|
typedef struct CvCircle32f {
|
||||||
CvPoint2D32f center;
|
CvPoint2D32f center;
|
||||||
float radius;
|
float radius;
|
||||||
} CvCircle32f;
|
} CvCircle32f;
|
||||||
|
|
|
@ -190,7 +190,7 @@ rb_update_by_time(VALUE self)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* call-seq:
|
* call-seq:
|
||||||
* each_sample{|mat| ... }
|
* each_sample {|mat| ... }
|
||||||
*
|
*
|
||||||
* Evaluate each sample by given block.
|
* Evaluate each sample by given block.
|
||||||
*/
|
*/
|
||||||
|
@ -208,7 +208,7 @@ rb_each_sample(VALUE self)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* call-seq:
|
* call-seq:
|
||||||
* calculate_confidence{|value| ... }
|
* calculate_confidence {|value| ... }
|
||||||
*
|
*
|
||||||
* Evalute each sample by given block, then return value set to confidence.
|
* Evalute each sample by given block, then return value set to confidence.
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
#include "opencv.h"
|
#include "opencv.h"
|
||||||
|
|
||||||
#define __NAMESPACE_BEGIN_CVCONDENSATION namespace cCvConDensation{
|
#define __NAMESPACE_BEGIN_CVCONDENSATION namespace cCvConDensation {
|
||||||
#define __NAMESPACE_END_CVCONDENSATION }
|
#define __NAMESPACE_END_CVCONDENSATION }
|
||||||
|
|
||||||
__NAMESPACE_BEGIN_OPENCV
|
__NAMESPACE_BEGIN_OPENCV
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
#include "opencv.h"
|
#include "opencv.h"
|
||||||
|
|
||||||
#define __NAMESPACE_BEGIN_CVCONNECTEDCOMP namespace cCvConnectedComp{
|
#define __NAMESPACE_BEGIN_CVCONNECTEDCOMP namespace cCvConnectedComp {
|
||||||
#define __NAMESPACE_END_CVCONNECTEDCOMP }
|
#define __NAMESPACE_END_CVCONNECTEDCOMP }
|
||||||
|
|
||||||
__NAMESPACE_BEGIN_OPENCV
|
__NAMESPACE_BEGIN_OPENCV
|
||||||
|
|
|
@ -18,7 +18,7 @@
|
||||||
* CvPoint* end;
|
* CvPoint* end;
|
||||||
* CvPoint* depth_point;
|
* CvPoint* depth_point;
|
||||||
* float depth;
|
* float depth;
|
||||||
* }CvConvexityDefect;
|
* } CvConvexityDefect;
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
__NAMESPACE_BEGIN_OPENCV
|
__NAMESPACE_BEGIN_OPENCV
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
#include "opencv.h"
|
#include "opencv.h"
|
||||||
|
|
||||||
#define __NAMESPACE_BEGIN_CVCONVEXITYDEFECT namespace cCvConvexityDefect{
|
#define __NAMESPACE_BEGIN_CVCONVEXITYDEFECT namespace cCvConvexityDefect {
|
||||||
#define __NAMESPACE_END_CVCONVEXITYDEFECT }
|
#define __NAMESPACE_END_CVCONVEXITYDEFECT }
|
||||||
|
|
||||||
__NAMESPACE_BEGIN_OPENCV
|
__NAMESPACE_BEGIN_OPENCV
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
#include "opencv.h"
|
#include "opencv.h"
|
||||||
|
|
||||||
#define __NAMESPACE_BEGIN_CVFONT namespace cCvFont{
|
#define __NAMESPACE_BEGIN_CVFONT namespace cCvFont {
|
||||||
#define __NAMESPACE_END_CVFONT }
|
#define __NAMESPACE_END_CVFONT }
|
||||||
|
|
||||||
__NAMESPACE_BEGIN_OPENCV
|
__NAMESPACE_BEGIN_OPENCV
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
#include "opencv.h"
|
#include "opencv.h"
|
||||||
|
|
||||||
#define __NAMESPACE_BEGIN_CVHUMOMENTS namespace cCvHuMoments{
|
#define __NAMESPACE_BEGIN_CVHUMOMENTS namespace cCvHuMoments {
|
||||||
#define __NAMESPACE_END_CVHUMOMENTS }
|
#define __NAMESPACE_END_CVHUMOMENTS }
|
||||||
|
|
||||||
__NAMESPACE_BEGIN_OPENCV
|
__NAMESPACE_BEGIN_OPENCV
|
||||||
|
|
|
@ -12,12 +12,12 @@
|
||||||
|
|
||||||
#include "opencv.h"
|
#include "opencv.h"
|
||||||
|
|
||||||
#define __NAMESPACE_BEGIN_CVLINE namespace cCvLine{
|
#define __NAMESPACE_BEGIN_CVLINE namespace cCvLine {
|
||||||
#define __NAMESPACE_END_CVLINE }
|
#define __NAMESPACE_END_CVLINE }
|
||||||
|
|
||||||
__NAMESPACE_BEGIN_OPENCV
|
__NAMESPACE_BEGIN_OPENCV
|
||||||
|
|
||||||
typedef struct CvLine{
|
typedef struct CvLine {
|
||||||
float rho;
|
float rho;
|
||||||
float theta;
|
float theta;
|
||||||
} CvLine;
|
} CvLine;
|
||||||
|
|
|
@ -40,7 +40,7 @@
|
||||||
* #else
|
* #else
|
||||||
* int rows; // number of row
|
* int rows; // number of row
|
||||||
* int cols; // number of columns
|
* int cols; // number of columns
|
||||||
* }CvMat;
|
* } CvMat;
|
||||||
*/
|
*/
|
||||||
__NAMESPACE_BEGIN_OPENCV
|
__NAMESPACE_BEGIN_OPENCV
|
||||||
__NAMESPACE_BEGIN_CVMAT
|
__NAMESPACE_BEGIN_CVMAT
|
||||||
|
@ -312,8 +312,6 @@ void define_ruby_class()
|
||||||
rb_define_singleton_method(rb_klass, "rotation_matrix2D", RUBY_METHOD_FUNC(rb_rotation_matrix2D), 3);
|
rb_define_singleton_method(rb_klass, "rotation_matrix2D", RUBY_METHOD_FUNC(rb_rotation_matrix2D), 3);
|
||||||
rb_define_method(rb_klass, "warp_perspective", RUBY_METHOD_FUNC(rb_warp_perspective), -1);
|
rb_define_method(rb_klass, "warp_perspective", RUBY_METHOD_FUNC(rb_warp_perspective), -1);
|
||||||
rb_define_singleton_method(rb_klass, "find_homography", RUBY_METHOD_FUNC(rb_find_homograpy), -1);
|
rb_define_singleton_method(rb_klass, "find_homography", RUBY_METHOD_FUNC(rb_find_homograpy), -1);
|
||||||
//rb_define_method(rb_klass, "get_perspective_transform", RUBY_METHOD_FUNC(rb_get_perspective_transform), -1);
|
|
||||||
//rb_define_alias(rb_klass, "warp_perspective_q_matrix", "get_perspective_transform");
|
|
||||||
rb_define_method(rb_klass, "remap", RUBY_METHOD_FUNC(rb_remap), -1);
|
rb_define_method(rb_klass, "remap", RUBY_METHOD_FUNC(rb_remap), -1);
|
||||||
//rb_define_method(rb_klass, "log_polar", RUBY_METHOD_FUNC(rb_log_polar), -1);
|
//rb_define_method(rb_klass, "log_polar", RUBY_METHOD_FUNC(rb_log_polar), -1);
|
||||||
|
|
||||||
|
@ -447,29 +445,12 @@ rb_load_imageM(int argc, VALUE *argv, VALUE self)
|
||||||
return OPENCV_OBJECT(rb_klass, mat);
|
return OPENCV_OBJECT(rb_klass, mat);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* nodoc
|
* nodoc
|
||||||
*/
|
*/
|
||||||
VALUE
|
VALUE
|
||||||
rb_method_missing(int argc, VALUE *argv, VALUE self)
|
rb_method_missing(int argc, VALUE *argv, VALUE self)
|
||||||
{
|
{
|
||||||
/*
|
|
||||||
const char *to_str = "\\Ato_(\\w+)";
|
|
||||||
VALUE name, args, str[3], method;
|
|
||||||
rb_scan_args(argc, argv, "1*", &name, &args);
|
|
||||||
if (RARRAY_LEN(args) != 0)
|
|
||||||
return rb_call_super(argc, argv);
|
|
||||||
if (rb_reg_match(rb_reg_new(to_str, strlen(to_str), 0), rb_funcall(name, rb_intern("to_s"), 0)) == Qnil)
|
|
||||||
return rb_call_super(argc, argv);
|
|
||||||
str[0] = rb_str_new2("%s2%s");
|
|
||||||
str[1] = rb_color_model(self);
|
|
||||||
str[2] = rb_reg_nth_match(1, rb_backref_get());
|
|
||||||
method = rb_f_sprintf(3, str);
|
|
||||||
if (rb_respond_to(rb_module_opencv(), rb_intern(StringValuePtr(method))))
|
|
||||||
return rb_funcall(rb_module_opencv(), rb_intern(StringValuePtr(method)), 1, self);
|
|
||||||
return rb_call_super(argc, argv);
|
|
||||||
*/
|
|
||||||
VALUE name, args, method;
|
VALUE name, args, method;
|
||||||
rb_scan_args(argc, argv, "1*", &name, &args);
|
rb_scan_args(argc, argv, "1*", &name, &args);
|
||||||
method = rb_funcall(name, rb_intern("to_s"), 0);
|
method = rb_funcall(name, rb_intern("to_s"), 0);
|
||||||
|
@ -877,7 +858,7 @@ rb_square_q(VALUE self)
|
||||||
VALUE
|
VALUE
|
||||||
rb_to_CvMat(VALUE self)
|
rb_to_CvMat(VALUE self)
|
||||||
{
|
{
|
||||||
// CvMat#to_CvMat aborts when self's class is CvMat. (I don't know why...)
|
// CvMat#to_CvMat aborts when self's class is CvMat.
|
||||||
if (CLASS_OF(self) == rb_klass)
|
if (CLASS_OF(self) == rb_klass)
|
||||||
return self;
|
return self;
|
||||||
|
|
||||||
|
@ -1044,7 +1025,7 @@ rb_each_row(VALUE self)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* call-seq:
|
* call-seq:
|
||||||
* each_col{|col| ... } -> self
|
* each_col {|col| ... } -> self
|
||||||
*
|
*
|
||||||
* Calls block once for each column in self, passing that element as a parameter.
|
* Calls block once for each column in self, passing that element as a parameter.
|
||||||
*
|
*
|
||||||
|
@ -1113,12 +1094,6 @@ rb_size(VALUE self)
|
||||||
return cCvSize::new_object(size);
|
return cCvSize::new_object(size);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
VALUE rb_elem_type(VALUE self) {
|
|
||||||
return INT2FIX(cvGetElemType(CVARR(self)));
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* call-seq:
|
* call-seq:
|
||||||
* dims -> array(int, int, ...)
|
* dims -> array(int, int, ...)
|
||||||
|
@ -1255,7 +1230,7 @@ rb_set_data(VALUE self, VALUE data)
|
||||||
((uchar*)array)[i] = (uchar)(NUM2INT(rb_ary_entry(data, i)));
|
((uchar*)array)[i] = (uchar)(NUM2INT(rb_ary_entry(data, i)));
|
||||||
break;
|
break;
|
||||||
case CV_8S:
|
case CV_8S:
|
||||||
array = rb_cvAlloc(sizeof(char) * DATA_LEN);
|
array = rb_cvAlloc(sizeof(char) * DATA_LEN);
|
||||||
for (int i = 0; i < DATA_LEN; ++i)
|
for (int i = 0; i < DATA_LEN; ++i)
|
||||||
((char*)array)[i] = (char)(NUM2INT(rb_ary_entry(data, i)));
|
((char*)array)[i] = (char)(NUM2INT(rb_ary_entry(data, i)));
|
||||||
break;
|
break;
|
||||||
|
@ -2858,11 +2833,11 @@ rb_line_bang(int argc, VALUE *argv, VALUE self)
|
||||||
rb_scan_args(argc, argv, "21", &p1, &p2, &drawing_option);
|
rb_scan_args(argc, argv, "21", &p1, &p2, &drawing_option);
|
||||||
drawing_option = DRAWING_OPTION(drawing_option);
|
drawing_option = DRAWING_OPTION(drawing_option);
|
||||||
try {
|
try {
|
||||||
cvLine(CVARR(self), VALUE_TO_CVPOINT(p1), VALUE_TO_CVPOINT(p2),
|
cvLine(CVARR(self), VALUE_TO_CVPOINT(p1), VALUE_TO_CVPOINT(p2),
|
||||||
DO_COLOR(drawing_option),
|
DO_COLOR(drawing_option),
|
||||||
DO_THICKNESS(drawing_option),
|
DO_THICKNESS(drawing_option),
|
||||||
DO_LINE_TYPE(drawing_option),
|
DO_LINE_TYPE(drawing_option),
|
||||||
DO_SHIFT(drawing_option));
|
DO_SHIFT(drawing_option));
|
||||||
}
|
}
|
||||||
catch (cv::Exception& e) {
|
catch (cv::Exception& e) {
|
||||||
raise_cverror(e);
|
raise_cverror(e);
|
||||||
|
@ -3551,16 +3526,16 @@ VALUE
|
||||||
rbi_find_corner_sub_pix(int argc, VALUE *argv, VALUE self)
|
rbi_find_corner_sub_pix(int argc, VALUE *argv, VALUE self)
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
VALUE corners, win, zero_zone, criteria;
|
VALUE corners, win, zero_zone, criteria;
|
||||||
rb_scan_args(argc, argv, "13", &corners, &win, &zero_zone, &criteria);
|
rb_scan_args(argc, argv, "13", &corners, &win, &zero_zone, &criteria);
|
||||||
if (!rb_obj_is_kind_of(corners, mPointSet::rb_module()))
|
if (!rb_obj_is_kind_of(corners, mPointSet::rb_module()))
|
||||||
rb_raise(rb_eTypeError, "argument 1 (corners) should be %s.", rb_class2name(mPointSet::rb_module()));
|
rb_raise(rb_eTypeError, "argument 1 (corners) should be %s.", rb_class2name(mPointSet::rb_module()));
|
||||||
int count = CVSEQ(corners)->total;
|
int count = CVSEQ(corners)->total;
|
||||||
VALUE storage = cCvMemStorage::new_object();
|
VALUE storage = cCvMemStorage::new_object();
|
||||||
CvPoint2D32f *pointset = POINTSET2D32f(corners);
|
CvPoint2D32f *pointset = POINTSET2D32f(corners);
|
||||||
//cvFindCornerSubPix(CVARR(self), pointset, count, VALUE_TO_CVSIZE(win), VALUE_TO_CVSIZE(zero_zone), VALUE_TO_CVTERMCRITERIA(criteria));
|
//cvFindCornerSubPix(CVARR(self), pointset, count, VALUE_TO_CVSIZE(win), VALUE_TO_CVSIZE(zero_zone), VALUE_TO_CVTERMCRITERIA(criteria));
|
||||||
//return cCvSeq::new_sequence();
|
//return cCvSeq::new_sequence();
|
||||||
*/
|
*/
|
||||||
return Qnil;
|
return Qnil;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3634,30 +3609,30 @@ VALUE
|
||||||
rb_sample_line(int argc, VALUE *argv, VALUE self)
|
rb_sample_line(int argc, VALUE *argv, VALUE self)
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
VALUE p1, p2, connectivity;
|
VALUE p1, p2, connectivity;
|
||||||
if (rb_scan_args(argc, argv, "21", &p1, &p2, &connectivity) < 3)
|
if (rb_scan_args(argc, argv, "21", &p1, &p2, &connectivity) < 3)
|
||||||
connectivity = INT2FIX(8);
|
connectivity = INT2FIX(8);
|
||||||
CvPoint point1 = VALUE_TO_CVPOINT(p1), point2 = VALUE_TO_CVPOINT(p2);
|
CvPoint point1 = VALUE_TO_CVPOINT(p1), point2 = VALUE_TO_CVPOINT(p2);
|
||||||
int size;
|
int size;
|
||||||
switch(FIX2INT(connectivity)) {
|
switch(FIX2INT(connectivity)) {
|
||||||
case 4:
|
case 4:
|
||||||
size = abs(point2.x - point1.x) + abs(point2.y - point1.y) + 1;
|
size = abs(point2.x - point1.x) + abs(point2.y - point1.y) + 1;
|
||||||
break;
|
break;
|
||||||
case 8:
|
case 8:
|
||||||
size = maxint(abs(point2.x - point1.x) + 1, abs(point2.y - point1.y) + 1);
|
size = maxint(abs(point2.x - point1.x) + 1, abs(point2.y - point1.y) + 1);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
rb_raise(rb_eArgError, "argument 3(connectivity) should be 4 or 8. 8 is default.");
|
rb_raise(rb_eArgError, "argument 3(connectivity) should be 4 or 8. 8 is default.");
|
||||||
}
|
|
||||||
VALUE buf = cCvMat::new_object(1, size, cvGetElemType(CVARR(self)));
|
|
||||||
cvSampleLine(CVARR(self), point1, point2, CVMAT(buf)->data.ptr, FIX2INT(connectivity));
|
|
||||||
if (rb_block_given_p()) {
|
|
||||||
for(int i = 0; i < size; i++) {
|
|
||||||
//Data_Wrap_Struct(cCvScalar::rb_class(), 0, 0, CVMAT(buf)->data.ptr[]);
|
|
||||||
//rb_yield(cCvScalar::new_object);
|
|
||||||
}
|
}
|
||||||
}
|
VALUE buf = cCvMat::new_object(1, size, cvGetElemType(CVARR(self)));
|
||||||
return buf;
|
cvSampleLine(CVARR(self), point1, point2, CVMAT(buf)->data.ptr, FIX2INT(connectivity));
|
||||||
|
if (rb_block_given_p()) {
|
||||||
|
for(int i = 0; i < size; i++) {
|
||||||
|
//Data_Wrap_Struct(cCvScalar::rb_class(), 0, 0, CVMAT(buf)->data.ptr[]);
|
||||||
|
//rb_yield(cCvScalar::new_object);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return buf;
|
||||||
*/
|
*/
|
||||||
return Qnil;
|
return Qnil;
|
||||||
}
|
}
|
||||||
|
@ -3906,10 +3881,10 @@ rb_remap(int argc, VALUE *argv, VALUE self)
|
||||||
VALUE dest = Qnil;
|
VALUE dest = Qnil;
|
||||||
try {
|
try {
|
||||||
dest = new_mat_kind_object(cvGetSize(self_ptr), self);
|
dest = new_mat_kind_object(cvGetSize(self_ptr), self);
|
||||||
cvRemap(self_ptr, CVARR(dest), CVMAT_WITH_CHECK(mapx), CVMAT_WITH_CHECK(mapy),
|
cvRemap(self_ptr, CVARR(dest), CVMAT_WITH_CHECK(mapx), CVMAT_WITH_CHECK(mapy),
|
||||||
CVMETHOD("INTERPOLATION_METHOD", interpolation, CV_INTER_LINEAR)
|
CVMETHOD("INTERPOLATION_METHOD", interpolation, CV_INTER_LINEAR)
|
||||||
| CVMETHOD("WARP_FLAG", option, CV_WARP_FILL_OUTLIERS),
|
| CVMETHOD("WARP_FLAG", option, CV_WARP_FILL_OUTLIERS),
|
||||||
VALUE_TO_CVSCALAR(fillval));
|
VALUE_TO_CVSCALAR(fillval));
|
||||||
}
|
}
|
||||||
catch (cv::Exception& e) {
|
catch (cv::Exception& e) {
|
||||||
raise_cverror(e);
|
raise_cverror(e);
|
||||||
|
@ -3927,13 +3902,13 @@ VALUE
|
||||||
rb_log_polar(int argc, VALUE *argv, VALUE self)
|
rb_log_polar(int argc, VALUE *argv, VALUE self)
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
VALUE size, center, m, flags, fillval, dest;
|
VALUE size, center, m, flags, fillval, dest;
|
||||||
rb_scan_args(argc, argv, "3*", &size, ¢er, &m, &flags);
|
rb_scan_args(argc, argv, "3*", &size, ¢er, &m, &flags);
|
||||||
dest = cCvMat::new_object();
|
dest = cCvMat::new_object();
|
||||||
cvLogPolar(CVARR(self), CVARR(dest),
|
cvLogPolar(CVARR(self), CVARR(dest),
|
||||||
VALUE_TO_CVPOINT2D32F(center), NUM2DBL(m),
|
VALUE_TO_CVPOINT2D32F(center), NUM2DBL(m),
|
||||||
CVMETHOD("INTERPOLATION_METHOD", interpolation, CV_INTER_LINEAR) | CVMETHOD("WARP_FLAG", option, CV_WARP_FILL_OUTLIEARS), VALUE_TO_CVSCALAR(fillval));
|
CVMETHOD("INTERPOLATION_METHOD", interpolation, CV_INTER_LINEAR) | CVMETHOD("WARP_FLAG", option, CV_WARP_FILL_OUTLIEARS), VALUE_TO_CVSCALAR(fillval));
|
||||||
return dest;
|
return dest;
|
||||||
*/
|
*/
|
||||||
return Qnil;
|
return Qnil;
|
||||||
}
|
}
|
||||||
|
@ -4177,29 +4152,29 @@ rb_smooth(int argc, VALUE *argv, VALUE self)
|
||||||
VALUE (*smooth_func)(int c, VALUE* v, VALUE s);
|
VALUE (*smooth_func)(int c, VALUE* v, VALUE s);
|
||||||
argc--;
|
argc--;
|
||||||
switch (_smoothtype) {
|
switch (_smoothtype) {
|
||||||
case CV_BLUR_NO_SCALE:
|
case CV_BLUR_NO_SCALE:
|
||||||
smooth_func = rb_smooth_blur_no_scale;
|
smooth_func = rb_smooth_blur_no_scale;
|
||||||
argc = (argc > 2) ? 2 : argc;
|
argc = (argc > 2) ? 2 : argc;
|
||||||
break;
|
break;
|
||||||
case CV_BLUR:
|
case CV_BLUR:
|
||||||
smooth_func = rb_smooth_blur;
|
smooth_func = rb_smooth_blur;
|
||||||
argc = (argc > 2) ? 2 : argc;
|
argc = (argc > 2) ? 2 : argc;
|
||||||
break;
|
break;
|
||||||
case CV_GAUSSIAN:
|
case CV_GAUSSIAN:
|
||||||
smooth_func = rb_smooth_gaussian;
|
smooth_func = rb_smooth_gaussian;
|
||||||
break;
|
break;
|
||||||
case CV_MEDIAN:
|
case CV_MEDIAN:
|
||||||
smooth_func = rb_smooth_median;
|
smooth_func = rb_smooth_median;
|
||||||
argc = (argc > 1) ? 1 : argc;
|
argc = (argc > 1) ? 1 : argc;
|
||||||
break;
|
break;
|
||||||
case CV_BILATERAL:
|
case CV_BILATERAL:
|
||||||
smooth_func = rb_smooth_bilateral;
|
smooth_func = rb_smooth_bilateral;
|
||||||
argc = (argc > 2) ? 2 : argc;
|
argc = (argc > 2) ? 2 : argc;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
smooth_func = rb_smooth_gaussian;
|
smooth_func = rb_smooth_gaussian;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
VALUE result = Qnil;
|
VALUE result = Qnil;
|
||||||
try {
|
try {
|
||||||
result = (*smooth_func)(argc, argv + 1, self);
|
result = (*smooth_func)(argc, argv + 1, self);
|
||||||
|
@ -4755,11 +4730,11 @@ rb_moments(int argc, VALUE *argv, VALUE self)
|
||||||
IplImage image = *IPLIMAGE(self);
|
IplImage image = *IPLIMAGE(self);
|
||||||
VALUE moments = rb_ary_new();
|
VALUE moments = rb_ary_new();
|
||||||
try {
|
try {
|
||||||
int cn = CV_MAT_CN(cvGetElemType(CVARR(self)));
|
int cn = CV_MAT_CN(cvGetElemType(CVARR(self)));
|
||||||
for (int i = 1; i <= cn; ++i) {
|
for (int i = 1; i <= cn; ++i) {
|
||||||
cvSetImageCOI(&image, i);
|
cvSetImageCOI(&image, i);
|
||||||
rb_ary_push(moments, cCvMoments::new_object(&image, TRUE_OR_FALSE(is_binary, 0)));
|
rb_ary_push(moments, cCvMoments::new_object(&image, TRUE_OR_FALSE(is_binary, 0)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (cv::Exception& e) {
|
catch (cv::Exception& e) {
|
||||||
raise_cverror(e);
|
raise_cverror(e);
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
#include "opencv.h"
|
#include "opencv.h"
|
||||||
|
|
||||||
|
|
||||||
#define __NAMESPACE_BEGIN_CVMAT namespace cCvMat{
|
#define __NAMESPACE_BEGIN_CVMAT namespace cCvMat {
|
||||||
#define __NAMESPACE_END_CVMAT }
|
#define __NAMESPACE_END_CVMAT }
|
||||||
|
|
||||||
__NAMESPACE_BEGIN_OPENCV
|
__NAMESPACE_BEGIN_OPENCV
|
||||||
|
@ -136,8 +136,6 @@ VALUE rb_calc_covar_matrix(int argc, VALUE *argv, VALUE self);
|
||||||
VALUE rb_mahalonobis(int argc, VALUE *argv, VALUE self);
|
VALUE rb_mahalonobis(int argc, VALUE *argv, VALUE self);
|
||||||
|
|
||||||
VALUE rb_dft(int argc, VALUE *argv, VALUE self);
|
VALUE rb_dft(int argc, VALUE *argv, VALUE self);
|
||||||
//VALUE rb_optimal_dft_size(VALUE self);
|
|
||||||
//VALUE rb_mul_spectrums(int argc, VALUE *argv, VALUE self);
|
|
||||||
VALUE rb_dct(int argc, VALUE *argv, VALUE self);
|
VALUE rb_dct(int argc, VALUE *argv, VALUE self);
|
||||||
|
|
||||||
/* drawing function*/
|
/* drawing function*/
|
||||||
|
@ -179,7 +177,6 @@ VALUE rb_warp_affine(int argc, VALUE *argv, VALUE self);
|
||||||
VALUE rb_rotation_matrix2D(VALUE self, VALUE center, VALUE angle, VALUE scale);
|
VALUE rb_rotation_matrix2D(VALUE self, VALUE center, VALUE angle, VALUE scale);
|
||||||
VALUE rb_warp_perspective(int argc, VALUE *argv, VALUE self);
|
VALUE rb_warp_perspective(int argc, VALUE *argv, VALUE self);
|
||||||
VALUE rb_find_homograpy(int argc, VALUE *argv, VALUE self);
|
VALUE rb_find_homograpy(int argc, VALUE *argv, VALUE self);
|
||||||
//VALUE rb_perspective_transform();
|
|
||||||
VALUE rb_remap(int argc, VALUE *argv, VALUE self);
|
VALUE rb_remap(int argc, VALUE *argv, VALUE self);
|
||||||
VALUE rb_log_polar(int argc, VALUE *argv);
|
VALUE rb_log_polar(int argc, VALUE *argv);
|
||||||
|
|
||||||
|
@ -218,7 +215,6 @@ VALUE rb_equalize_hist(VALUE self);
|
||||||
/* Matching*/
|
/* Matching*/
|
||||||
VALUE rb_match_template(int argc, VALUE *argv, VALUE self);
|
VALUE rb_match_template(int argc, VALUE *argv, VALUE self);
|
||||||
VALUE rb_match_shapes(int argc, VALUE *argv, VALUE self);
|
VALUE rb_match_shapes(int argc, VALUE *argv, VALUE self);
|
||||||
// VALUE rb_calc_emd(int argc, VALUE *argv, VALUE self);
|
|
||||||
/* Object Tracking */
|
/* Object Tracking */
|
||||||
VALUE rb_mean_shift(VALUE self, VALUE window, VALUE criteria);
|
VALUE rb_mean_shift(VALUE self, VALUE window, VALUE criteria);
|
||||||
VALUE rb_cam_shift(VALUE self, VALUE window, VALUE criteria);
|
VALUE rb_cam_shift(VALUE self, VALUE window, VALUE criteria);
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
#include "opencv.h"
|
#include "opencv.h"
|
||||||
|
|
||||||
#define __NAMESPACE_BEGIN_CVMATND namespace cCvMatND{
|
#define __NAMESPACE_BEGIN_CVMATND namespace cCvMatND {
|
||||||
#define __NAMESPACE_END_CVMATND }
|
#define __NAMESPACE_END_CVMATND }
|
||||||
|
|
||||||
__NAMESPACE_BEGIN_OPENCV
|
__NAMESPACE_BEGIN_OPENCV
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
#include "opencv.h"
|
#include "opencv.h"
|
||||||
|
|
||||||
#define __NAMESPACE_BEGIN_CVMOMENTS namespace cCvMoments{
|
#define __NAMESPACE_BEGIN_CVMOMENTS namespace cCvMoments {
|
||||||
#define __NAMESPACE_END_CVMOMENTS }
|
#define __NAMESPACE_END_CVMOMENTS }
|
||||||
|
|
||||||
__NAMESPACE_BEGIN_OPENCV
|
__NAMESPACE_BEGIN_OPENCV
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
* X and Y takes the value of the Fixnum. see also CvPoint2D32F
|
* X and Y takes the value of the Fixnum. see also CvPoint2D32F
|
||||||
*
|
*
|
||||||
* C structure is here, very simple.
|
* C structure is here, very simple.
|
||||||
* typdef struct CvPoint{
|
* typdef struct CvPoint {
|
||||||
* int x;
|
* int x;
|
||||||
* int y;
|
* int y;
|
||||||
* }
|
* }
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
#include "opencv.h"
|
#include "opencv.h"
|
||||||
|
|
||||||
#define __NAMESPACE_BEGIN_CVPOINT namespace cCvPoint{
|
#define __NAMESPACE_BEGIN_CVPOINT namespace cCvPoint {
|
||||||
#define __NAMESPACE_END_CVPOINT }
|
#define __NAMESPACE_END_CVPOINT }
|
||||||
|
|
||||||
__NAMESPACE_BEGIN_OPENCV
|
__NAMESPACE_BEGIN_OPENCV
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
* X and Y takes the value of the Float. see also CvPoint
|
* X and Y takes the value of the Float. see also CvPoint
|
||||||
*
|
*
|
||||||
* C structure is here, very simple.
|
* C structure is here, very simple.
|
||||||
* typdef struct CvPoint2D32f{
|
* typdef struct CvPoint2D32f {
|
||||||
* float x;
|
* float x;
|
||||||
* float y;
|
* float y;
|
||||||
* }
|
* }
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* C stracture is here, very simple.
|
* C stracture is here, very simple.
|
||||||
* typdef struct CvRect{
|
* typdef struct CvRect {
|
||||||
* int x;
|
* int x;
|
||||||
* int y;
|
* int y;
|
||||||
* int width;
|
* int width;
|
||||||
|
|
|
@ -16,9 +16,9 @@
|
||||||
* Therefore, CvScalar has 4-values.
|
* Therefore, CvScalar has 4-values.
|
||||||
*
|
*
|
||||||
* C structure is here, very simple.
|
* C structure is here, very simple.
|
||||||
* typdef struct CvScalar{
|
* typdef struct CvScalar {
|
||||||
* double val[4];
|
* double val[4];
|
||||||
* }CvScalar;
|
* } CvScalar;
|
||||||
*
|
*
|
||||||
* If obtain CvScalar-object from the method of CvMat(or IplImage),
|
* If obtain CvScalar-object from the method of CvMat(or IplImage),
|
||||||
* the channel outside the range is obtained as all 0.
|
* the channel outside the range is obtained as all 0.
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
#include "opencv.h"
|
#include "opencv.h"
|
||||||
|
|
||||||
#define __NAMESPACE_BEGIN_CVSCALAR namespace cCvScalar{
|
#define __NAMESPACE_BEGIN_CVSCALAR namespace cCvScalar {
|
||||||
#define __NAMESPACE_END_CVSCALAR }
|
#define __NAMESPACE_END_CVSCALAR }
|
||||||
|
|
||||||
__NAMESPACE_BEGIN_OPENCV
|
__NAMESPACE_BEGIN_OPENCV
|
||||||
|
|
|
@ -493,13 +493,13 @@ rb_shift(VALUE self)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* call-seq:
|
* call-seq:
|
||||||
* each{|obj| ... } -> self
|
* each {|obj| ... } -> self
|
||||||
*
|
*
|
||||||
* Calls block once for each sequence-block in <i>self</i>,
|
* Calls block once for each sequence-block in <i>self</i>,
|
||||||
* passing that sequence-block as a parameter.
|
* passing that sequence-block as a parameter.
|
||||||
* seq = CvSeq.new(CvIndex)
|
* seq = CvSeq.new(CvIndex)
|
||||||
* seq.push(5, 6, 7)
|
* seq.push(5, 6, 7)
|
||||||
* seq.each{|x| print x, " -- " }
|
* seq.each {|x| print x, " -- " }
|
||||||
* produces:
|
* produces:
|
||||||
* 5 -- 6 -- 7 --
|
* 5 -- 6 -- 7 --
|
||||||
*/
|
*/
|
||||||
|
@ -526,7 +526,7 @@ rb_each(VALUE self)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* call-seq:
|
* call-seq:
|
||||||
* each_index{|index| ... } -> self
|
* each_index {|index| ... } -> self
|
||||||
*
|
*
|
||||||
* Same as CvSeq#each, but passes the index of the element instead of the element itself.
|
* Same as CvSeq#each, but passes the index of the element instead of the element itself.
|
||||||
*/
|
*/
|
||||||
|
@ -595,15 +595,5 @@ new_sequence(VALUE klass, CvSeq *seq, VALUE element_klass, VALUE storage)
|
||||||
return Data_Wrap_Struct(klass, mark_root_object, unregister_elem_class, seq);
|
return Data_Wrap_Struct(klass, mark_root_object, unregister_elem_class, seq);
|
||||||
}
|
}
|
||||||
|
|
||||||
VALUE
|
|
||||||
auto_extend(VALUE object)
|
|
||||||
{
|
|
||||||
CvSeq *seq = CVSEQ(object);
|
|
||||||
if (CV_IS_SEQ_POINT_SET(seq)) {
|
|
||||||
rb_extend_object(object, mPointSet::rb_module());
|
|
||||||
}
|
|
||||||
return object;
|
|
||||||
}
|
|
||||||
|
|
||||||
__NAMESPACE_END_CVSEQ
|
__NAMESPACE_END_CVSEQ
|
||||||
__NAMESPACE_END_OPENCV
|
__NAMESPACE_END_OPENCV
|
||||||
|
|
|
@ -48,7 +48,6 @@ VALUE rb_clear(VALUE self);
|
||||||
VALUE new_object(CvSeq *seq, VALUE klass);
|
VALUE new_object(CvSeq *seq, VALUE klass);
|
||||||
VALUE new_object(CvSeq *seq, VALUE klass, VALUE storage);
|
VALUE new_object(CvSeq *seq, VALUE klass, VALUE storage);
|
||||||
VALUE new_sequence(VALUE klass, CvSeq *seq, VALUE element_klass, VALUE storage);
|
VALUE new_sequence(VALUE klass, CvSeq *seq, VALUE element_klass, VALUE storage);
|
||||||
VALUE auto_extend(VALUE object);
|
|
||||||
|
|
||||||
__NAMESPACE_END_CVSEQ
|
__NAMESPACE_END_CVSEQ
|
||||||
|
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
#include "opencv.h"
|
#include "opencv.h"
|
||||||
|
|
||||||
#define __NAMESPACE_BEGIN_CVSET namespace cCvSet{
|
#define __NAMESPACE_BEGIN_CVSET namespace cCvSet {
|
||||||
#define __NAMESPACE_END_CVSET }
|
#define __NAMESPACE_END_CVSET }
|
||||||
|
|
||||||
__NAMESPACE_BEGIN_OPENCV
|
__NAMESPACE_BEGIN_OPENCV
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
* X and Y takes the value of the Fixnum.
|
* X and Y takes the value of the Fixnum.
|
||||||
*
|
*
|
||||||
* C structure is here, very simple.
|
* C structure is here, very simple.
|
||||||
* typdef struct CvSize{
|
* typdef struct CvSize {
|
||||||
* int width;
|
* int width;
|
||||||
* int height;
|
* int height;
|
||||||
* }
|
* }
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
#include "opencv.h"
|
#include "opencv.h"
|
||||||
|
|
||||||
#define __NAMESPACE_BEGIN_CVSIZE2D32F namespace cCvSize2D32f{
|
#define __NAMESPACE_BEGIN_CVSIZE2D32F namespace cCvSize2D32f {
|
||||||
#define __NAMESPACE_END_CVSIZE2D32F }
|
#define __NAMESPACE_END_CVSIZE2D32F }
|
||||||
|
|
||||||
__NAMESPACE_BEGIN_OPENCV
|
__NAMESPACE_BEGIN_OPENCV
|
||||||
|
|
|
@ -12,10 +12,10 @@
|
||||||
* Document-class: OpenCV::CvClice
|
* Document-class: OpenCV::CvClice
|
||||||
*
|
*
|
||||||
* C structure is here, very simple.
|
* C structure is here, very simple.
|
||||||
* typdef struct CvSlice{
|
* typdef struct CvSlice {
|
||||||
* int start_index;
|
* int start_index;
|
||||||
* int end_index;
|
* int end_index;
|
||||||
* }CvSlice;
|
* } CvSlice;
|
||||||
*/
|
*/
|
||||||
__NAMESPACE_BEGIN_OPENCV
|
__NAMESPACE_BEGIN_OPENCV
|
||||||
__NAMESPACE_BEGIN_CVSLICE
|
__NAMESPACE_BEGIN_CVSLICE
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
#include "opencv.h"
|
#include "opencv.h"
|
||||||
|
|
||||||
#define __NAMESPACE_BEGIN_CVSLICE namespace cCvSlice{
|
#define __NAMESPACE_BEGIN_CVSLICE namespace cCvSlice {
|
||||||
#define __NAMESPACE_END_CVSLICE }
|
#define __NAMESPACE_END_CVSLICE }
|
||||||
|
|
||||||
__NAMESPACE_BEGIN_OPENCV
|
__NAMESPACE_BEGIN_OPENCV
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
#include "opencv.h"
|
#include "opencv.h"
|
||||||
|
|
||||||
#define __NAMESPACE_BEGIN_CVSPARSEMAT namespace cCvSparseMat{
|
#define __NAMESPACE_BEGIN_CVSPARSEMAT namespace cCvSparseMat {
|
||||||
#define __NAMESPACE_END_CVSPARSEMAT }
|
#define __NAMESPACE_END_CVSPARSEMAT }
|
||||||
|
|
||||||
__NAMESPACE_BEGIN_OPENCV
|
__NAMESPACE_BEGIN_OPENCV
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
* X and Y takes the value of the Fixnum. see also CvTwopoints2D32F
|
* X and Y takes the value of the Fixnum. see also CvTwopoints2D32F
|
||||||
*
|
*
|
||||||
* C structure is here, very simple.
|
* C structure is here, very simple.
|
||||||
* typdef struct CvTwopoints{
|
* typdef struct CvTwopoints {
|
||||||
* int x;
|
* int x;
|
||||||
* int y;
|
* int y;
|
||||||
* }
|
* }
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
#include "opencv.h"
|
#include "opencv.h"
|
||||||
|
|
||||||
#define __NAMESPACE_BEGIN_CVVIDEOWRITER namespace cCvVideoWriter{
|
#define __NAMESPACE_BEGIN_CVVIDEOWRITER namespace cCvVideoWriter {
|
||||||
#define __NAMESPACE_END_CVVIDEOWRITER }
|
#define __NAMESPACE_END_CVVIDEOWRITER }
|
||||||
|
|
||||||
__NAMESPACE_BEGIN_OPENCV
|
__NAMESPACE_BEGIN_OPENCV
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
#ifndef RUBY_OPENCV_GUI_H
|
#ifndef RUBY_OPENCV_GUI_H
|
||||||
#define RUBY_OPENCV_GUI_H
|
#define RUBY_OPENCV_GUI_H
|
||||||
|
|
||||||
#define __NAMESPACE_BEGIN_GUI namespace mGUI{
|
#define __NAMESPACE_BEGIN_GUI namespace mGUI {
|
||||||
#define __NAMESPACE_END_GUI }
|
#define __NAMESPACE_END_GUI }
|
||||||
|
|
||||||
#include "opencv.h"
|
#include "opencv.h"
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
#include "opencv.h"
|
#include "opencv.h"
|
||||||
|
|
||||||
#define __NAMESPACE_BEGIN_IPLCONVKERNEL namespace cIplConvKernel{
|
#define __NAMESPACE_BEGIN_IPLCONVKERNEL namespace cIplConvKernel {
|
||||||
#define __NAMESPACE_END_IPLCONVKERNEL }
|
#define __NAMESPACE_END_IPLCONVKERNEL }
|
||||||
|
|
||||||
__NAMESPACE_BEGIN_OPENCV
|
__NAMESPACE_BEGIN_OPENCV
|
||||||
|
|
|
@ -313,7 +313,7 @@ rb_smoothness(int argc, VALUE *argv, VALUE self)
|
||||||
pFourierImage = create_fourier_image(p64DepthImage);
|
pFourierImage = create_fourier_image(p64DepthImage);
|
||||||
}
|
}
|
||||||
|
|
||||||
Smoothness result = compute_smoothness(pFourierImage, f_lowFreqRatio, f_blankDensity, f_messyDnsity,
|
Smoothness result = compute_smoothness(pFourierImage, f_lowFreqRatio, f_blankDensity, f_messyDensity,
|
||||||
f_highFreqRatio, outLowDensity, outHighDensity);
|
f_highFreqRatio, outLowDensity, outHighDensity);
|
||||||
|
|
||||||
cvReleaseImage(&pFourierImage);
|
cvReleaseImage(&pFourierImage);
|
||||||
|
@ -339,7 +339,7 @@ rb_smoothness(int argc, VALUE *argv, VALUE self)
|
||||||
*/
|
*/
|
||||||
Smoothness
|
Smoothness
|
||||||
compute_smoothness(const IplImage *pFourierImage, const double lowFreqRatio, const double blankDensity,
|
compute_smoothness(const IplImage *pFourierImage, const double lowFreqRatio, const double blankDensity,
|
||||||
const double messyDensity, const double highFreqRatio, double &outLowDensity
|
const double messyDensity, const double highFreqRatio, double &outLowDensity,
|
||||||
double &outHighDensity)
|
double &outHighDensity)
|
||||||
{
|
{
|
||||||
int low, high;
|
int low, high;
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
#include "opencv.h"
|
#include "opencv.h"
|
||||||
|
|
||||||
#define __NAMESPACE_BEGIN_IPLIMAGE namespace cIplImage{
|
#define __NAMESPACE_BEGIN_IPLIMAGE namespace cIplImage {
|
||||||
#define __NAMESPACE_END_IPLIMAGE }
|
#define __NAMESPACE_END_IPLIMAGE }
|
||||||
|
|
||||||
__NAMESPACE_BEGIN_OPENCV
|
__NAMESPACE_BEGIN_OPENCV
|
||||||
|
|
|
@ -46,18 +46,6 @@ define_ruby_module()
|
||||||
rb_define_method(module, "min_enclosing_circle", RUBY_METHOD_FUNC(rb_min_enclosing_circle), 0);
|
rb_define_method(module, "min_enclosing_circle", RUBY_METHOD_FUNC(rb_min_enclosing_circle), 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
VALUE
|
|
||||||
rb_extend_object(VALUE self, VALUE object)
|
|
||||||
{
|
|
||||||
CvSeq *seq = 0;
|
|
||||||
if (!rb_obj_is_kind_of(object, cCvSeq::rb_class()))
|
|
||||||
rb_raise(rb_eTypeError, "object is not %s.\n", rb_class2name(cCvSeq::rb_class()));
|
|
||||||
|
|
||||||
if (!CV_IS_SEQ(seq))
|
|
||||||
rb_raise(rb_eTypeError, "object is not sequence.");
|
|
||||||
return rb_call_super(1, &object);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* call-seq:
|
* call-seq:
|
||||||
* contour_area -> float
|
* contour_area -> float
|
||||||
|
|
|
@ -368,7 +368,7 @@ on_mouse(int event, int x, int y, int flags, void* param) {
|
||||||
/*
|
/*
|
||||||
* call-seq:
|
* call-seq:
|
||||||
* set_mouse_callback(&block)
|
* set_mouse_callback(&block)
|
||||||
* set_mouse_callback{|| ... }
|
* set_mouse_callback {|| ... }
|
||||||
*
|
*
|
||||||
* Set mouse callback.
|
* Set mouse callback.
|
||||||
* When the mouse is operated on the window, block will be called.
|
* When the mouse is operated on the window, block will be called.
|
||||||
|
@ -379,7 +379,7 @@ on_mouse(int event, int x, int y, int flags, void* param) {
|
||||||
* window = OpenCV::GUI::Window.new "sample window"
|
* window = OpenCV::GUI::Window.new "sample window"
|
||||||
* image = OpenCV::IplImage::load "sample.png"
|
* image = OpenCV::IplImage::load "sample.png"
|
||||||
* window.show(image)
|
* window.show(image)
|
||||||
* window.set_mouse_callback{|mouse|
|
* window.set_mouse_callback {|mouse|
|
||||||
* e = "#{mouse.x}, #{mouse.y} : #{mouse.event} : "
|
* e = "#{mouse.x}, #{mouse.y} : #{mouse.event} : "
|
||||||
* e << "<L>" if mouse.left_button?
|
* e << "<L>" if mouse.left_button?
|
||||||
* e << "<R>" if mouse.right_button?
|
* e << "<R>" if mouse.right_button?
|
||||||
|
|
|
@ -28,7 +28,6 @@ VALUE rb_allocate(VALUE klass);
|
||||||
|
|
||||||
void mark(void *ptr);
|
void mark(void *ptr);
|
||||||
VALUE each_protect(VALUE key, VALUE value);
|
VALUE each_protect(VALUE key, VALUE value);
|
||||||
//VALUE each_protect(void *key, VALUE value);
|
|
||||||
void free(void *ptr);
|
void free(void *ptr);
|
||||||
|
|
||||||
VALUE rb_aref(VALUE klass, VALUE name);
|
VALUE rb_aref(VALUE klass, VALUE name);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue