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 "../test_precomp.hpp"
10 #include "../common/gapi_imgproc_tests.hpp"
11 #include <opencv2/gapi/cpu/imgproc.hpp>
15 #define IMGPROC_CPU [] () { return cv::compile_args(cv::gapi::imgproc::cpu::kernels()); }
16 } // anonymous namespace
21 INSTANTIATE_TEST_CASE_P(Filter2DTestCPU, Filter2DTest,
22 Combine(Values(CV_8UC1, CV_8UC3, CV_16UC1, CV_16SC1, CV_32FC1),
23 Values(cv::Size(1280, 720),
28 Values(AbsExact().to_compare_obj()),
30 Values(cv::BORDER_DEFAULT)));
32 INSTANTIATE_TEST_CASE_P(BoxFilterTestCPU, BoxFilterTest,
33 Combine(Values(CV_8UC1, CV_8UC3, CV_16UC1, CV_16SC1, CV_32FC1),
34 Values(cv::Size(1280, 720),
38 Values(AbsTolerance(0).to_compare_obj()),
40 Values(cv::BORDER_DEFAULT)));
42 INSTANTIATE_TEST_CASE_P(SepFilterTestCPU_8U, SepFilterTest,
43 Combine(Values(CV_8UC1, CV_8UC3),
44 Values(cv::Size(1280, 720),
46 Values(-1, CV_16S, CV_32F),
48 Values(AbsExact().to_compare_obj()),
51 INSTANTIATE_TEST_CASE_P(SepFilterTestCPU_other, SepFilterTest,
52 Combine(Values(CV_16UC1, CV_16SC1, CV_32FC1),
53 Values(cv::Size(1280, 720),
57 Values(AbsExact().to_compare_obj()),
60 INSTANTIATE_TEST_CASE_P(BlurTestCPU, BlurTest,
61 Combine(Values(CV_8UC1, CV_8UC3, CV_16UC1, CV_16SC1, CV_32FC1),
62 Values(cv::Size(1280, 720),
66 Values(AbsTolerance(0.0).to_compare_obj()),
68 Values(cv::BORDER_DEFAULT)));
70 INSTANTIATE_TEST_CASE_P(gaussBlurTestCPU, GaussianBlurTest,
71 Combine(Values(CV_8UC1, CV_8UC3, CV_16UC1, CV_16SC1, CV_32FC1),
72 Values(cv::Size(1280, 720),
76 Values(AbsExact().to_compare_obj()),
79 INSTANTIATE_TEST_CASE_P(MedianBlurTestCPU, MedianBlurTest,
80 Combine(Values(CV_8UC1, CV_8UC3, CV_16UC1, CV_16SC1, CV_32FC1),
81 Values(cv::Size(1280, 720),
85 Values(AbsExact().to_compare_obj()),
88 INSTANTIATE_TEST_CASE_P(ErodeTestCPU, ErodeTest,
89 Combine(Values(CV_8UC1, CV_8UC3, CV_16UC1, CV_16SC1, CV_32FC1),
90 Values(cv::Size(1280, 720),
94 Values(AbsExact().to_compare_obj()),
96 Values(cv::MorphShapes::MORPH_RECT,
97 cv::MorphShapes::MORPH_CROSS,
98 cv::MorphShapes::MORPH_ELLIPSE)));
100 INSTANTIATE_TEST_CASE_P(Erode3x3TestCPU, Erode3x3Test,
101 Combine(Values(CV_8UC1, CV_8UC3, CV_16UC1, CV_16SC1, CV_32FC1),
102 Values(cv::Size(1280, 720),
106 Values(AbsExact().to_compare_obj()),
109 INSTANTIATE_TEST_CASE_P(DilateTestCPU, DilateTest,
110 Combine(Values(CV_8UC1, CV_8UC3, CV_16UC1, CV_16SC1, CV_32FC1),
111 Values(cv::Size(1280, 720),
115 Values(AbsExact().to_compare_obj()),
117 Values(cv::MorphShapes::MORPH_RECT,
118 cv::MorphShapes::MORPH_CROSS,
119 cv::MorphShapes::MORPH_ELLIPSE)));
121 INSTANTIATE_TEST_CASE_P(Dilate3x3TestCPU, Dilate3x3Test,
122 Combine(Values(CV_8UC1, CV_8UC3, CV_16UC1, CV_16SC1, CV_32FC1),
123 Values(cv::Size(1280, 720),
127 Values(AbsExact().to_compare_obj()),
130 INSTANTIATE_TEST_CASE_P(SobelTestCPU, SobelTest,
131 Combine(Values(CV_8UC1, CV_8UC3, CV_16UC1, CV_16SC1),
132 Values(cv::Size(1280, 720),
134 Values(-1, CV_16S, CV_32F),
136 Values(AbsExact().to_compare_obj()),
141 INSTANTIATE_TEST_CASE_P(SobelTestCPU32F, SobelTest,
142 Combine(Values(CV_32FC1),
143 Values(cv::Size(1280, 720),
147 Values(AbsExact().to_compare_obj()),
152 INSTANTIATE_TEST_CASE_P(SobelXYTestCPU, SobelXYTest,
153 Combine(Values(CV_8UC1, CV_8UC3, CV_16UC1, CV_16SC1),
154 Values(cv::Size(1280, 720),
156 Values(-1, CV_16S, CV_32F),
158 Values(AbsExact().to_compare_obj()),
161 Values(BORDER_CONSTANT, BORDER_REPLICATE, BORDER_REFLECT),
164 INSTANTIATE_TEST_CASE_P(SobelXYTestCPU32F, SobelXYTest,
165 Combine(Values(CV_32FC1),
166 Values(cv::Size(1280, 720),
170 Values(AbsExact().to_compare_obj()),
173 Values(BORDER_CONSTANT, BORDER_REPLICATE, BORDER_REFLECT),
176 INSTANTIATE_TEST_CASE_P(EqHistTestCPU, EqHistTest,
177 Combine(Values(CV_8UC1),
178 Values(cv::Size(1280, 720),
182 Values(AbsExact().to_compare_obj())));
184 INSTANTIATE_TEST_CASE_P(CannyTestCPU, CannyTest,
185 Combine(Values(CV_8UC1, CV_8UC3),
186 Values(cv::Size(1280, 720),
190 Values(AbsSimilarPoints(0, 0.05).to_compare_obj()),
192 Values(125.0, 240.0),
196 INSTANTIATE_TEST_CASE_P(RGB2GrayTestCPU, RGB2GrayTest,
197 Combine(Values(CV_8UC3),
198 Values(cv::Size(1280, 720),
202 Values(AbsExact().to_compare_obj())));
204 INSTANTIATE_TEST_CASE_P(BGR2GrayTestCPU, BGR2GrayTest,
205 Combine(Values(CV_8UC3),
206 Values(cv::Size(1280, 720),
210 Values(AbsExact().to_compare_obj())));
212 INSTANTIATE_TEST_CASE_P(RGB2YUVTestCPU, RGB2YUVTest,
213 Combine(Values(CV_8UC3),
214 Values(cv::Size(1280, 720),
218 Values(AbsExact().to_compare_obj())));
220 INSTANTIATE_TEST_CASE_P(YUV2RGBTestCPU, YUV2RGBTest,
221 Combine(Values(CV_8UC3),
222 Values(cv::Size(1280, 720),
226 Values(AbsExact().to_compare_obj())));
228 INSTANTIATE_TEST_CASE_P(NV12toRGBTestCPU, NV12toRGBTest,
229 Combine(Values(CV_8UC1),
230 Values(cv::Size(1280, 720),
234 Values(AbsExact().to_compare_obj())));
236 INSTANTIATE_TEST_CASE_P(NV12toBGRTestCPU, NV12toBGRTest,
237 Combine(Values(CV_8UC1),
238 Values(cv::Size(1280, 720),
242 Values(AbsExact().to_compare_obj())));
244 INSTANTIATE_TEST_CASE_P(NV12toRGBpTestCPU, NV12toRGBpTest,
245 Combine(Values(CV_8UC1),
246 Values(cv::Size(1280, 720),
250 Values(AbsExact().to_compare_obj())));
252 INSTANTIATE_TEST_CASE_P(NV12toBGRpTestCPU, NV12toBGRpTest,
253 Combine(Values(CV_8UC1),
254 Values(cv::Size(1280, 720),
258 Values(AbsExact().to_compare_obj())));
260 INSTANTIATE_TEST_CASE_P(RGB2LabTestCPU, RGB2LabTest,
261 Combine(Values(CV_8UC3),
262 Values(cv::Size(1280, 720),
266 Values(AbsExact().to_compare_obj())));
268 INSTANTIATE_TEST_CASE_P(BGR2LUVTestCPU, BGR2LUVTest,
269 Combine(Values(CV_8UC3),
270 Values(cv::Size(1280, 720),
274 Values(AbsExact().to_compare_obj())));
276 INSTANTIATE_TEST_CASE_P(LUV2BGRTestCPU, LUV2BGRTest,
277 Combine(Values(CV_8UC3),
278 Values(cv::Size(1280, 720),
282 Values(AbsExact().to_compare_obj())));
284 INSTANTIATE_TEST_CASE_P(BGR2YUVTestCPU, BGR2YUVTest,
285 Combine(Values(CV_8UC3),
286 Values(cv::Size(1280, 720),
290 Values(AbsExact().to_compare_obj())));
292 INSTANTIATE_TEST_CASE_P(YUV2BGRTestCPU, YUV2BGRTest,
293 Combine(Values(CV_8UC3),
294 Values(cv::Size(1280, 720),
298 Values(AbsExact().to_compare_obj())));
300 INSTANTIATE_TEST_CASE_P(RGB2HSVTestCPU, RGB2HSVTest,
301 Combine(Values(CV_8UC3),
302 Values(cv::Size(1280, 720),
306 Values(AbsExact().to_compare_obj())));
308 INSTANTIATE_TEST_CASE_P(BayerGR2RGBTestCPU, BayerGR2RGBTest,
309 Combine(Values(CV_8UC1),
310 Values(cv::Size(1280, 720),
314 Values(AbsExact().to_compare_obj())));
316 INSTANTIATE_TEST_CASE_P(RGB2YUV422TestCPU, RGB2YUV422Test,
317 Combine(Values(CV_8UC3),
318 Values(cv::Size(1280, 720),
322 Values(AbsTolerance(1).to_compare_obj())));