diff --git a/modules/features2d/src/orb.cpp b/modules/features2d/src/orb.cpp index 3b15be2e70..132b6bda4a 100644 --- a/modules/features2d/src/orb.cpp +++ b/modules/features2d/src/orb.cpp @@ -470,7 +470,7 @@ ORB::ORB(size_t n_features, const CommonParams & detector_params) : { // fill the extractors and descriptors for the corresponding scales float factor = 1.0 / params_.scale_factor_ / params_.scale_factor_; - int n_desired_features_per_scale = cvRound(n_features / ((std::pow(factor, params_.n_levels_) - 1) / (factor - 1))); + int n_desired_features_per_scale = cvRound(n_features / ((std::pow(factor, (int)params_.n_levels_) - 1) / (factor - 1))); n_features_per_level_.resize(detector_params.n_levels_); for (unsigned int level = 0; level < detector_params.n_levels_; level++) {