Commit 65076241 authored by vbystricky's avatar vbystricky

Add setIppErrorStatus()

parent d17f40dc
...@@ -412,12 +412,14 @@ static bool IPPDerivScharr(InputArray _src, OutputArray _dst, int ddepth, int dx ...@@ -412,12 +412,14 @@ static bool IPPDerivScharr(InputArray _src, OutputArray _dst, int ddepth, int dx
} }
#endif #endif
static bool IPPDerivSobel(InputArray _src, OutputArray _dst, int ddepth, int dx, int dy, int ksize, double scale, double delta) static bool IPPDerivSobel(InputArray _src, OutputArray _dst, int ddepth, int dx, int dy, int ksize, double scale, double delta, int borderType)
{ {
if (ksize != 3 && ksize != 5) if ((borderType != BORDER_REPLICATE) || (3 != ksize) || (5 != ksize))
return false; return false;
if (fabs(delta) > FLT_EPSILON) if (fabs(delta) > FLT_EPSILON)
return false; return false;
if (1 != _src.channels())
return false;
int bufSize = 0; int bufSize = 0;
cv::AutoBuffer<char> buffer; cv::AutoBuffer<char> buffer;
...@@ -579,11 +581,13 @@ void cv::Sobel( InputArray _src, OutputArray _dst, int ddepth, int dx, int dy, ...@@ -579,11 +581,13 @@ void cv::Sobel( InputArray _src, OutputArray _dst, int ddepth, int dx, int dy,
{ {
if (IPPDerivScharr(_src, _dst, ddepth, dx, dy, scale, delta, borderType)) if (IPPDerivScharr(_src, _dst, ddepth, dx, dy, scale, delta, borderType))
return; return;
setIppErrorStatus();
} }
else if (0 < ksize && cn == 1 && borderType == BORDER_REPLICATE) else if (0 < ksize)
{ {
if (IPPDerivSobel(_src, _dst, ddepth, dx, dy, ksize, scale, delta)) if (IPPDerivSobel(_src, _dst, ddepth, dx, dy, ksize, scale, delta, borderType))
return; return;
setIppErrorStatus();
} }
#endif #endif
int ktype = std::max(CV_32F, std::max(ddepth, sdepth)); int ktype = std::max(CV_32F, std::max(ddepth, sdepth));
......
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