std::cbrt could not be found

This commit is contained in:
Viet Dinh 2015-11-03 21:40:52 -05:00
parent c8bf176558
commit 433bc81b30

View File

@ -2552,7 +2552,8 @@ double cv::solvePoly( InputArray _coeffs0, OutputArray _roots0, int maxIters )
cube_coefs.at<double>(0) = 64;
cv::solveCubic(cube_coefs, cube_roots);
num.re = std::cbrt(cube_roots.at<double>(0));
num.re = std::pow(std::abs(cube_roots.at<double>(0)), 1/3);
if(cube_roots.at<double>(0) < 0) num.re = -num.re;
num.im = std::sqrt(std::pow(num.re, 2) / 3 - old_num_re / (3*num.re));
}
}