opencv-ffi 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (130) hide show
  1. data/.gitignore +7 -0
  2. data/Gemfile +15 -0
  3. data/README.md +126 -0
  4. data/Rakefile +52 -0
  5. data/docs/DocsIndex.md +1 -0
  6. data/docs/examples/load_image.rb +25 -0
  7. data/ext/Rakefile +13 -0
  8. data/ext/aishack-sift/.gitignore +4 -0
  9. data/ext/aishack-sift/Descriptor.h +34 -0
  10. data/ext/aishack-sift/KeyPoint.h +38 -0
  11. data/ext/aishack-sift/README +20 -0
  12. data/ext/aishack-sift/SIFT.cpp +1036 -0
  13. data/ext/aishack-sift/SIFT.h +84 -0
  14. data/ext/aishack-sift/example/.gitignore +2 -0
  15. data/ext/aishack-sift/example/Makefile +24 -0
  16. data/ext/aishack-sift/example/MySIFT.cpp +29 -0
  17. data/ext/aishack-sift/mkrf_conf.rb +13 -0
  18. data/ext/aishack-sift/siftlib.cpp +85 -0
  19. data/ext/eigen/.gitignore +4 -0
  20. data/ext/eigen/eigen_polynomial.cpp +41 -0
  21. data/ext/eigen/eigen_svd.cpp +100 -0
  22. data/ext/eigen/mkrf_conf.rb +14 -0
  23. data/ext/mkrf-monkey.rb +85 -0
  24. data/ext/mkrf-rakehelper-monkey.rb +52 -0
  25. data/ext/mkrf_conf.rb +3 -0
  26. data/ext/opencv-ffi/.gitignore +4 -0
  27. data/ext/opencv-ffi/matcher_helper.cpp +56 -0
  28. data/ext/opencv-ffi/mkrf_conf.rb +12 -0
  29. data/ext/opencv-ffi/vector_math.cpp +39 -0
  30. data/ext/opensurf/.gitignore +4 -0
  31. data/ext/opensurf/README +38 -0
  32. data/ext/opensurf/fasthessian.cpp +376 -0
  33. data/ext/opensurf/fasthessian.h +108 -0
  34. data/ext/opensurf/integral.cpp +58 -0
  35. data/ext/opensurf/integral.h +55 -0
  36. data/ext/opensurf/ipoint.cpp +108 -0
  37. data/ext/opensurf/ipoint.h +76 -0
  38. data/ext/opensurf/kmeans.h +172 -0
  39. data/ext/opensurf/mkrf_conf.rb +10 -0
  40. data/ext/opensurf/responselayer.h +92 -0
  41. data/ext/opensurf/surf.cpp +317 -0
  42. data/ext/opensurf/surf.h +66 -0
  43. data/ext/opensurf/surflib.cpp +98 -0
  44. data/ext/opensurf/surflib.h +96 -0
  45. data/ext/opensurf/utils.cpp +357 -0
  46. data/ext/opensurf/utils.h +63 -0
  47. data/lib/.gitignore +1 -0
  48. data/lib/opencv-ffi-ext/eigen.rb +84 -0
  49. data/lib/opencv-ffi-ext/features2d.rb +4 -0
  50. data/lib/opencv-ffi-ext/matcher_helper.rb +24 -0
  51. data/lib/opencv-ffi-ext/opensurf.rb +217 -0
  52. data/lib/opencv-ffi-ext/sift.rb +118 -0
  53. data/lib/opencv-ffi-ext/vector_math.rb +115 -0
  54. data/lib/opencv-ffi-wrappers.rb +7 -0
  55. data/lib/opencv-ffi-wrappers/core.rb +24 -0
  56. data/lib/opencv-ffi-wrappers/core/iplimage.rb +50 -0
  57. data/lib/opencv-ffi-wrappers/core/mat.rb +268 -0
  58. data/lib/opencv-ffi-wrappers/core/misc_draw.rb +44 -0
  59. data/lib/opencv-ffi-wrappers/core/point.rb +286 -0
  60. data/lib/opencv-ffi-wrappers/core/rect.rb +40 -0
  61. data/lib/opencv-ffi-wrappers/core/scalar.rb +104 -0
  62. data/lib/opencv-ffi-wrappers/core/size.rb +88 -0
  63. data/lib/opencv-ffi-wrappers/enumerable.rb +10 -0
  64. data/lib/opencv-ffi-wrappers/features2d.rb +17 -0
  65. data/lib/opencv-ffi-wrappers/features2d/image_patch.rb +322 -0
  66. data/lib/opencv-ffi-wrappers/features2d/star.rb +111 -0
  67. data/lib/opencv-ffi-wrappers/features2d/surf.rb +115 -0
  68. data/lib/opencv-ffi-wrappers/highgui.rb +10 -0
  69. data/lib/opencv-ffi-wrappers/imgproc.rb +4 -0
  70. data/lib/opencv-ffi-wrappers/imgproc/features.rb +35 -0
  71. data/lib/opencv-ffi-wrappers/imgproc/geometric.rb +39 -0
  72. data/lib/opencv-ffi-wrappers/matcher.rb +297 -0
  73. data/lib/opencv-ffi-wrappers/matrix.rb +37 -0
  74. data/lib/opencv-ffi-wrappers/misc.rb +41 -0
  75. data/lib/opencv-ffi-wrappers/misc/params.rb +34 -0
  76. data/lib/opencv-ffi-wrappers/sequence.rb +37 -0
  77. data/lib/opencv-ffi-wrappers/vectors.rb +38 -0
  78. data/lib/opencv-ffi.rb +12 -0
  79. data/lib/opencv-ffi/calib3d.rb +26 -0
  80. data/lib/opencv-ffi/core.rb +15 -0
  81. data/lib/opencv-ffi/core/draw.rb +68 -0
  82. data/lib/opencv-ffi/core/dynamic.rb +13 -0
  83. data/lib/opencv-ffi/core/library.rb +5 -0
  84. data/lib/opencv-ffi/core/operations.rb +122 -0
  85. data/lib/opencv-ffi/core/point.rb +22 -0
  86. data/lib/opencv-ffi/core/types.rb +172 -0
  87. data/lib/opencv-ffi/cvffi.rb +8 -0
  88. data/lib/opencv-ffi/features2d.rb +7 -0
  89. data/lib/opencv-ffi/features2d/library.rb +6 -0
  90. data/lib/opencv-ffi/features2d/star.rb +30 -0
  91. data/lib/opencv-ffi/features2d/surf.rb +38 -0
  92. data/lib/opencv-ffi/highgui.rb +31 -0
  93. data/lib/opencv-ffi/imgproc.rb +9 -0
  94. data/lib/opencv-ffi/imgproc/features.rb +37 -0
  95. data/lib/opencv-ffi/imgproc/geometric.rb +42 -0
  96. data/lib/opencv-ffi/imgproc/library.rb +6 -0
  97. data/lib/opencv-ffi/imgproc/misc.rb +39 -0
  98. data/lib/opencv-ffi/version.rb +3 -0
  99. data/opencv-ffi.gemspec +26 -0
  100. data/test/core/test_draw.rb +46 -0
  101. data/test/core/test_operations.rb +135 -0
  102. data/test/core/test_size.rb +14 -0
  103. data/test/core/test_text.rb +52 -0
  104. data/test/ext/test_eigen.rb +105 -0
  105. data/test/ext/test_opensurf.rb +35 -0
  106. data/test/ext/test_sift.rb +26 -0
  107. data/test/ext/test_vector_math.rb +85 -0
  108. data/test/features2d/test_surf.rb +63 -0
  109. data/test/imgproc/test_goodfeatures.rb +18 -0
  110. data/test/setup.rb +65 -0
  111. data/test/test_calib3d.rb +38 -0
  112. data/test/test_core.rb +26 -0
  113. data/test/test_ext.rb +8 -0
  114. data/test/test_features2d.rb +9 -0
  115. data/test/test_files/images/IMG_7088.JPG +0 -0
  116. data/test/test_files/images/IMG_7088_small.JPG +0 -0
  117. data/test/test_files/images/IMG_7089.JPG +0 -0
  118. data/test/test_highgui.rb +26 -0
  119. data/test/test_imgproc.rb +35 -0
  120. data/test/test_wrappers.rb +8 -0
  121. data/test/wrappers/core/test_draw.rb +41 -0
  122. data/test/wrappers/core/test_mat.rb +40 -0
  123. data/test/wrappers/core/test_operations.rb +35 -0
  124. data/test/wrappers/core/test_types.rb +235 -0
  125. data/test/wrappers/features2d/test_image_patch.rb +108 -0
  126. data/test/wrappers/test_imgproc.rb +87 -0
  127. data/test/wrappers/test_matcher.rb +96 -0
  128. data/test/wrappers/test_star.rb +28 -0
  129. data/test/wrappers/test_surf.rb +36 -0
  130. metadata +234 -0
@@ -0,0 +1,96 @@
1
+
2
+ require 'test/setup'
3
+ require 'benchmark'
4
+
5
+ require 'opencv-ffi'
6
+ require 'opencv-ffi-wrappers/matcher'
7
+
8
+ class TestMatchers < Test::Unit::TestCase
9
+
10
+ def setup
11
+ @img_one = TestSetup::test_image
12
+ @img_two = TestSetup::second_test_image
13
+ end
14
+
15
+ def extract_surf(img)
16
+ smallImg = CVFFI::cvCreateImage( CVFFI::CvSize.new( { :height => img.height/2,
17
+ :width => img.width/2 } ),
18
+ img.depth, img.nChannels )
19
+ CVFFI::cvResize( img, smallImg, :CV_INTER_LINEAR )
20
+
21
+
22
+ params = CVFFI::CvSURFParams.new( :hessianThreshold => 5000.0,
23
+ :upright => 0,
24
+ :extended => 0,
25
+ :nOctaves => 1,
26
+ :nOctaveLayers => 4 )
27
+
28
+ # This should test the auto=conversion to greyscale
29
+ surf = CVFFI::SURF::detect( smallImg, params )
30
+
31
+ assert_not_nil surf
32
+
33
+ surf
34
+ end
35
+
36
+
37
+ def test_matcher
38
+
39
+ surf_one = surf_two = results = nil
40
+ Benchmark.bm(12) do |b|
41
+
42
+ b.report("surf one") do
43
+ surf_one = extract_surf( @img_one )
44
+ end
45
+
46
+ b.report("surf two") do
47
+ surf_two = extract_surf( @img_two )
48
+ end
49
+
50
+ puts "Image one #{surf_one.length} features"
51
+ puts "Image two #{surf_two.length} features"
52
+
53
+
54
+ ## Test the "best-result" matcher
55
+ b.report("best_match") do
56
+ results = CVFFI::BruteForceMatcher.bestMatch( surf_one, surf_two )
57
+ end
58
+ # puts "Matches found: "
59
+ # puts results.to_s
60
+
61
+ ## Test the "max distance" matcher
62
+ b.report("distance_match") do
63
+ results = CVFFI::BruteForceMatcher.bestMatch( surf_one, surf_two, { :max_distance => 0.1 } )
64
+ end
65
+ # puts "Matches found: "
66
+ # puts results.to_s
67
+
68
+ ## Test the K-nearest-neighbor matcher
69
+ b.report("knn_match") do
70
+ results = CVFFI::BruteForceMatcher.bestMatch( surf_one, surf_two, { :k => 5 } )
71
+ end
72
+ # puts "Matches found: "
73
+ # puts results.to_s
74
+
75
+ # Test the masking functionality"
76
+ r = results.length
77
+ assert_equal r, results.num_unmasked
78
+ assert_equal 0, results.num_masked
79
+
80
+ i = rand(r)
81
+ results.mask( i )
82
+ assert_equal r-1, results.num_unmasked
83
+ assert_equal 1, results.num_masked
84
+ i == 0 ? j=i+1 : j=i-1
85
+ assert results.masked?( i )
86
+ assert !results.masked?( j )
87
+
88
+ results.unmask(i)
89
+ assert_equal r, results.num_unmasked
90
+ assert_equal 0, results.num_masked
91
+ assert !results.masked?( i )
92
+ end
93
+
94
+ end
95
+
96
+ end
@@ -0,0 +1,28 @@
1
+
2
+
3
+ require 'test/setup'
4
+
5
+ require 'opencv-ffi'
6
+ require 'opencv-ffi-wrappers/features2d/star'
7
+
8
+ class TestSTAR < Test::Unit::TestCase
9
+
10
+ def setup
11
+ @img = TestSetup::test_image
12
+ end
13
+
14
+
15
+ def test_cvExtractSTAR
16
+
17
+ params = CVFFI::STAR::Params.new
18
+ star = CVFFI::STAR::detect( @img, params )
19
+ assert_not_nil star
20
+
21
+ star.mark_on_image( @img, {:radius=>5, :thickness=>-1} )
22
+ CVFFI::cvSaveImage( TestSetup::output_filename("starWrapperPts.jpg"), @img )
23
+
24
+ ## Test some of the functions built into STAR::Result
25
+ p star[0]
26
+ end
27
+
28
+ end
@@ -0,0 +1,36 @@
1
+
2
+
3
+ require 'test/setup'
4
+
5
+ require 'opencv-ffi'
6
+ require 'opencv-ffi-wrappers/features2d/surf'
7
+
8
+ class TestSURF < Test::Unit::TestCase
9
+
10
+ def setup
11
+ end
12
+
13
+
14
+ def test_cvExtractSURF
15
+
16
+ params = CVFFI::CvSURFParams.new( :hessianThreshold => 500.0,
17
+ :upright => 0,
18
+ :extended => 0,
19
+ :nOctaves => 3,
20
+ :nOctaveLayers => 4 )
21
+
22
+ # This should test the auto=conversion to greyscale
23
+ surf = CVFFI::SURF::detect( @img.ensure_greyscale, params )
24
+
25
+ assert_not_nil surf
26
+
27
+ surf.mark_on_image( @img, {:radius=>5, :thickness=>-1} )
28
+ CVFFI::cvSaveImage( TestSetup::output_filename("surfWrapperPts.jpg"), @img )
29
+
30
+ ## Test some of the functions built into SURF::Result
31
+ p surf[0]
32
+ puts surf[0].distance_to( surf[1] )
33
+ puts surf[1].distance_to( surf[2] )
34
+ end
35
+
36
+ end
metadata ADDED
@@ -0,0 +1,234 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: opencv-ffi
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Aaron Marburg
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2011-11-24 00:00:00.000000000Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: nice-ffi
16
+ requirement: &13051740 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: *13051740
25
+ - !ruby/object:Gem::Dependency
26
+ name: mkrf
27
+ requirement: &13050520 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ type: :runtime
34
+ prerelease: false
35
+ version_requirements: *13050520
36
+ description: A wrapper around OpenCV's C interface using Ruby FFI.
37
+ email:
38
+ - aaron.marburg@pg.canterbury.ac.nz
39
+ executables: []
40
+ extensions:
41
+ - ext/mkrf_conf.rb
42
+ extra_rdoc_files: []
43
+ files:
44
+ - .gitignore
45
+ - Gemfile
46
+ - README.md
47
+ - Rakefile
48
+ - docs/DocsIndex.md
49
+ - docs/examples/load_image.rb
50
+ - ext/Rakefile
51
+ - ext/aishack-sift/.gitignore
52
+ - ext/aishack-sift/Descriptor.h
53
+ - ext/aishack-sift/KeyPoint.h
54
+ - ext/aishack-sift/README
55
+ - ext/aishack-sift/SIFT.cpp
56
+ - ext/aishack-sift/SIFT.h
57
+ - ext/aishack-sift/example/.gitignore
58
+ - ext/aishack-sift/example/Makefile
59
+ - ext/aishack-sift/example/MySIFT.cpp
60
+ - ext/aishack-sift/mkrf_conf.rb
61
+ - ext/aishack-sift/siftlib.cpp
62
+ - ext/eigen/.gitignore
63
+ - ext/eigen/eigen_polynomial.cpp
64
+ - ext/eigen/eigen_svd.cpp
65
+ - ext/eigen/mkrf_conf.rb
66
+ - ext/mkrf-monkey.rb
67
+ - ext/mkrf-rakehelper-monkey.rb
68
+ - ext/mkrf_conf.rb
69
+ - ext/opencv-ffi/.gitignore
70
+ - ext/opencv-ffi/matcher_helper.cpp
71
+ - ext/opencv-ffi/mkrf_conf.rb
72
+ - ext/opencv-ffi/vector_math.cpp
73
+ - ext/opensurf/.gitignore
74
+ - ext/opensurf/README
75
+ - ext/opensurf/fasthessian.cpp
76
+ - ext/opensurf/fasthessian.h
77
+ - ext/opensurf/integral.cpp
78
+ - ext/opensurf/integral.h
79
+ - ext/opensurf/ipoint.cpp
80
+ - ext/opensurf/ipoint.h
81
+ - ext/opensurf/kmeans.h
82
+ - ext/opensurf/mkrf_conf.rb
83
+ - ext/opensurf/responselayer.h
84
+ - ext/opensurf/surf.cpp
85
+ - ext/opensurf/surf.h
86
+ - ext/opensurf/surflib.cpp
87
+ - ext/opensurf/surflib.h
88
+ - ext/opensurf/utils.cpp
89
+ - ext/opensurf/utils.h
90
+ - lib/.gitignore
91
+ - lib/opencv-ffi-ext/eigen.rb
92
+ - lib/opencv-ffi-ext/features2d.rb
93
+ - lib/opencv-ffi-ext/matcher_helper.rb
94
+ - lib/opencv-ffi-ext/opensurf.rb
95
+ - lib/opencv-ffi-ext/sift.rb
96
+ - lib/opencv-ffi-ext/vector_math.rb
97
+ - lib/opencv-ffi-wrappers.rb
98
+ - lib/opencv-ffi-wrappers/core.rb
99
+ - lib/opencv-ffi-wrappers/core/iplimage.rb
100
+ - lib/opencv-ffi-wrappers/core/mat.rb
101
+ - lib/opencv-ffi-wrappers/core/misc_draw.rb
102
+ - lib/opencv-ffi-wrappers/core/point.rb
103
+ - lib/opencv-ffi-wrappers/core/rect.rb
104
+ - lib/opencv-ffi-wrappers/core/scalar.rb
105
+ - lib/opencv-ffi-wrappers/core/size.rb
106
+ - lib/opencv-ffi-wrappers/enumerable.rb
107
+ - lib/opencv-ffi-wrappers/features2d.rb
108
+ - lib/opencv-ffi-wrappers/features2d/image_patch.rb
109
+ - lib/opencv-ffi-wrappers/features2d/star.rb
110
+ - lib/opencv-ffi-wrappers/features2d/surf.rb
111
+ - lib/opencv-ffi-wrappers/highgui.rb
112
+ - lib/opencv-ffi-wrappers/imgproc.rb
113
+ - lib/opencv-ffi-wrappers/imgproc/features.rb
114
+ - lib/opencv-ffi-wrappers/imgproc/geometric.rb
115
+ - lib/opencv-ffi-wrappers/matcher.rb
116
+ - lib/opencv-ffi-wrappers/matrix.rb
117
+ - lib/opencv-ffi-wrappers/misc.rb
118
+ - lib/opencv-ffi-wrappers/misc/params.rb
119
+ - lib/opencv-ffi-wrappers/sequence.rb
120
+ - lib/opencv-ffi-wrappers/vectors.rb
121
+ - lib/opencv-ffi.rb
122
+ - lib/opencv-ffi/calib3d.rb
123
+ - lib/opencv-ffi/core.rb
124
+ - lib/opencv-ffi/core/draw.rb
125
+ - lib/opencv-ffi/core/dynamic.rb
126
+ - lib/opencv-ffi/core/library.rb
127
+ - lib/opencv-ffi/core/operations.rb
128
+ - lib/opencv-ffi/core/point.rb
129
+ - lib/opencv-ffi/core/types.rb
130
+ - lib/opencv-ffi/cvffi.rb
131
+ - lib/opencv-ffi/features2d.rb
132
+ - lib/opencv-ffi/features2d/library.rb
133
+ - lib/opencv-ffi/features2d/star.rb
134
+ - lib/opencv-ffi/features2d/surf.rb
135
+ - lib/opencv-ffi/highgui.rb
136
+ - lib/opencv-ffi/imgproc.rb
137
+ - lib/opencv-ffi/imgproc/features.rb
138
+ - lib/opencv-ffi/imgproc/geometric.rb
139
+ - lib/opencv-ffi/imgproc/library.rb
140
+ - lib/opencv-ffi/imgproc/misc.rb
141
+ - lib/opencv-ffi/version.rb
142
+ - opencv-ffi.gemspec
143
+ - test/core/test_draw.rb
144
+ - test/core/test_operations.rb
145
+ - test/core/test_size.rb
146
+ - test/core/test_text.rb
147
+ - test/ext/test_eigen.rb
148
+ - test/ext/test_opensurf.rb
149
+ - test/ext/test_sift.rb
150
+ - test/ext/test_vector_math.rb
151
+ - test/features2d/test_surf.rb
152
+ - test/imgproc/test_goodfeatures.rb
153
+ - test/setup.rb
154
+ - test/test_calib3d.rb
155
+ - test/test_core.rb
156
+ - test/test_ext.rb
157
+ - test/test_features2d.rb
158
+ - test/test_files/images/IMG_7088.JPG
159
+ - test/test_files/images/IMG_7088_small.JPG
160
+ - test/test_files/images/IMG_7089.JPG
161
+ - test/test_highgui.rb
162
+ - test/test_imgproc.rb
163
+ - test/test_wrappers.rb
164
+ - test/wrappers/core/test_draw.rb
165
+ - test/wrappers/core/test_mat.rb
166
+ - test/wrappers/core/test_operations.rb
167
+ - test/wrappers/core/test_types.rb
168
+ - test/wrappers/features2d/test_image_patch.rb
169
+ - test/wrappers/test_imgproc.rb
170
+ - test/wrappers/test_matcher.rb
171
+ - test/wrappers/test_star.rb
172
+ - test/wrappers/test_surf.rb
173
+ homepage: http://github.com/amarburg/opencv-ffi
174
+ licenses: []
175
+ post_install_message:
176
+ rdoc_options: []
177
+ require_paths:
178
+ - lib
179
+ required_ruby_version: !ruby/object:Gem::Requirement
180
+ none: false
181
+ requirements:
182
+ - - ! '>='
183
+ - !ruby/object:Gem::Version
184
+ version: '0'
185
+ segments:
186
+ - 0
187
+ hash: 3585082818586750734
188
+ required_rubygems_version: !ruby/object:Gem::Requirement
189
+ none: false
190
+ requirements:
191
+ - - ! '>='
192
+ - !ruby/object:Gem::Version
193
+ version: '0'
194
+ segments:
195
+ - 0
196
+ hash: 3585082818586750734
197
+ requirements: []
198
+ rubyforge_project: opencv-ffi
199
+ rubygems_version: 1.8.10
200
+ signing_key:
201
+ specification_version: 3
202
+ summary: A wrapper around OpenCV's C interface using Ruby FFI. Very preliminary.
203
+ test_files:
204
+ - test/core/test_draw.rb
205
+ - test/core/test_operations.rb
206
+ - test/core/test_size.rb
207
+ - test/core/test_text.rb
208
+ - test/ext/test_eigen.rb
209
+ - test/ext/test_opensurf.rb
210
+ - test/ext/test_sift.rb
211
+ - test/ext/test_vector_math.rb
212
+ - test/features2d/test_surf.rb
213
+ - test/imgproc/test_goodfeatures.rb
214
+ - test/setup.rb
215
+ - test/test_calib3d.rb
216
+ - test/test_core.rb
217
+ - test/test_ext.rb
218
+ - test/test_features2d.rb
219
+ - test/test_files/images/IMG_7088.JPG
220
+ - test/test_files/images/IMG_7088_small.JPG
221
+ - test/test_files/images/IMG_7089.JPG
222
+ - test/test_highgui.rb
223
+ - test/test_imgproc.rb
224
+ - test/test_wrappers.rb
225
+ - test/wrappers/core/test_draw.rb
226
+ - test/wrappers/core/test_mat.rb
227
+ - test/wrappers/core/test_operations.rb
228
+ - test/wrappers/core/test_types.rb
229
+ - test/wrappers/features2d/test_image_patch.rb
230
+ - test/wrappers/test_imgproc.rb
231
+ - test/wrappers/test_matcher.rb
232
+ - test/wrappers/test_star.rb
233
+ - test/wrappers/test_surf.rb
234
+ has_rdoc: true