diff --git a/src/camera/pfsalign.cpp b/src/camera/pfsalign.cpp index 12c7642..91c97ab 100644 --- a/src/camera/pfsalign.cpp +++ b/src/camera/pfsalign.cpp @@ -43,7 +43,8 @@ #include #include #include -#include +#include +#include #include #include #include @@ -61,6 +62,7 @@ class QuietException using namespace cv; using namespace std; +using namespace cv::xfeatures2d; void printHelp() { @@ -141,8 +143,12 @@ bool alignImagePair( const Mat &ref_img, const Mat &exp_img, Mat &homography, in // cv::imshow( "Result2", exp_img ); // cv::waitKey(0); - Ptr detector(new DynamicAdaptedFeatureDetector( new SurfAdjuster( (11-sensitivity) * 100.f, 2, 1000 ), - 100, 1000, sensitivity/2+2 )); + //Ptr detector(new DynamicAdaptedFeatureDetector( new SurfAdjuster( (11-sensitivity) * 100.f, 2, 1000 ), + // 100, 1000, sensitivity/2+2 )); + +// SiftDescriptorExtractor surfDesc; + Ptr surfDesc = SURF::create(); + // Ptr detector; // detector = new GoodFeaturesToTrackDetector(); // detector = new SurfFeatureDetector(); @@ -150,8 +156,8 @@ bool alignImagePair( const Mat &ref_img, const Mat &exp_img, Mat &homography, in std::vector keypoints1, keypoints2; toc.tic( "feature detection" ); - detector->detect( ref_img, keypoints1 ); - detector->detect( exp_img, keypoints2 ); + surfDesc->detect( ref_img, keypoints1 ); + surfDesc->detect( exp_img, keypoints2 ); toc.toc( ); if( keypoints1.size() < 10 || keypoints2.size() < 10 ) { @@ -171,13 +177,11 @@ bool alignImagePair( const Mat &ref_img, const Mat &exp_img, Mat &homography, in return false; } - // SiftDescriptorExtractor surfDesc; - SurfDescriptorExtractor surfDesc; Mat descr_ref, descr_exp; toc.tic( "descriptor extraction" ); - surfDesc.compute( ref_img, keypoints1, descr_ref ); - surfDesc.compute( exp_img, keypoints2, descr_exp ); + surfDesc->compute( ref_img, keypoints1, descr_ref ); + surfDesc->compute( exp_img, keypoints2, descr_exp ); toc.toc( ); FlannBasedMatcher matcher;