1234567891011121314151617181920212223242526272829303132 |
- #pragma once
- #include <opencv2/opencv.hpp>
- #include <opencv2/xfeatures2d.hpp>
- #include <opencv2/xfeatures2d/nonfree.hpp>
- #include <opencv2/features2d/features2d.hpp>
- #include <iostream>
- using namespace std;
- using namespace cv;
- using namespace cv::xfeatures2d;
- Mat Conv2(const Mat &img, const Mat &ikernel);
- void GaussianSmooth(Mat src, Mat dst, float sigma);
- void ORBMatch(Mat img1, Mat img2, vector<KeyPoint>& keypoints1, vector<KeyPoint>& keypoints2,
- vector<DMatch>& bestMatches);
- void SURFMatch(Mat img1, Mat img2, vector<KeyPoint>& keypoints1, vector<KeyPoint>& keypoints2,
- vector<DMatch>& bestMatches);
- void SIFTMatch(Mat img1, Mat img2, vector<KeyPoint>& keypoints1, vector<KeyPoint>& keypoints2,
- vector<DMatch>& bestMatches);
- vector<DMatch> RatioTest(vector<vector<DMatch>> matches12, double ratio);
- vector<DMatch> SymmetricTest(vector<DMatch> goodMatches1, vector<DMatch> goodMatches2);
- vector<DMatch> FilterDistance(Mat descriptors, vector<DMatch> matches);
|