1. Feature Detection Sub
-harris
Cv::cornerharris (image,strength,3,3,0.01);
-fast
CV::P tr<cv::fastfeaturedetector> fast = Cv::fastfeaturedetector::create ();
Or
Cv::fast (inputarray image, std::vector<keypoint> &keypoints, int threshold)
Or
Cv::fast (inputarray image, std::vector<keypoint> &keypoints, int threshold, bool nonmaxsuppression, int type)
-sift
CV::P tr<cv::xfeatures2d::sift> SIFT = Cv::xfeatures2d::sift::create ();
Or
<pre name= "code" class= "CPP" >CV::P tr<cv::xfeatures2d::siftfeaturedetector> sift = cv::xfeatures2d:: Siftfeaturedetector::create ();
-surf
CV::P tr<cv::xfeatures2d::surf> SURF = Cv::xfeatures2d::surf::create ();
Or
CV::P tr<cv::xfeatures2d::surffeaturedetector> surf = cv::xfeatures2d::surffeaturedetector::create ();
-orb
CV::P tr<cv::orb> ORB = Cv::orb::create ();
-mser
CV::P tr<cv::mser> mser = Cv::mser::create ();
-gftt
CV::P tr<cv::gfttdetector> GFTT = Cv::gfttdetector::create ();
or directly with goodfeaturestotrack function;
-agast
Cv::agast (inputarray image, std::vector<keypoint> &keypoints, int threshold)//or Cv::agast (Inputarray image, std::vector<keypoint> &keypoints, int threshold, bool nonmaxsuppression, int type)//or CV::P TR<CV:: agastfeaturedetector> agast = Cv::agastfeaturedetector::create ();
-brisk
CV::P tr<cv::brisk> brisk = Cv::brisk::create ();
-simpleblob
CV::P tr<cv::simpleblobdetector> blob = Cv::simpleblobdetector::create ();
-kaze
CV::P tr<cv::kaze> Kaze = Cv::kaze::create ();
-akaze
CV::P tr<cv::akaze> AKAZE = Cv::akaze::create ();
2. Description Sub-Extractor
-SIFT
<span style= "Font-weight:normal;" ><span style= "FONT-SIZE:12PX;" >CV::P tr<cv::xfeatures2d::sift> SIFT = Cv::xfeatures2d::sift::create ();//CV::P tr<cv::xfeatures2d:: Siftdescriptorextractor> sift = cv::xfeatures2d::siftdescriptorextractor::create ();</span></span>
-surf
<span style= "Font-weight:normal;" ><span style= "FONT-SIZE:12PX;" >CV::P tr<cv::xfeatures2d::surf> SURF = Cv::xfeatures2d::surf::create ();//CV::P tr<cv::xfeatures2d:: Surfdescriptorextractor> surf = cv::xfeatures2d::surfdescriptorextractor::create ();</span></span>
-brief
Brief is not used in OpenCV to extract descriptors, as it is used in the orb;
-brisk
<span style= "Font-weight:normal;" ><span style= "FONT-SIZE:12PX;" >CV::P tr<cv::brisk> brisk = cv::brisk::create ();</span></span>
-orb
<span style= "Font-size:12px;font-weight:normal;" >CV::P tr<cv::orb> ORB = cv::orb::create ();</span>
Orb is characterized by fast;
-kaze
<span style= "Font-size:12px;font-weight:normal;" >CV::P tr<cv::kaze> Kaze = cv::kaze::create ();</span>
Note: Kaze descriptors can only use Kaze or Akaze feature points;
-akaze
<span style= "Font-size:12px;font-weight:normal;" >CV::P tr<cv::akaze> AKAZE = cv::akaze::create ();</span>
Similarly, akaze descriptors can only use Kaze or Akaze feature points;
3. Description sub-matching device
- Bruteforce-bfmatcher
CV::P tr<cv::bfmatcher> bf = cv::bfmatcher::create ("Bruteforce");
where the match type can also be a " BRUTEFORCE-L1 "," Bruteforce-l2 "," bruteforce-hamming ";
- flannbased- Flannbasedmatcher
CV::P tr<cv::flannbasedmatcher> Flann = cv::flannbasedmatcher::create ("flannbased");
OPENCV feature Detector (Feature Detector), Description sub-extractor (descriptor Extractor) and description sub-match (descriptor Matcher)