Commit cceeca30 authored by lqy123000's avatar lqy123000 Committed by Alexander Alekhin

Merge pull request #12916 from lqy123000:bugfix_templmatch

* avoid rounding errors

* imgproc: replace condition in matchTemplate
parent d9d8ad20
......@@ -947,7 +947,12 @@ static void common_matchTemplate( Mat& img, Mat& templ, Mat& result, int method,
if( isNormed )
{
t = std::sqrt(MAX(wndSum2 - wndMean2,0))*templNorm;
double diff2 = MAX(wndSum2 - wndMean2, 0);
if (diff2 <= std::min(0.5, 10 * FLT_EPSILON * wndSum2))
t = 0; // avoid rounding errors
else
t = std::sqrt(diff2)*templNorm;
if( fabs(num) < t )
num /= t;
else if( fabs(num) < t*1.125 )
......
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