From cb3711d51d79b99cfb9b2bae71cdd4b7d97d937c Mon Sep 17 00:00:00 2001 From: Maria Dimashova Date: Thu, 11 Nov 2010 16:06:22 +0000 Subject: [PATCH] fixed SURF::operator() (#423) --- modules/features2d/src/surf.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/modules/features2d/src/surf.cpp b/modules/features2d/src/surf.cpp index 5552ed3e1..5a184684e 100644 --- a/modules/features2d/src/surf.cpp +++ b/modules/features2d/src/surf.cpp @@ -890,7 +890,9 @@ void SURF::operator()(const Mat& img, const Mat& mask, cvExtractSURF(&_img, pmask, &kp.seq, &d, storage, *(const CvSURFParams*)this, useProvidedKeypoints); - if( !useProvidedKeypoints ) + + // input keypoints can be filtered in cvExtractSURF() + if( !useProvidedKeypoints || (useProvidedKeypoints && keypoints.size() != kp.size()) ) { Seq::iterator it = kp.begin(); size_t i, n = kp.size();