@@ -388,7 +388,83 @@ TEST(ximgproc_StMorph_comp, 5_stDilate) { stDilate(im(CV_8UC3), knOnes()); }
388
388
TEST (ximgproc_StMorph_comp, 5_stEerode) { stErode (im (CV_8UC3), knOnes ()); }
389
389
TEST (ximgproc_StMorph_comp, 5_cvDilate) { cvDilate (im (CV_8UC3), knOnes ()); }
390
390
TEST (ximgproc_StMorph_comp, 5_cvErode) { cvErode (im (CV_8UC3), knOnes ()); }
391
+ TEST (ximgproc_StMorph_comp, 5_cvEErode) { cvErode (im (CV_8UC3), kn5 ()); }
391
392
393
+ TEST (ximgproc_StMorph_eval, erode)
394
+ {
395
+ Mat img = im (CV_8UC3);
396
+ Mat dst;
397
+ int sizes[]{ 3 , 5 , 7 , 9 , 11 , 21 , 31 , 51 , 101 , 151 , 201 , 251 , 301 , 351 , 401 , 451 , 501 };
398
+
399
+ std::ofstream ss (" opencvlog.txt" , std::ios_base::out);
400
+
401
+ ss << " ----RECT----" << endl;
402
+ for (int i : sizes)
403
+ {
404
+ ss << i;
405
+ Size sz (i, i);
406
+ cv::TickMeter meter;
407
+ Mat kn;
408
+
409
+ // cv-rect
410
+ kn = getStructuringElement (MORPH_RECT, sz);
411
+ if (i <= 1001 )
412
+ {
413
+ meter.start ();
414
+ cv::erode (img, dst, kn);
415
+ meter.stop ();
416
+ }
417
+ ss << " \t " << meter.getTimeMilli ();
418
+ meter.reset ();
419
+
420
+ // cv-cross
421
+ kn = getStructuringElement (MORPH_CROSS, sz);
422
+ if (i <= 1001 )
423
+ {
424
+ meter.start ();
425
+ cv::erode (img, dst, kn);
426
+ meter.stop ();
427
+ }
428
+ ss << " \t " << meter.getTimeMilli ();
429
+ meter.reset ();
430
+
431
+ // cv-ellipse
432
+ kn = getStructuringElement (MORPH_ELLIPSE, sz);
433
+ if (i <= 201 )
434
+ {
435
+ meter.start ();
436
+ cv::erode (img, dst, kn);
437
+ meter.stop ();
438
+ }
439
+ ss << " \t " << meter.getTimeMilli ();
440
+ meter.reset ();
441
+
442
+ // st-rect
443
+ kn = getStructuringElement (MORPH_RECT, sz);
444
+ meter.start ();
445
+ stMorph::erode (img, dst, kn);
446
+ meter.stop ();
447
+ ss << " \t " << meter.getTimeMilli ();
448
+ meter.reset ();
449
+
450
+ // st-cross
451
+ kn = getStructuringElement (MORPH_CROSS, sz);
452
+ meter.start ();
453
+ stMorph::erode (img, dst, kn);
454
+ meter.stop ();
455
+ ss << " \t " << meter.getTimeMilli ();
456
+ meter.reset ();
457
+
458
+ // st-ellipse
459
+ kn = getStructuringElement (MORPH_ELLIPSE, sz);
460
+ meter.start ();
461
+ stMorph::erode (img, dst, kn);
462
+ meter.stop ();
463
+ ss << " \t " << meter.getTimeMilli () << endl;
464
+ meter.reset ();
465
+ }
466
+ ss.close ();
467
+ }
392
468
#pragma endregion
393
469
394
470
}} // opencv_test:: ::
0 commit comments