akaze-1.0.0-fix-clang-build.patch 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. --- a/src/lib/AKAZE.cpp
  2. +++ b/src/lib/AKAZE.cpp
  3. @@ -53,7 +53,7 @@ void AKAZE::Allocate_Memory_Evolution()
  4. // Allocate the dimension of the matrices for the evolution
  5. for (int i = 0; i <= options_.omax-1; i++) {
  6. - rfactor = 1.0/pow(2.0f, i);
  7. + rfactor = 1.0/powf(2.0f, i);
  8. level_height = (int)(options_.img_height*rfactor);
  9. level_width = (int)(options_.img_width*rfactor);
  10. @@ -76,7 +76,7 @@ void AKAZE::Allocate_Memory_Evolution()
  11. step.Lflow.create(size, CV_32F);
  12. step.Lstep.create(size, CV_32F);
  13. - step.esigma = options_.soffset*pow(2.0f, (float)(j)/(float)(options_.nsublevels) + i);
  14. + step.esigma = options_.soffset*powf(2.0f, (float)(j)/(float)(options_.nsublevels) + i);
  15. step.sigma_size = fRound(step.esigma);
  16. step.etime = 0.5*(step.esigma*step.esigma);
  17. step.octave = i;
  18. @@ -199,7 +199,7 @@ void AKAZE::Compute_Multiscale_Derivativ
  19. for (int i = 0; i < (int) evolution_.size(); i++) {
  20. - float ratio = pow(2.0f,(float)evolution_[i].octave);
  21. + float ratio = powf(2.0f,(float)evolution_[i].octave);
  22. int sigma_size_ = fRound(evolution_[i].esigma*options_.derivative_factor/ratio);
  23. compute_scharr_derivatives(evolution_[i].Lsmooth, evolution_[i].Lx, 1, 0, sigma_size_);
  24. @@ -224,7 +224,7 @@ void AKAZE::Compute_Determinant_Hessian_
  25. if (options_.verbosity == true)
  26. cout << "Computing detector response. Determinant of Hessian. Evolution time: " << evolution_[i].etime << endl;
  27. - float ratio = pow(2.0f,(float)evolution_[i].octave);
  28. + float ratio = powf(2.0f,(float)evolution_[i].octave);
  29. int sigma_size = fRound(evolution_[i].esigma*options_.derivative_factor/ratio);
  30. int sigma_size_quat = sigma_size*sigma_size*sigma_size*sigma_size;
  31. @@ -287,7 +287,7 @@ void AKAZE::Find_Scale_Space_Extrema(std
  32. point.size = evolution_[i].esigma*options_.derivative_factor;
  33. point.octave = evolution_[i].octave;
  34. point.class_id = i;
  35. - ratio = pow(2.0f, point.octave);
  36. + ratio = powf(2.0f, point.octave);
  37. sigma_size_ = fRound(point.size/ratio);
  38. point.pt.x = jx;
  39. point.pt.y = ix;
  40. @@ -391,7 +391,7 @@ void AKAZE::Do_Subpixel_Refinement(std::
  41. t1 = cv::getTickCount();
  42. for (size_t i = 0; i < kpts.size(); i++) {
  43. - ratio = pow(2.f,kpts[i].octave);
  44. + ratio = powf(2.0f,kpts[i].octave);
  45. x = fRound(kpts[i].pt.x/ratio);
  46. y = fRound(kpts[i].pt.y/ratio);
  47. @@ -427,7 +427,7 @@ void AKAZE::Do_Subpixel_Refinement(std::
  48. if (fabs(dst(0)) <= 1.0 && fabs(dst(1)) <= 1.0) {
  49. kpts[i].pt.x = x + dst(0);
  50. kpts[i].pt.y = y + dst(1);
  51. - int power = powf(2, evolution_[kpts[i].class_id].octave);
  52. + int power = powf(2.0, evolution_[kpts[i].class_id].octave);
  53. kpts[i].pt.x = kpts[i].pt.x*power + .5*(power-1);
  54. kpts[i].pt.y = kpts[i].pt.y*power + .5*(power-1);
  55. kpts[i].angle = 0.0;