Commit f6895e77 authored by Vladislav Vinogradov's avatar Vladislav Vinogradov

fixed gpu filters (deriv filter and source roi calculation)

parent ced60b74
...@@ -596,7 +596,7 @@ namespace cv ...@@ -596,7 +596,7 @@ namespace cv
//! returns the separable filter engine with the specified filters //! returns the separable filter engine with the specified filters
CV_EXPORTS Ptr<FilterEngine_GPU> createSeparableFilter_GPU(const Ptr<BaseRowFilter_GPU>& rowFilter, CV_EXPORTS Ptr<FilterEngine_GPU> createSeparableFilter_GPU(const Ptr<BaseRowFilter_GPU>& rowFilter,
const Ptr<BaseColumnFilter_GPU>& columnFilter); const Ptr<BaseColumnFilter_GPU>& columnFilter, bool rowFilterFirst = true);
//! returns horizontal 1D box filter //! returns horizontal 1D box filter
//! supports only CV_8UC1 source type and CV_32FC1 sum type //! supports only CV_8UC1 source type and CV_32FC1 sum type
...@@ -645,7 +645,7 @@ namespace cv ...@@ -645,7 +645,7 @@ namespace cv
//! returns the separable linear filter engine //! returns the separable linear filter engine
CV_EXPORTS Ptr<FilterEngine_GPU> createSeparableLinearFilter_GPU(int srcType, int dstType, const Mat& rowKernel, CV_EXPORTS Ptr<FilterEngine_GPU> createSeparableLinearFilter_GPU(int srcType, int dstType, const Mat& rowKernel,
const Mat& columnKernel, const Point& anchor = Point(-1,-1)); const Mat& columnKernel, const Point& anchor = Point(-1,-1), bool rowFilterFirst = true);
//! returns filter engine for the generalized Sobel operator //! returns filter engine for the generalized Sobel operator
CV_EXPORTS Ptr<FilterEngine_GPU> createDerivFilter_GPU(int srcType, int dstType, int dx, int dy, int ksize); CV_EXPORTS Ptr<FilterEngine_GPU> createDerivFilter_GPU(int srcType, int dstType, int dx, int dy, int ksize);
...@@ -680,7 +680,7 @@ namespace cv ...@@ -680,7 +680,7 @@ namespace cv
//! applies separable 2D linear filter to the image //! applies separable 2D linear filter to the image
CV_EXPORTS void sepFilter2D(const GpuMat& src, GpuMat& dst, int ddepth, const Mat& kernelX, const Mat& kernelY, CV_EXPORTS void sepFilter2D(const GpuMat& src, GpuMat& dst, int ddepth, const Mat& kernelX, const Mat& kernelY,
Point anchor = Point(-1,-1)); Point anchor = Point(-1,-1), bool rowFilterFirst = true);
//! applies generalized Sobel operator to the image //! applies generalized Sobel operator to the image
CV_EXPORTS void Sobel(const GpuMat& src, GpuMat& dst, int ddepth, int dx, int dy, int ksize = 3, double scale = 1); CV_EXPORTS void Sobel(const GpuMat& src, GpuMat& dst, int ddepth, int dx, int dy, int ksize = 3, double scale = 1);
......
This diff is collapsed.
...@@ -359,7 +359,7 @@ protected: ...@@ -359,7 +359,7 @@ protected:
GpuMat gpuRes; GpuMat gpuRes;
cv::gpu::morphologyEx(GpuMat(img), gpuRes, ops[i], kernel); cv::gpu::morphologyEx(GpuMat(img), gpuRes, ops[i], kernel);
if (CvTS::OK != CheckNorm(cpuRes, gpuRes, Size(3, 3))) if (CvTS::OK != CheckNorm(cpuRes, gpuRes, Size(4, 4)))
res = CvTS::FAIL_GENERIC; res = CvTS::FAIL_GENERIC;
} }
return res; return res;
......
...@@ -62,10 +62,8 @@ const char* blacklist[] = ...@@ -62,10 +62,8 @@ const char* blacklist[] =
//"GPU-NppImageIntegral", // different precision //"GPU-NppImageIntegral", // different precision
//"GPU-NppImageSobel", // ??? //"GPU-NppImageSobel", // ???
//"GPU-NppImageScharr", // ??? //"GPU-NppImageScharr", // ???
//"GPU-NppImageGaussianBlur", // different precision
//"GPU-NppImageGaussianBlur", // different precision
//"GPU-NppMorphologyEx", // different precision?
0 0
}; };
......
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