From 8be0a3452ded4c8456a1c112ee0def2c37bcad75 Mon Sep 17 00:00:00 2001 From: Suleyman TURKMEN Date: Thu, 22 Dec 2016 23:29:12 +0300 Subject: [PATCH] [move sift.cpp] Update sift.cpp original commit: https://github.com/opencv/opencv_contrib/commit/cb7b59f203bf06586d6176ac812e0ee382cedcf1 --- modules/features2d/src/sift.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/modules/features2d/src/sift.cpp b/modules/features2d/src/sift.cpp index f14577bc35..380aa6f138 100644 --- a/modules/features2d/src/sift.cpp +++ b/modules/features2d/src/sift.cpp @@ -185,10 +185,12 @@ static Mat createInitialImage( const Mat& img, bool doubleImageSize, float sigma { Mat gray, gray_fpt; if( img.channels() == 3 || img.channels() == 4 ) + { cvtColor(img, gray, COLOR_BGR2GRAY); + gray.convertTo(gray_fpt, DataType::type, SIFT_FIXPT_SCALE, 0); + } else - img.copyTo(gray); - gray.convertTo(gray_fpt, DataType::type, SIFT_FIXPT_SCALE, 0); + img.convertTo(gray_fpt, DataType::type, SIFT_FIXPT_SCALE, 0); float sig_diff; @@ -196,7 +198,7 @@ static Mat createInitialImage( const Mat& img, bool doubleImageSize, float sigma { sig_diff = sqrtf( std::max(sigma * sigma - SIFT_INIT_SIGMA * SIFT_INIT_SIGMA * 4, 0.01f) ); Mat dbl; - resize(gray_fpt, dbl, Size(gray.cols*2, gray.rows*2), 0, 0, INTER_LINEAR); + resize(gray_fpt, dbl, Size(gray_fpt.cols*2, gray_fpt.rows*2), 0, 0, INTER_LINEAR); GaussianBlur(dbl, dbl, Size(), sig_diff, sig_diff); return dbl; }