From ff13c9f818a502f3df68f4f16bffcd46e19b752c Mon Sep 17 00:00:00 2001 From: Vincent Rabaud Date: Thu, 2 Jun 2011 18:08:30 +0000 Subject: [PATCH] - fix potential crash if the first scale level is not 0 --- modules/features2d/src/orb.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/modules/features2d/src/orb.cpp b/modules/features2d/src/orb.cpp index aed20c6fd4..c0f2858bbc 100644 --- a/modules/features2d/src/orb.cpp +++ b/modules/features2d/src/orb.cpp @@ -561,7 +561,7 @@ void ORB::operator()(const cv::Mat &image, const cv::Mat &mask, std::vector & keypoints = all_keypoints[level]; - float scale = 1.0f / std::pow(params_.scale_factor_, float(level - params_.first_level_)); + float scale = 1.0f / std::pow(params_.scale_factor_, float(level) - float(params_.first_level_)); for (std::vector::iterator keypoint = keypoints.begin(), keypoint_end = keypoints.end(); keypoint != keypoint_end; ++keypoint) keypoint->pt *= scale; @@ -628,7 +628,7 @@ void ORB::operator()(const cv::Mat &image, const cv::Mat &mask, std::vector::iterator keypoint = keypoints.begin(), keypoint_end = keypoints.end(); keypoint != keypoint_end; ++keypoint) keypoint->pt *= scale;