INSTANTIATE_TEST_CASE_P(GaussianBlurPerfTestFluid, GaussianBlurPerfTest,
Combine(Values(ToleranceFilter(1e-3f, 0.01).to_compare_f()),
Values(CV_8UC1, CV_8UC3, CV_16UC1, CV_16SC1, CV_32FC1),
- Values(3), // TODO: add size=5, when kernel is ready
+ Values(3, 5),
Values(szVGA, sz720p, sz1080p),
Values(cv::compile_args(IMGPROC_FLUID))));
else
{
int length = chan * width;
- int xshift = chan * xborder;
+ int xshift = chan;
// horizontal pass
Buffer& dst,
Buffer& scratch)
{
- GAPI_Assert(ksize.height == 3);
-
int kxsize = ksize.width;
int kysize = ksize.height;
int chan = src.meta().chan;
int length = width * chan;
- float *buf[3];
+ constexpr int buffSize = 5;
+ GAPI_Assert(ksize.height <= buffSize);
+
+ float *buf[buffSize]{};
+
buf[0] = ky + kysize;
- buf[1] = buf[0] + length;
- buf[2] = buf[1] + length;
+ for (int i = 1; i < ksize.height; ++i)
+ {
+ buf[i] = buf[i - 1] + length;
+ }
auto anchor = cv::Point(-1, -1);
Values(-1),
Values(IMGPROC_FLUID),
Values(ToleranceFilter(1e-3f, 0.01).to_compare_obj()),
- Values(3))); // add kernel size=5 when implementation is ready
+ Values(3, 5)));
INSTANTIATE_TEST_CASE_P(medianBlurTestFluid, MedianBlurTest,
Combine(Values(CV_8UC1, CV_16UC1, CV_16SC1),