1
0
mirror of https://github.com/opencv/opencv.git synced 2026-07-31 00:03:03 +04:00

Merge pull request #19337 from OrestChura:oc/fLine_fCont_perftests

[G-API]: Performance tests for fitLine and findContours

* Perf.Test for findContours(H)

* Perf.Test for fitLine(2D.3D;Mat,vector<Point2i/2f/2d/3i/3f/3d>)

* Reducing the template specializations number

* Applying comments
This commit is contained in:
Orest Chura
2021-01-24 18:41:04 +03:00
committed by GitHub
parent cd59516433
commit e982ad2284
7 changed files with 551 additions and 265 deletions
@@ -194,6 +194,42 @@ INSTANTIATE_TEST_CASE_P(GoodFeaturesInternalPerfTestCPU, GoodFeaturesPerfTest,
Values(true),
Values(cv::compile_args(IMGPROC_CPU))));
INSTANTIATE_TEST_CASE_P(FindContoursPerfTestCPU, FindContoursPerfTest,
Combine(Values(AbsExact().to_compare_obj()),
Values(CV_8UC1),
Values(szVGA, sz720p, sz1080p),
Values(RETR_EXTERNAL, RETR_LIST, RETR_CCOMP, RETR_TREE),
Values(CHAIN_APPROX_NONE, CHAIN_APPROX_SIMPLE,
CHAIN_APPROX_TC89_L1, CHAIN_APPROX_TC89_KCOS),
Values(cv::compile_args(IMGPROC_CPU))));
INSTANTIATE_TEST_CASE_P(FindContours32SPerfTestCPU, FindContoursPerfTest,
Combine(Values(AbsExact().to_compare_obj()),
Values(CV_32SC1),
Values(szVGA, sz720p, sz1080p),
Values(RETR_CCOMP, RETR_FLOODFILL),
Values(CHAIN_APPROX_NONE, CHAIN_APPROX_SIMPLE,
CHAIN_APPROX_TC89_L1, CHAIN_APPROX_TC89_KCOS),
Values(cv::compile_args(IMGPROC_CPU))));
INSTANTIATE_TEST_CASE_P(FindContoursHPerfTestCPU, FindContoursHPerfTest,
Combine(Values(AbsExact().to_compare_obj()),
Values(CV_8UC1),
Values(szVGA, sz720p, sz1080p),
Values(RETR_EXTERNAL, RETR_LIST, RETR_CCOMP, RETR_TREE),
Values(CHAIN_APPROX_NONE, CHAIN_APPROX_SIMPLE,
CHAIN_APPROX_TC89_L1, CHAIN_APPROX_TC89_KCOS),
Values(cv::compile_args(IMGPROC_CPU))));
INSTANTIATE_TEST_CASE_P(FindContoursH32SPerfTestCPU, FindContoursHPerfTest,
Combine(Values(AbsExact().to_compare_obj()),
Values(CV_32SC1),
Values(szVGA, sz720p, sz1080p),
Values(RETR_CCOMP, RETR_FLOODFILL),
Values(CHAIN_APPROX_NONE, CHAIN_APPROX_SIMPLE,
CHAIN_APPROX_TC89_L1, CHAIN_APPROX_TC89_KCOS),
Values(cv::compile_args(IMGPROC_CPU))));
INSTANTIATE_TEST_CASE_P(BoundingRectMatPerfTestCPU, BoundingRectMatPerfTest,
Combine(Values(IoUToleranceRect(0).to_compare_obj()),
Values(CV_8UC1),
@@ -218,6 +254,66 @@ INSTANTIATE_TEST_CASE_P(BoundingRectVector32FPerfTestCPU, BoundingRectVector32FP
Values(szVGA, sz720p, sz1080p),
Values(cv::compile_args(IMGPROC_CPU))));
INSTANTIATE_TEST_CASE_P(FitLine2DMatVectorPerfTestCPU, FitLine2DMatVectorPerfTest,
Combine(Values(RelDiffToleranceVec<float, 4>(0.01).to_compare_obj()),
Values(CV_8U, CV_8S, CV_16U, CV_16S,
CV_32S, CV_32F, CV_64F),
Values(cv::Size(8, 0), cv::Size(1024, 0)),
Values(DIST_L1, DIST_L2, DIST_L12, DIST_FAIR,
DIST_WELSCH, DIST_HUBER),
Values(cv::compile_args(IMGPROC_CPU))));
INSTANTIATE_TEST_CASE_P(FitLine2DVector32SPerfTestCPU, FitLine2DVector32SPerfTest,
Combine(Values(RelDiffToleranceVec<float, 4>(0.01).to_compare_obj()),
Values(cv::Size(8, 0), cv::Size(1024, 0)),
Values(DIST_L1, DIST_L2, DIST_L12, DIST_FAIR,
DIST_WELSCH, DIST_HUBER),
Values(cv::compile_args(IMGPROC_CPU))));
INSTANTIATE_TEST_CASE_P(FitLine2DVector32FPerfTestCPU, FitLine2DVector32FPerfTest,
Combine(Values(RelDiffToleranceVec<float, 4>(0.01).to_compare_obj()),
Values(cv::Size(8, 0), cv::Size(1024, 0)),
Values(DIST_L1, DIST_L2, DIST_L12, DIST_FAIR,
DIST_WELSCH, DIST_HUBER),
Values(cv::compile_args(IMGPROC_CPU))));
INSTANTIATE_TEST_CASE_P(FitLine2DVector64FPerfTestCPU, FitLine2DVector64FPerfTest,
Combine(Values(RelDiffToleranceVec<float, 4>(0.01).to_compare_obj()),
Values(cv::Size(8, 0), cv::Size(1024, 0)),
Values(DIST_L1, DIST_L2, DIST_L12, DIST_FAIR,
DIST_WELSCH, DIST_HUBER),
Values(cv::compile_args(IMGPROC_CPU))));
INSTANTIATE_TEST_CASE_P(FitLine3DMatVectorPerfTestCPU, FitLine3DMatVectorPerfTest,
Combine(Values(RelDiffToleranceVec<float, 6>(0.01).to_compare_obj()),
Values(CV_8U, CV_8S, CV_16U, CV_16S,
CV_32S, CV_32F, CV_64F),
Values(cv::Size(8, 0), cv::Size(1024, 0)),
Values(DIST_L1, DIST_L2, DIST_L12, DIST_FAIR,
DIST_WELSCH, DIST_HUBER),
Values(cv::compile_args(IMGPROC_CPU))));
INSTANTIATE_TEST_CASE_P(FitLine3DVector32SPerfTestCPU, FitLine3DVector32SPerfTest,
Combine(Values(RelDiffToleranceVec<float, 6>(0.01).to_compare_obj()),
Values(cv::Size(8, 0), cv::Size(1024, 0)),
Values(DIST_L1, DIST_L2, DIST_L12, DIST_FAIR,
DIST_WELSCH, DIST_HUBER),
Values(cv::compile_args(IMGPROC_CPU))));
INSTANTIATE_TEST_CASE_P(FitLine3DVector32FPerfTestCPU, FitLine3DVector32FPerfTest,
Combine(Values(RelDiffToleranceVec<float, 6>(0.01).to_compare_obj()),
Values(cv::Size(8, 0), cv::Size(1024, 0)),
Values(DIST_L1, DIST_L2, DIST_L12, DIST_FAIR,
DIST_WELSCH, DIST_HUBER),
Values(cv::compile_args(IMGPROC_CPU))));
INSTANTIATE_TEST_CASE_P(FitLine3DVector64FPerfTestCPU, FitLine3DVector64FPerfTest,
Combine(Values(RelDiffToleranceVec<float, 6>(0.01).to_compare_obj()),
Values(cv::Size(8, 0), cv::Size(1024, 0)),
Values(DIST_L1, DIST_L2, DIST_L12, DIST_FAIR,
DIST_WELSCH, DIST_HUBER),
Values(cv::compile_args(IMGPROC_CPU))));
INSTANTIATE_TEST_CASE_P(EqHistPerfTestCPU, EqHistPerfTest,
Combine(Values(AbsExact().to_compare_f()),
Values(szVGA, sz720p, sz1080p),