ruby-opencv 0.0.9-x86-mswin32 → 0.0.10.pre-x86-mswin32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (46) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/History.txt +5 -5
  4. data/README.md +1 -1
  5. data/examples/contours/contour_retrieval_modes.rb +139 -139
  6. data/examples/face_detect.rb +20 -20
  7. data/examples/houghcircle.rb +22 -22
  8. data/examples/paint.rb +70 -70
  9. data/examples/snake.rb +43 -43
  10. data/ext/opencv/cvcondensation.cpp +282 -282
  11. data/ext/opencv/cvcondensation.h +49 -49
  12. data/ext/opencv/cvmat.cpp +6 -6
  13. data/ext/opencv/cvmatnd.cpp +44 -44
  14. data/ext/opencv/cvmatnd.h +28 -28
  15. data/ext/opencv/cvmemstorage.cpp +68 -68
  16. data/ext/opencv/cvmemstorage.h +53 -53
  17. data/ext/opencv/cvmoments.h +75 -75
  18. data/ext/opencv/cvpoint.h +64 -64
  19. data/ext/opencv/cvpoint2d32f.h +63 -63
  20. data/ext/opencv/cvpoint3d32f.h +66 -66
  21. data/ext/opencv/cvrect.h +79 -79
  22. data/ext/opencv/cvscalar.h +71 -71
  23. data/ext/opencv/cvsize.h +65 -65
  24. data/ext/opencv/cvsize2d32f.h +64 -64
  25. data/ext/opencv/cvslice.h +61 -61
  26. data/ext/opencv/cvsparsemat.cpp +44 -44
  27. data/ext/opencv/cvsparsemat.h +28 -28
  28. data/ext/opencv/cvsurfparams.h +58 -58
  29. data/ext/opencv/cvsurfpoint.h +52 -52
  30. data/ext/opencv/cvtermcriteria.h +71 -71
  31. data/ext/opencv/cvtwopoints.cpp +116 -116
  32. data/ext/opencv/cvtwopoints.h +51 -51
  33. data/ext/opencv/cvvideowriter.h +43 -43
  34. data/ext/opencv/gui.cpp +68 -68
  35. data/ext/opencv/gui.h +30 -30
  36. data/ext/opencv/iplconvkernel.h +71 -71
  37. data/ext/opencv/mouseevent.cpp +181 -181
  38. data/ext/opencv/mouseevent.h +56 -56
  39. data/ext/opencv/opencv.cpp +5 -0
  40. data/ext/opencv/trackbar.h +69 -69
  41. data/ext/opencv/window.h +66 -66
  42. data/lib/opencv/version.rb +1 -1
  43. data/ruby-opencv.gemspec +7 -7
  44. data/test/test_cvmat_imageprocessing.rb +15 -25
  45. data/test/test_opencv.rb +7 -2
  46. metadata +7 -7
@@ -1,71 +1,71 @@
1
- /************************************************************
2
-
3
- cvtermcriteria.h -
4
-
5
- $Author: lsxi $
6
-
7
- Copyright (C) 2005-2006 Masakazu Yonekura
8
-
9
- ************************************************************/
10
- #ifndef RUBY_OPENCV_CVTERMCRITERIA_H
11
- #define RUBY_OPENCV_CVTERMCRITERIA_H
12
-
13
- #include "opencv.h"
14
-
15
- #define __NAMESPACE_BEGIN_CVTERMCRITERIA namespace cCvTermCriteria {
16
- #define __NAMESPACE_END_CVTERMCRITERIA }
17
-
18
- __NAMESPACE_BEGIN_OPENCV
19
- __NAMESPACE_BEGIN_CVTERMCRITERIA
20
-
21
- VALUE rb_class();
22
-
23
- void define_ruby_class();
24
-
25
- VALUE rb_allocate(VALUE klass);
26
- VALUE rb_initialize(int argc, VALUE *argv, VALUE self);
27
-
28
- VALUE rb_type(VALUE self);
29
- VALUE rb_max(VALUE self);
30
- VALUE rb_set_max(VALUE self, VALUE max_value);
31
- VALUE rb_eps(VALUE self);
32
- VALUE rb_set_eps(VALUE self, VALUE eps_value);
33
-
34
- VALUE new_object(CvTermCriteria criteria);
35
-
36
- __NAMESPACE_END_CVTERMCRITERIA
37
-
38
- inline CvTermCriteria*
39
- CVTERMCRITERIA(VALUE object)
40
- {
41
- CvTermCriteria *ptr;
42
- Data_Get_Struct(object, CvTermCriteria, ptr);
43
- return ptr;
44
- }
45
-
46
- inline CvTermCriteria
47
- VALUE_TO_CVTERMCRITERIA(VALUE object)
48
- {
49
- if (rb_obj_is_kind_of(object, cCvTermCriteria::rb_class())) {
50
- return *CVTERMCRITERIA(object);
51
- }
52
- switch (TYPE(object)) {
53
- case T_NIL:
54
- return cvTermCriteria(CV_TERMCRIT_ITER, 0, 0);
55
- case T_FIXNUM:
56
- return cvTermCriteria(CV_TERMCRIT_ITER, NUM2INT(object), 0);
57
- case T_FLOAT:
58
- return cvTermCriteria(CV_TERMCRIT_EPS, 0, NUM2DBL(object));
59
- case T_ARRAY:
60
- if (RARRAY_LEN(object) == 2) {
61
- return cvTermCriteria(CV_TERMCRIT_ITER | CV_TERMCRIT_EPS,
62
- NUM2INT(rb_ary_entry(object, 0)),
63
- NUM2DBL(rb_ary_entry(object, 1)));
64
- }
65
- }
66
- rb_raise(rb_eTypeError, "Invalid type");
67
- }
68
-
69
- __NAMESPACE_END_OPENCV
70
-
71
- #endif // RUBY_OPENCV_CVTERMCRITERIA_H
1
+ /************************************************************
2
+
3
+ cvtermcriteria.h -
4
+
5
+ $Author: lsxi $
6
+
7
+ Copyright (C) 2005-2006 Masakazu Yonekura
8
+
9
+ ************************************************************/
10
+ #ifndef RUBY_OPENCV_CVTERMCRITERIA_H
11
+ #define RUBY_OPENCV_CVTERMCRITERIA_H
12
+
13
+ #include "opencv.h"
14
+
15
+ #define __NAMESPACE_BEGIN_CVTERMCRITERIA namespace cCvTermCriteria {
16
+ #define __NAMESPACE_END_CVTERMCRITERIA }
17
+
18
+ __NAMESPACE_BEGIN_OPENCV
19
+ __NAMESPACE_BEGIN_CVTERMCRITERIA
20
+
21
+ VALUE rb_class();
22
+
23
+ void define_ruby_class();
24
+
25
+ VALUE rb_allocate(VALUE klass);
26
+ VALUE rb_initialize(int argc, VALUE *argv, VALUE self);
27
+
28
+ VALUE rb_type(VALUE self);
29
+ VALUE rb_max(VALUE self);
30
+ VALUE rb_set_max(VALUE self, VALUE max_value);
31
+ VALUE rb_eps(VALUE self);
32
+ VALUE rb_set_eps(VALUE self, VALUE eps_value);
33
+
34
+ VALUE new_object(CvTermCriteria criteria);
35
+
36
+ __NAMESPACE_END_CVTERMCRITERIA
37
+
38
+ inline CvTermCriteria*
39
+ CVTERMCRITERIA(VALUE object)
40
+ {
41
+ CvTermCriteria *ptr;
42
+ Data_Get_Struct(object, CvTermCriteria, ptr);
43
+ return ptr;
44
+ }
45
+
46
+ inline CvTermCriteria
47
+ VALUE_TO_CVTERMCRITERIA(VALUE object)
48
+ {
49
+ if (rb_obj_is_kind_of(object, cCvTermCriteria::rb_class())) {
50
+ return *CVTERMCRITERIA(object);
51
+ }
52
+ switch (TYPE(object)) {
53
+ case T_NIL:
54
+ return cvTermCriteria(CV_TERMCRIT_ITER, 0, 0);
55
+ case T_FIXNUM:
56
+ return cvTermCriteria(CV_TERMCRIT_ITER, NUM2INT(object), 0);
57
+ case T_FLOAT:
58
+ return cvTermCriteria(CV_TERMCRIT_EPS, 0, NUM2DBL(object));
59
+ case T_ARRAY:
60
+ if (RARRAY_LEN(object) == 2) {
61
+ return cvTermCriteria(CV_TERMCRIT_ITER | CV_TERMCRIT_EPS,
62
+ NUM2INT(rb_ary_entry(object, 0)),
63
+ NUM2DBL(rb_ary_entry(object, 1)));
64
+ }
65
+ }
66
+ rb_raise(rb_eTypeError, "Invalid type");
67
+ }
68
+
69
+ __NAMESPACE_END_OPENCV
70
+
71
+ #endif // RUBY_OPENCV_CVTERMCRITERIA_H
@@ -1,116 +1,116 @@
1
- /************************************************************
2
-
3
- cvtwopoints.cpp -
4
-
5
- $Author: lsxi $
6
-
7
- Copyright (C) 2005-2006 Masakazu Yonekura
8
-
9
- ************************************************************/
10
- #include "cvtwopoints.h"
11
- /*
12
- * Document-class: OpenCV::CvTwopoints
13
- *
14
- * This class means one twopoints on X axis Y axis.
15
- * X and Y takes the value of the Fixnum. see also CvTwopoints2D32F
16
- *
17
- * C structure is here, very simple.
18
- * typdef struct CvTwopoints {
19
- * int x;
20
- * int y;
21
- * }
22
- */
23
- __NAMESPACE_BEGIN_OPENCV
24
- __NAMESPACE_BEGIN_CVTWOPOINTS
25
-
26
- VALUE rb_klass;
27
-
28
- VALUE
29
- rb_class()
30
- {
31
- return rb_klass;
32
- }
33
-
34
- void
35
- define_ruby_class()
36
- {
37
- if (rb_klass)
38
- return;
39
- /*
40
- * opencv = rb_define_module("OpenCV");
41
- *
42
- * note: this comment is used by rdoc.
43
- */
44
- VALUE opencv = rb_module_opencv();
45
-
46
- rb_klass = rb_define_class_under(opencv, "CvTwoPoints", rb_cObject);
47
- rb_define_alloc_func(rb_klass, rb_allocate);
48
- rb_define_method(rb_klass, "point1", RUBY_METHOD_FUNC(rb_point1), 0);
49
- rb_define_method(rb_klass, "point2", RUBY_METHOD_FUNC(rb_point2), 0);
50
- rb_define_method(rb_klass, "[]", RUBY_METHOD_FUNC(rb_aref), 1);
51
- rb_define_method(rb_klass, "to_ary", RUBY_METHOD_FUNC(rb_to_ary), 0);
52
- rb_define_alias(rb_klass, "to_a", "to_ary");
53
- }
54
-
55
- VALUE
56
- rb_allocate(VALUE klass)
57
- {
58
- CvTwoPoints *ptr;
59
- return Data_Make_Struct(klass, CvTwoPoints, 0, -1, ptr);
60
- }
61
-
62
- /*
63
- * Return point 1.
64
- */
65
- VALUE
66
- rb_point1(VALUE self)
67
- {
68
- return cCvPoint::new_object(CVTWOPOINTS(self)->p1);
69
- }
70
-
71
- /*
72
- * Return point2.
73
- */
74
- VALUE
75
- rb_point2(VALUE self)
76
- {
77
- return cCvPoint::new_object(CVTWOPOINTS(self)->p2);
78
- }
79
-
80
- /*
81
- * call-seq:
82
- * [<i>index</i>]
83
- *
84
- * Return value of <i>index</i> dimension.
85
- */
86
- VALUE
87
- rb_aref(VALUE self, VALUE index)
88
- {
89
- switch (NUM2INT(index)) {
90
- case 0:
91
- return cCvPoint::new_object(CVTWOPOINTS(self)->p1);
92
- break;
93
- case 1:
94
- return cCvPoint::new_object(CVTWOPOINTS(self)->p2);
95
- break;
96
- default:
97
- rb_raise(rb_eIndexError, "index should be 0...2");
98
- break;
99
- }
100
- return Qnil;
101
- }
102
-
103
- /*
104
- * call-seq:
105
- * to_ary -> [self.point1, self.point2]
106
- *
107
- * Return 2 point by Array.
108
- */
109
- VALUE
110
- rb_to_ary(VALUE self)
111
- {
112
- return rb_ary_new3(2, rb_point1(self), rb_point2(self));
113
- }
114
-
115
- __NAMESPACE_END_CVTWOPOINTS
116
- __NAMESPACE_END_OPENCV
1
+ /************************************************************
2
+
3
+ cvtwopoints.cpp -
4
+
5
+ $Author: lsxi $
6
+
7
+ Copyright (C) 2005-2006 Masakazu Yonekura
8
+
9
+ ************************************************************/
10
+ #include "cvtwopoints.h"
11
+ /*
12
+ * Document-class: OpenCV::CvTwopoints
13
+ *
14
+ * This class means one twopoints on X axis Y axis.
15
+ * X and Y takes the value of the Fixnum. see also CvTwopoints2D32F
16
+ *
17
+ * C structure is here, very simple.
18
+ * typdef struct CvTwopoints {
19
+ * int x;
20
+ * int y;
21
+ * }
22
+ */
23
+ __NAMESPACE_BEGIN_OPENCV
24
+ __NAMESPACE_BEGIN_CVTWOPOINTS
25
+
26
+ VALUE rb_klass;
27
+
28
+ VALUE
29
+ rb_class()
30
+ {
31
+ return rb_klass;
32
+ }
33
+
34
+ void
35
+ define_ruby_class()
36
+ {
37
+ if (rb_klass)
38
+ return;
39
+ /*
40
+ * opencv = rb_define_module("OpenCV");
41
+ *
42
+ * note: this comment is used by rdoc.
43
+ */
44
+ VALUE opencv = rb_module_opencv();
45
+
46
+ rb_klass = rb_define_class_under(opencv, "CvTwoPoints", rb_cObject);
47
+ rb_define_alloc_func(rb_klass, rb_allocate);
48
+ rb_define_method(rb_klass, "point1", RUBY_METHOD_FUNC(rb_point1), 0);
49
+ rb_define_method(rb_klass, "point2", RUBY_METHOD_FUNC(rb_point2), 0);
50
+ rb_define_method(rb_klass, "[]", RUBY_METHOD_FUNC(rb_aref), 1);
51
+ rb_define_method(rb_klass, "to_ary", RUBY_METHOD_FUNC(rb_to_ary), 0);
52
+ rb_define_alias(rb_klass, "to_a", "to_ary");
53
+ }
54
+
55
+ VALUE
56
+ rb_allocate(VALUE klass)
57
+ {
58
+ CvTwoPoints *ptr;
59
+ return Data_Make_Struct(klass, CvTwoPoints, 0, -1, ptr);
60
+ }
61
+
62
+ /*
63
+ * Return point 1.
64
+ */
65
+ VALUE
66
+ rb_point1(VALUE self)
67
+ {
68
+ return cCvPoint::new_object(CVTWOPOINTS(self)->p1);
69
+ }
70
+
71
+ /*
72
+ * Return point2.
73
+ */
74
+ VALUE
75
+ rb_point2(VALUE self)
76
+ {
77
+ return cCvPoint::new_object(CVTWOPOINTS(self)->p2);
78
+ }
79
+
80
+ /*
81
+ * call-seq:
82
+ * [<i>index</i>]
83
+ *
84
+ * Return value of <i>index</i> dimension.
85
+ */
86
+ VALUE
87
+ rb_aref(VALUE self, VALUE index)
88
+ {
89
+ switch (NUM2INT(index)) {
90
+ case 0:
91
+ return cCvPoint::new_object(CVTWOPOINTS(self)->p1);
92
+ break;
93
+ case 1:
94
+ return cCvPoint::new_object(CVTWOPOINTS(self)->p2);
95
+ break;
96
+ default:
97
+ rb_raise(rb_eIndexError, "index should be 0...2");
98
+ break;
99
+ }
100
+ return Qnil;
101
+ }
102
+
103
+ /*
104
+ * call-seq:
105
+ * to_ary -> [self.point1, self.point2]
106
+ *
107
+ * Return 2 point by Array.
108
+ */
109
+ VALUE
110
+ rb_to_ary(VALUE self)
111
+ {
112
+ return rb_ary_new3(2, rb_point1(self), rb_point2(self));
113
+ }
114
+
115
+ __NAMESPACE_END_CVTWOPOINTS
116
+ __NAMESPACE_END_OPENCV
@@ -1,51 +1,51 @@
1
- /************************************************************
2
-
3
- cvtwopoints.h -
4
-
5
- $Author: lsxi $
6
-
7
- Copyright (C) 2005-2006 Masakazu Yonekura
8
-
9
- ************************************************************/
10
- #ifndef RUBY_OPENCV_CVTWOPOINTS_H
11
- #define RUBY_OPENCV_CVTWOPOINTS_H
12
-
13
- #include "opencv.h"
14
-
15
- #define __NAMESPACE_BEGIN_CVTWOPOINTS namespace cCvTwoPoints {
16
- #define __NAMESPACE_END_CVTWOPOINTS }
17
-
18
- __NAMESPACE_BEGIN_OPENCV
19
-
20
- typedef struct CvTwoPoints {
21
- CvPoint p1;
22
- CvPoint p2;
23
- } CvTwoPoints;
24
-
25
- __NAMESPACE_BEGIN_CVTWOPOINTS
26
-
27
- VALUE rb_class();
28
-
29
- void define_ruby_class();
30
-
31
- VALUE rb_allocate(VALUE klass);
32
-
33
- VALUE rb_point1(VALUE self);
34
- VALUE rb_point2(VALUE self);
35
- VALUE rb_aref(VALUE self, VALUE index);
36
- VALUE rb_to_ary(VALUE self);
37
-
38
- VALUE new_object(CvTwoPoints twopoints);
39
-
40
- __NAMESPACE_END_CVTWOPOINTS
41
-
42
- inline CvTwoPoints*
43
- CVTWOPOINTS(VALUE object) {
44
- CvTwoPoints *ptr;
45
- Data_Get_Struct(object, CvTwoPoints, ptr);
46
- return ptr;
47
- }
48
-
49
- __NAMESPACE_END_OPENCV
50
-
51
- #endif // RUBY_OPENCV_CVTWOPOINTS_H
1
+ /************************************************************
2
+
3
+ cvtwopoints.h -
4
+
5
+ $Author: lsxi $
6
+
7
+ Copyright (C) 2005-2006 Masakazu Yonekura
8
+
9
+ ************************************************************/
10
+ #ifndef RUBY_OPENCV_CVTWOPOINTS_H
11
+ #define RUBY_OPENCV_CVTWOPOINTS_H
12
+
13
+ #include "opencv.h"
14
+
15
+ #define __NAMESPACE_BEGIN_CVTWOPOINTS namespace cCvTwoPoints {
16
+ #define __NAMESPACE_END_CVTWOPOINTS }
17
+
18
+ __NAMESPACE_BEGIN_OPENCV
19
+
20
+ typedef struct CvTwoPoints {
21
+ CvPoint p1;
22
+ CvPoint p2;
23
+ } CvTwoPoints;
24
+
25
+ __NAMESPACE_BEGIN_CVTWOPOINTS
26
+
27
+ VALUE rb_class();
28
+
29
+ void define_ruby_class();
30
+
31
+ VALUE rb_allocate(VALUE klass);
32
+
33
+ VALUE rb_point1(VALUE self);
34
+ VALUE rb_point2(VALUE self);
35
+ VALUE rb_aref(VALUE self, VALUE index);
36
+ VALUE rb_to_ary(VALUE self);
37
+
38
+ VALUE new_object(CvTwoPoints twopoints);
39
+
40
+ __NAMESPACE_END_CVTWOPOINTS
41
+
42
+ inline CvTwoPoints*
43
+ CVTWOPOINTS(VALUE object) {
44
+ CvTwoPoints *ptr;
45
+ Data_Get_Struct(object, CvTwoPoints, ptr);
46
+ return ptr;
47
+ }
48
+
49
+ __NAMESPACE_END_OPENCV
50
+
51
+ #endif // RUBY_OPENCV_CVTWOPOINTS_H