X-Git-Url: http://rtime.felk.cvut.cz/gitweb/hercules2020/kcf.git/blobdiff_plain/9ebe36c3294847c12e74583762247a36038b91c2..863408c50c11bb5dd5ab91e365c13c5ea818678b:/src/kcf.cpp diff --git a/src/kcf.cpp b/src/kcf.cpp index 64baea7..4cccea5 100644 --- a/src/kcf.cpp +++ b/src/kcf.cpp @@ -833,9 +833,12 @@ cv::Point2f KCF_Tracker::sub_pixel_peak(cv::Point &max_loc, cv::Mat &response) c float a = x.at(0), b = x.at(1), c = x.at(2), d = x.at(3), e = x.at(4); cv::Point2f sub_peak(max_loc.x, max_loc.y); - if (b > 0 || b < 0) { + if (4 * a * c - b * b > p_floating_error) { sub_peak.y = ((2.f * a * e) / b - d) / (b - (4 * a * c) / b); sub_peak.x = (-2 * c * sub_peak.y - e) / b; + if (fabs(sub_peak.x - max_loc.x) > 1 || + fabs(sub_peak.y - max_loc.y) > 1) + sub_peak = max_loc; } return sub_peak;