bonanza-ruby-opencv 0.0.13.20170125170729 → 0.0.13.20200923185241

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 6a884f55d0a5e88c4393a0d6d13d7a1bb51d4f0f
4
- data.tar.gz: 7f38d043686b63e14740c8e6d7da27999fe1c164
2
+ SHA256:
3
+ metadata.gz: b1e5119a7a5d2271845769949eddcaccd0a519c3afd373f967b4b7c6a19880a6
4
+ data.tar.gz: 05c6480bfdc0f25d07fdc6e4e1d79ee6be8a1ddf94f2d9aabcc7654bd3f6598e
5
5
  SHA512:
6
- metadata.gz: 73b43d88566af75058ed0f4499b199e77413dbe8ac4900a47589a8348c5c525f234d4887563d64ed9c58406b4e1a5e0457048339fe35cfb64ad2b052efc35fdc
7
- data.tar.gz: 203cc626d1141f44ca04c489656cf90e3fbb30540c6ecf87a53cdf941b939279271fde48479526dd6105769c429a045f9b85e8d8264b9fc277a8b90814d2114f
6
+ metadata.gz: 645336822d5bed3ce63d416646bfa96fe040d4f868af99546e0247abdbc1103be5fac7009340a759271bb2c2be16a7ec4d5e74328e50a9f7fe055c641906da6d
7
+ data.tar.gz: 9ecc114298d4f79d2d57f30bb8630125c089104d9a7aee0c14dd3b95826f6cc19c590e64b5eae380a56397e7143f81749c7e0227e4a9f2ffd92d4a5180e4d25d
@@ -95,19 +95,19 @@ rb_initialize(int argc, VALUE *argv, VALUE self)
95
95
 
96
96
  rb_scan_args(argc, argv, "32", &_dims, &_sizes, &_type, &_ranges, &_uniform);
97
97
  int sizes_len = RARRAY_LEN(_sizes);
98
- sizes = ALLOCA_N(int, sizes_len);
98
+ sizes = RB_ALLOC_N(int, sizes_len);
99
99
 
100
100
  if (NIL_P(_ranges)) {
101
101
  sizes = ary2intptr(_sizes, sizes);
102
102
  ranges = NULL;
103
103
  }
104
104
  else {
105
- ranges = ALLOCA_N(float*, sizes_len);
105
+ ranges = RB_ALLOC_N(float*, sizes_len);
106
106
  VALUE* range_ptr = RARRAY_PTR(_ranges);
107
107
  int i;
108
108
  for (i = 0; i < sizes_len; i++) {
109
109
  sizes[i] = NUM2INT(RARRAY_PTR(_sizes)[i]);
110
- ranges[i] = ary2fltptr(range_ptr[i], ALLOCA_N(float, 2));
110
+ ranges[i] = ary2fltptr(range_ptr[i], RB_ALLOC_N(float, 2));
111
111
  }
112
112
  }
113
113
  uniform = TRUE_OR_FALSE(_uniform, 1);
@@ -193,7 +193,7 @@ rb_calc_hist_bang(int argc, VALUE* argv, VALUE self)
193
193
  rb_scan_args(argc, argv, "12", &images, &accumulate, &mask);
194
194
  Check_Type(images, T_ARRAY);
195
195
  int num_images = RARRAY_LEN(images);
196
- IplImage** img = ALLOCA_N(IplImage*, num_images);
196
+ IplImage** img = RB_ALLOC_N(IplImage*, num_images);
197
197
  VALUE* images_ptr = RARRAY_PTR(images);
198
198
  for (int i = 0; i < num_images; i++) {
199
199
  img[i] = IPLIMAGE_WITH_CHECK(images_ptr[i]);
@@ -226,7 +226,7 @@ VALUE
226
226
  rb_aref(VALUE self, VALUE args)
227
227
  {
228
228
  int num_idx = RARRAY_LEN(args);
229
- int* idx = ALLOCA_N(int, num_idx);
229
+ int* idx = RB_ALLOC_N(int, num_idx);
230
230
  VALUE* args_ptr = RARRAY_PTR(args);
231
231
  for (int i = 0; i < num_idx; i++) {
232
232
  idx[i] = NUM2INT(args_ptr[i]);
@@ -309,8 +309,8 @@ rb_min_max_value(VALUE self)
309
309
  int *max_idx = NULL;
310
310
  try {
311
311
  dims = cvGetDims(self_ptr->bins, NULL);
312
- min_idx = ALLOCA_N(int, dims);
313
- max_idx = ALLOCA_N(int, dims);
312
+ min_idx = RB_ALLOC_N(int, dims);
313
+ max_idx = RB_ALLOC_N(int, dims);
314
314
  cvGetMinMaxHistValue(CVHISTOGRAM(self), &min_value, &max_value, min_idx, max_idx);
315
315
  }
316
316
  catch (cv::Exception& e) {
@@ -523,10 +523,10 @@ rb_set_hist_bin_ranges_bang(int argc, VALUE* argv, VALUE self)
523
523
  Check_Type(_ranges, T_ARRAY);
524
524
 
525
525
  int ranges_size = RARRAY_LEN(_ranges);
526
- float** ranges = ALLOCA_N(float*, ranges_size);
526
+ float** ranges = RB_ALLOC_N(float*, ranges_size);
527
527
  VALUE* range_ptr = RARRAY_PTR(_ranges);
528
528
  for (int i = 0; i < ranges_size; ++i) {
529
- ranges[i] = ary2fltptr(range_ptr[i], ALLOCA_N(float, 2));
529
+ ranges[i] = ary2fltptr(range_ptr[i], RB_ALLOC_N(float, 2));
530
530
  }
531
531
  int uniform = TRUE_OR_FALSE(_uniform, 1);
532
532
 
@@ -560,7 +560,7 @@ rb_calc_back_project(VALUE self, VALUE image)
560
560
  return Qnil;
561
561
  }
562
562
 
563
- IplImage** img = ALLOCA_N(IplImage*, num_images);
563
+ IplImage** img = RB_ALLOC_N(IplImage*, num_images);
564
564
  VALUE* image_ptr = RARRAY_PTR(image);
565
565
  for (int i = 0; i < num_images; ++i) {
566
566
  img[i] = IPLIMAGE_WITH_CHECK(image_ptr[i]);
@@ -607,7 +607,7 @@ rb_calc_back_project_patch(VALUE self, VALUE image, VALUE patch_size, VALUE meth
607
607
  return Qnil;
608
608
  }
609
609
 
610
- IplImage** img = ALLOCA_N(IplImage*, num_images);
610
+ IplImage** img = RB_ALLOC_N(IplImage*, num_images);
611
611
  VALUE* image_ptr = RARRAY_PTR(image);
612
612
  for (int i = 0; i < num_images; ++i) {
613
613
  img[i] = IPLIMAGE_WITH_CHECK(image_ptr[i]);
@@ -2098,12 +2098,21 @@ VALUE
2098
2098
  rb_cmp_internal(VALUE self, VALUE val, VALUE dest, int operand)
2099
2099
  {
2100
2100
  CvArr* self_ptr = CVARR(self);
2101
+
2102
+ if (CV_MAT_CN(cvGetElemType(self_ptr)) != 1) {
2103
+ rb_raise(rb_eArgError, "self should be a single-channel CvMat.");
2104
+ }
2105
+
2101
2106
  try {
2102
- if (rb_obj_is_kind_of(val, rb_klass))
2103
- cvCmp(self_ptr, CVARR(val), CVARR(dest), operand);
2104
- else if (CV_MAT_CN(cvGetElemType(self_ptr)) == 1 && rb_obj_is_kind_of(val, rb_cNumeric))
2107
+ if (rb_obj_is_kind_of(val, rb_klass)) {
2108
+ CvArr* val_ptr = CVARR(val);
2109
+ if (CV_MAT_CN(cvGetElemType(val_ptr)) != 1) {
2110
+ rb_raise(rb_eArgError, "val should be a single-channel CvMat.");
2111
+ }
2112
+ cvCmp(self_ptr, val_ptr, CVARR(dest), operand);
2113
+ } else if (rb_obj_is_kind_of(val, rb_cNumeric)) {
2105
2114
  cvCmpS(self_ptr, NUM2DBL(val), CVARR(dest), operand);
2106
- else {
2115
+ } else {
2107
2116
  VALUE mat = new_mat_kind_object(cvGetSize(CVARR(self)), self);
2108
2117
  cvSet(CVARR(mat), VALUE_TO_CVSCALAR(val));
2109
2118
  cvCmp(self_ptr, CVARR(mat), CVARR(dest), operand);
@@ -3412,14 +3421,14 @@ rb_fill_poly_bang(int argc, VALUE *argv, VALUE self)
3412
3421
  Check_Type(polygons, T_ARRAY);
3413
3422
  drawing_option = DRAWING_OPTION(drawing_option);
3414
3423
  num_polygons = RARRAY_LEN(polygons);
3415
- num_points = ALLOCA_N(int, num_polygons);
3424
+ num_points = RB_ALLOC_N(int, num_polygons);
3416
3425
 
3417
- p = ALLOCA_N(CvPoint*, num_polygons);
3426
+ p = RB_ALLOC_N(CvPoint*, num_polygons);
3418
3427
  for (j = 0; j < num_polygons; ++j) {
3419
3428
  points = rb_ary_entry(polygons, j);
3420
3429
  Check_Type(points, T_ARRAY);
3421
3430
  num_points[j] = RARRAY_LEN(points);
3422
- p[j] = ALLOCA_N(CvPoint, num_points[j]);
3431
+ p[j] = RB_ALLOC_N(CvPoint, num_points[j]);
3423
3432
  for (i = 0; i < num_points[j]; ++i) {
3424
3433
  p[j][i] = VALUE_TO_CVPOINT(rb_ary_entry(points, i));
3425
3434
  }
@@ -3485,7 +3494,7 @@ rb_fill_convex_poly_bang(int argc, VALUE *argv, VALUE self)
3485
3494
  Check_Type(points, T_ARRAY);
3486
3495
  drawing_option = DRAWING_OPTION(drawing_option);
3487
3496
  num_points = RARRAY_LEN(points);
3488
- p = ALLOCA_N(CvPoint, num_points);
3497
+ p = RB_ALLOC_N(CvPoint, num_points);
3489
3498
  for (i = 0; i < num_points; ++i)
3490
3499
  p[i] = VALUE_TO_CVPOINT(rb_ary_entry(points, i));
3491
3500
 
@@ -3561,14 +3570,14 @@ rb_poly_line_bang(int argc, VALUE *argv, VALUE self)
3561
3570
  Check_Type(polygons, T_ARRAY);
3562
3571
  drawing_option = DRAWING_OPTION(drawing_option);
3563
3572
  num_polygons = RARRAY_LEN(polygons);
3564
- num_points = ALLOCA_N(int, num_polygons);
3565
- p = ALLOCA_N(CvPoint*, num_polygons);
3573
+ num_points = RB_ALLOC_N(int, num_polygons);
3574
+ p = RB_ALLOC_N(CvPoint*, num_polygons);
3566
3575
 
3567
3576
  for (j = 0; j < num_polygons; ++j) {
3568
3577
  points = rb_ary_entry(polygons, j);
3569
3578
  Check_Type(points, T_ARRAY);
3570
3579
  num_points[j] = RARRAY_LEN(points);
3571
- p[j] = ALLOCA_N(CvPoint, num_points[j]);
3580
+ p[j] = RB_ALLOC_N(CvPoint, num_points[j]);
3572
3581
  for (i = 0; i < num_points[j]; ++i) {
3573
3582
  p[j][i] = VALUE_TO_CVPOINT(rb_ary_entry(points, i));
3574
3583
  }
@@ -3977,7 +3986,7 @@ rb_find_chessboard_corners(int argc, VALUE *argv, VALUE self)
3977
3986
 
3978
3987
  int flag = NIL_P(flag_val) ? CV_CALIB_CB_ADAPTIVE_THRESH : NUM2INT(flag_val);
3979
3988
  CvSize pattern_size = VALUE_TO_CVSIZE(pattern_size_val);
3980
- CvPoint2D32f* corners = ALLOCA_N(CvPoint2D32f, pattern_size.width * pattern_size.height);
3989
+ CvPoint2D32f* corners = RB_ALLOC_N(CvPoint2D32f, pattern_size.width * pattern_size.height);
3981
3990
  int num_found_corners = 0;
3982
3991
  int pattern_was_found = 0;
3983
3992
  try {
@@ -4013,7 +4022,7 @@ rb_find_corner_sub_pix(VALUE self, VALUE corners, VALUE win_size, VALUE zero_zon
4013
4022
  {
4014
4023
  Check_Type(corners, T_ARRAY);
4015
4024
  int count = RARRAY_LEN(corners);
4016
- CvPoint2D32f* corners_buff = ALLOCA_N(CvPoint2D32f, count);
4025
+ CvPoint2D32f* corners_buff = RB_ALLOC_N(CvPoint2D32f, count);
4017
4026
  VALUE* corners_ptr = RARRAY_PTR(corners);
4018
4027
 
4019
4028
  for (int i = 0; i < count; i++) {
@@ -4322,8 +4331,8 @@ rb_get_perspective_transform(VALUE self, VALUE source, VALUE dest)
4322
4331
 
4323
4332
  int count = RARRAY_LEN(source);
4324
4333
 
4325
- CvPoint2D32f* source_buff = ALLOCA_N(CvPoint2D32f, count);
4326
- CvPoint2D32f* dest_buff = ALLOCA_N(CvPoint2D32f, count);
4334
+ CvPoint2D32f* source_buff = RB_ALLOC_N(CvPoint2D32f, count);
4335
+ CvPoint2D32f* dest_buff = RB_ALLOC_N(CvPoint2D32f, count);
4327
4336
 
4328
4337
  for (int i = 0; i < count; i++) {
4329
4338
  source_buff[i] = *(CVPOINT2D32F(RARRAY_PTR(source)[i]));
@@ -5366,7 +5375,7 @@ rb_draw_chessboard_corners_bang(VALUE self, VALUE pattern_size, VALUE corners, V
5366
5375
  {
5367
5376
  Check_Type(corners, T_ARRAY);
5368
5377
  int count = RARRAY_LEN(corners);
5369
- CvPoint2D32f* corners_buff = ALLOCA_N(CvPoint2D32f, count);
5378
+ CvPoint2D32f* corners_buff = RB_ALLOC_N(CvPoint2D32f, count);
5370
5379
  VALUE* corners_ptr = RARRAY_PTR(corners);
5371
5380
  for (int i = 0; i < count; i++) {
5372
5381
  corners_buff[i] = *(CVPOINT2D32F(corners_ptr[i]));
@@ -6057,9 +6066,9 @@ rb_snake_image(int argc, VALUE *argv, VALUE self)
6057
6066
  (RARRAY_LEN(beta) != length) ||
6058
6067
  (RARRAY_LEN(gamma) != length))
6059
6068
  rb_raise(rb_eArgError, "alpha, beta, gamma should be same size of points");
6060
- a = ALLOCA_N(float, length);
6061
- b = ALLOCA_N(float, length);
6062
- c = ALLOCA_N(float, length);
6069
+ a = RB_ALLOC_N(float, length);
6070
+ b = RB_ALLOC_N(float, length);
6071
+ c = RB_ALLOC_N(float, length);
6063
6072
  for (i = 0; i < length; ++i) {
6064
6073
  a[i] = (float)NUM2DBL(RARRAY_PTR(alpha)[i]);
6065
6074
  b[i] = (float)NUM2DBL(RARRAY_PTR(beta)[i]);
@@ -75,7 +75,7 @@ rb_initialize(int argc, VALUE *argv, VALUE self)
75
75
  if (NIL_P(values))
76
76
  rb_raise(rb_eArgError, "argument 6 (values) should not be nil when the shape is :custom.");
77
77
  num_values = RARRAY_LEN(values);
78
- _values = ALLOCA_N(int, num_values);
78
+ _values = RB_ALLOC_N(int, num_values);
79
79
  VALUE *values_ptr = RARRAY_PTR(values);
80
80
  for (int i = 0; i < num_values; ++i)
81
81
  _values[i] = NUM2INT(values_ptr[i]);
metadata CHANGED
@@ -1,16 +1,16 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bonanza-ruby-opencv
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.13.20170125170729
4
+ version: 0.0.13.20200923185241
5
5
  platform: ruby
6
6
  authors:
7
7
  - lsxi
8
8
  - ser1zw
9
9
  - pcting
10
- autorequire:
10
+ autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2017-01-25 00:00:00.000000000 Z
13
+ date: 2020-09-23 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rdoc
@@ -328,7 +328,7 @@ homepage: https://github.com/ruby-opencv/ruby-opencv/
328
328
  licenses:
329
329
  - The BSD License
330
330
  metadata: {}
331
- post_install_message:
331
+ post_install_message:
332
332
  rdoc_options:
333
333
  - "--main"
334
334
  - README.md
@@ -345,9 +345,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
345
345
  - !ruby/object:Gem::Version
346
346
  version: '0'
347
347
  requirements: []
348
- rubyforge_project:
349
- rubygems_version: 2.5.1
350
- signing_key:
348
+ rubygems_version: 3.0.8
349
+ signing_key:
351
350
  specification_version: 4
352
351
  summary: OpenCV wrapper for Ruby
353
352
  test_files: