Commit 9d923b50 authored by Ilya Lavrenov's avatar Ilya Lavrenov

fixed ocl::Laplacian for case when scale != 1

parent 6085c416
...@@ -1416,7 +1416,7 @@ void cv::ocl::Laplacian(const oclMat &src, oclMat &dst, int ddepth, int ksize, d ...@@ -1416,7 +1416,7 @@ void cv::ocl::Laplacian(const oclMat &src, oclMat &dst, int ddepth, int ksize, d
CV_Assert(ksize == 1 || ksize == 3); CV_Assert(ksize == 1 || ksize == 3);
static const int K[2][9] = int K[2][9] =
{ {
{0, 1, 0, 1, -4, 1, 0, 1, 0}, {0, 1, 0, 1, -4, 1, 0, 1, 0},
{2, 0, 2, 0, -8, 0, 2, 0, 2} {2, 0, 2, 0, -8, 0, 2, 0, 2}
......
...@@ -128,8 +128,11 @@ OCL_TEST_P(LaplacianTest, Accuracy) ...@@ -128,8 +128,11 @@ OCL_TEST_P(LaplacianTest, Accuracy)
{ {
random_roi(); random_roi();
Laplacian(src_roi, dst_roi, -1, ksize, 1); // border type is used as a scale factor for the Laplacian kernel
ocl::Laplacian(gsrc_roi, gdst_roi, -1, ksize, 1); // TODO scale double scale = static_cast<double>(borderType);
Laplacian(src_roi, dst_roi, -1, ksize, scale);
ocl::Laplacian(gsrc_roi, gdst_roi, -1, ksize, scale);
Near(1e-5); Near(1e-5);
} }
...@@ -371,7 +374,7 @@ INSTANTIATE_TEST_CASE_P(Filter, LaplacianTest, Combine( ...@@ -371,7 +374,7 @@ INSTANTIATE_TEST_CASE_P(Filter, LaplacianTest, Combine(
Values(CV_8UC1, CV_8UC3, CV_8UC4, CV_32FC1, CV_32FC3, CV_32FC4), Values(CV_8UC1, CV_8UC3, CV_8UC4, CV_32FC1, CV_32FC3, CV_32FC4),
Values(1, 3), Values(1, 3),
Values(Size(0, 0)), // not used Values(Size(0, 0)), // not used
Values(0), // not used Values(1, 2), // value is used as scale factor for kernel
Bool())); Bool()));
INSTANTIATE_TEST_CASE_P(Filter, Erode, Combine( INSTANTIATE_TEST_CASE_P(Filter, Erode, Combine(
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment