1 // This file is part of OpenCV project.
2 // It is subject to the license terms in the LICENSE file found in the top-level directory
3 // of this distribution and at http://opencv.org/license.html.
5 // Copyright (C) 2018-2019 Intel Corporation
8 #include "../perf_precomp.hpp"
9 #include "../common/gapi_imgproc_perf_tests.hpp"
10 #include "opencv2/gapi/cpu/imgproc.hpp"
13 #define IMGPROC_CPU cv::gapi::imgproc::cpu::kernels()
18 INSTANTIATE_TEST_CASE_P(SepFilterPerfTestCPU_8U, SepFilterPerfTest,
19 Combine(Values(AbsExact().to_compare_f()),
20 Values(CV_8UC1, CV_8UC3),
22 Values(szVGA, sz720p, sz1080p),
23 Values(-1, CV_16S, CV_32F),
24 Values(cv::compile_args(IMGPROC_CPU))));
26 INSTANTIATE_TEST_CASE_P(SepFilterPerfTestCPU_other, SepFilterPerfTest,
27 Combine(Values(AbsExact().to_compare_f()),
28 Values(CV_16UC1, CV_16SC1, CV_32FC1),
30 Values(szVGA, sz720p, sz1080p),
32 Values(cv::compile_args(IMGPROC_CPU))));
34 INSTANTIATE_TEST_CASE_P(Filter2DPerfTestCPU, Filter2DPerfTest,
35 Combine(Values(AbsExact().to_compare_f()),
36 Values(CV_8UC1, CV_8UC3, CV_16UC1, CV_16SC1, CV_32FC1),
38 Values(szVGA, sz720p, sz1080p),
39 Values(cv::BORDER_DEFAULT),
41 Values(cv::compile_args(IMGPROC_CPU))));
43 INSTANTIATE_TEST_CASE_P(BoxFilterPerfTestCPU, BoxFilterPerfTest,
44 Combine(Values(AbsTolerance(0).to_compare_f()),
45 Values(CV_8UC1, CV_8UC3, CV_16UC1, CV_16SC1, CV_32FC1),
47 Values(szVGA, sz720p, sz1080p),
48 Values(cv::BORDER_DEFAULT),
50 Values(cv::compile_args(IMGPROC_CPU))));
52 INSTANTIATE_TEST_CASE_P(BlurPerfTestCPU, BlurPerfTest,
53 Combine(Values(AbsTolerance(0).to_compare_f()),
54 Values(CV_8UC1, CV_8UC3, CV_16UC1, CV_16SC1, CV_32FC1),
56 Values(szVGA, sz720p, sz1080p),
57 Values(cv::BORDER_DEFAULT),
58 Values(cv::compile_args(IMGPROC_CPU))));
60 INSTANTIATE_TEST_CASE_P(GaussianBlurPerfTestCPU, GaussianBlurPerfTest,
61 Combine(Values(AbsExact().to_compare_f()),
62 Values(CV_8UC1, CV_8UC3, CV_16UC1, CV_16SC1, CV_32FC1),
64 Values(szVGA, sz720p, sz1080p),
65 Values(cv::compile_args(IMGPROC_CPU))));
67 INSTANTIATE_TEST_CASE_P(MedianBlurPerfTestCPU, MedianBlurPerfTest,
68 Combine(Values(AbsExact().to_compare_f()),
69 Values(CV_8UC1, CV_8UC3, CV_16UC1, CV_16SC1, CV_32FC1),
71 Values(szVGA, sz720p, sz1080p),
72 Values(cv::compile_args(IMGPROC_CPU))));
74 INSTANTIATE_TEST_CASE_P(ErodePerfTestCPU, ErodePerfTest,
75 Combine(Values(AbsExact().to_compare_f()),
76 Values(CV_8UC1, CV_8UC3, CV_16UC1, CV_16SC1, CV_32FC1),
78 Values(szVGA, sz720p, sz1080p),
79 Values(cv::MorphShapes::MORPH_RECT,
80 cv::MorphShapes::MORPH_CROSS,
81 cv::MorphShapes::MORPH_ELLIPSE),
82 Values(cv::compile_args(IMGPROC_CPU))));
84 INSTANTIATE_TEST_CASE_P(Erode3x3PerfTestCPU, Erode3x3PerfTest,
85 Combine(Values(AbsExact().to_compare_f()),
86 Values(CV_8UC1, CV_8UC3, CV_16UC1, CV_16SC1, CV_32FC1),
87 Values(szVGA, sz720p, sz1080p),
89 Values(cv::compile_args(IMGPROC_CPU))));
91 INSTANTIATE_TEST_CASE_P(DilatePerfTestCPU, DilatePerfTest,
92 Combine(Values(AbsExact().to_compare_f()),
93 Values(CV_8UC1, CV_8UC3, CV_16UC1, CV_16SC1, CV_32FC1),
95 Values(szVGA, sz720p, sz1080p),
96 Values(cv::MorphShapes::MORPH_RECT,
97 cv::MorphShapes::MORPH_CROSS,
98 cv::MorphShapes::MORPH_ELLIPSE),
99 Values(cv::compile_args(IMGPROC_CPU))));
101 INSTANTIATE_TEST_CASE_P(Dilate3x3PerfTestCPU, Dilate3x3PerfTest,
102 Combine(Values(AbsExact().to_compare_f()),
103 Values(CV_8UC1, CV_8UC3, CV_16UC1, CV_16SC1, CV_32FC1),
104 Values(szVGA, sz720p, sz1080p),
106 Values(cv::compile_args(IMGPROC_CPU))));
108 INSTANTIATE_TEST_CASE_P(SobelPerfTestCPU, SobelPerfTest,
109 Combine(Values(AbsExact().to_compare_f()),
110 Values(CV_8UC1, CV_8UC3, CV_16UC1, CV_16SC1),
112 Values(szVGA, sz720p, sz1080p),
113 Values(-1, CV_16S, CV_32F),
116 Values(cv::compile_args(IMGPROC_CPU))));
118 INSTANTIATE_TEST_CASE_P(SobelPerfTestCPU32F, SobelPerfTest,
119 Combine(Values(AbsExact().to_compare_f()),
122 Values(szVGA, sz720p, sz1080p),
126 Values(cv::compile_args(IMGPROC_CPU))));
128 INSTANTIATE_TEST_CASE_P(CannyPerfTestCPU, CannyPerfTest,
129 Combine(Values(AbsExact().to_compare_f()),
130 Values(CV_8UC1, CV_8UC3),
131 Values(szVGA, sz720p, sz1080p),
133 Values(125.0, 240.0),
136 Values(cv::compile_args(IMGPROC_CPU))));
138 INSTANTIATE_TEST_CASE_P(EqHistPerfTestCPU, EqHistPerfTest,
139 Combine(Values(AbsExact().to_compare_f()),
140 Values(szVGA, sz720p, sz1080p),
141 Values(cv::compile_args(IMGPROC_CPU))));
143 INSTANTIATE_TEST_CASE_P(RGB2GrayPerfTestCPU, RGB2GrayPerfTest,
144 Combine(Values(AbsExact().to_compare_f()),
145 Values(szVGA, sz720p, sz1080p),
146 Values(cv::compile_args(IMGPROC_CPU))));
148 INSTANTIATE_TEST_CASE_P(BGR2GrayPerfTestCPU, BGR2GrayPerfTest,
149 Combine(Values(AbsExact().to_compare_f()),
150 Values(szVGA, sz720p, sz1080p),
151 Values(cv::compile_args(IMGPROC_CPU))));
153 INSTANTIATE_TEST_CASE_P(RGB2YUVPerfTestCPU, RGB2YUVPerfTest,
154 Combine(Values(AbsExact().to_compare_f()),
155 Values(szVGA, sz720p, sz1080p),
156 Values(cv::compile_args(IMGPROC_CPU))));
158 INSTANTIATE_TEST_CASE_P(YUV2RGBPerfTestCPU, YUV2RGBPerfTest,
159 Combine(Values(AbsExact().to_compare_f()),
160 Values(szVGA, sz720p, sz1080p),
161 Values(cv::compile_args(IMGPROC_CPU))));
163 INSTANTIATE_TEST_CASE_P(RGB2LabPerfTestCPU, RGB2LabPerfTest,
164 Combine(Values(AbsExact().to_compare_f()),
165 Values(szVGA, sz720p, sz1080p),
166 Values(cv::compile_args(IMGPROC_CPU))));
168 INSTANTIATE_TEST_CASE_P(BGR2LUVPerfTestCPU, BGR2LUVPerfTest,
169 Combine(Values(AbsExact().to_compare_f()),
170 Values(szVGA, sz720p, sz1080p),
171 Values(cv::compile_args(IMGPROC_CPU))));
173 INSTANTIATE_TEST_CASE_P(LUV2BGRPerfTestCPU, LUV2BGRPerfTest,
174 Combine(Values(AbsExact().to_compare_f()),
175 Values(szVGA, sz720p, sz1080p),
176 Values(cv::compile_args(IMGPROC_CPU))));
178 INSTANTIATE_TEST_CASE_P(BGR2YUVPerfTestCPU, BGR2YUVPerfTest,
179 Combine(Values(AbsExact().to_compare_f()),
180 Values(szVGA, sz720p, sz1080p),
181 Values(cv::compile_args(IMGPROC_CPU))));
183 INSTANTIATE_TEST_CASE_P(YUV2BGRPerfTestCPU, YUV2BGRPerfTest,
184 Combine(Values(AbsExact().to_compare_f()),
185 Values(szVGA, sz720p, sz1080p),
186 Values(cv::compile_args(IMGPROC_CPU))));