bearbeiten: Ich habe das falsche OpenCV2-Code Beispiel gesucht, es gibt keine FeatureDetector::create
in OpenCV3 - das hat mich verwirrt.OpenCV 3: Liste der verfügbaren FeatureDetector :: create() und DescriptorExtractor :: create() Optionen?
Hey neu zu OpenCV und mit gutem Beispiel das Lernen von anderen Völkern C++ Code auseinanderziehen.
würde Ich mag alle verfügbaren Optionen versuchen:
detector = FeatureDetector::create(str_detector);
descriptor = DescriptorExtractor::create(str_descriptor);
derzeit str_detector ist FAST
und str_descriptor ist BRISK
ich Mühe, mich zu finden, was verfügbaren Detektoren und Beschreiber mir zur Verfügung stehen.
Gibt es eine Möglichkeit, eine Liste aller derzeit verfügbaren Optionen auszugeben?
(ich habe gebaut gerade die neueste opencv + opencv-contrib von Github auf einem frischen Linux installieren)
ich eine Liste von 3rd-Party-Dateien hier https://github.com/Itseez/opencv_contrib/tree/master/modules/xfeatures2d/src gefunden haben - ich denke, diese dritte Descriptors und Detektoren sind, weil diejenigen, In einigen Dateien werden Wörter erwähnt. Es wäre jedoch nett, eine vollständige Liste der aktuell kompilierten/verfügbaren Optionen zum Spielen zu haben.
Danke!
versuchen, die Antwort selbst zu finden, Bearbeitungen, wie ich gehen:
- Gefunden
typedef Feature2D FeatureDetector
undtypedef Feature2D DescriptorExtractor
inmodules/features2d/include/opencv2/features2d.hpp
- jetzt
Feature2D
Graben ... - ich so verwirrt bin, meine C++ mir versagt, gibt es keine
create
in https://github.com/Itseez/opencv/blob/master/modules/features2d/src/feature2d.cpp - ok so nur durch den Code suchen (https://github.com/Itseez/opencv/blob/master/modules/features2d/include/opencv2/features2d.hpp)
- BRISK
- ORB
- MSER
- FastFeatureDetector/FAST
- AgastFeatureDetector/AGAST
- G FTTDetector
- SimpleBlobDetector
- KAZE/AKAZE
- und vom Contrib Code (https://github.com/Itseez/opencv_contrib/blob/master/modules/xfeatures2d/include/opencv2/xfeatures2d.hpp)
- UNGEWÖHNLICHER
- StarDetector
- BriefDescriptorExtractor
- LUCID
- LATCH
- DAISY
- MSDDetector
- und von unfreie contrib Code (https://github.com/Itseez/opencv_contrib/blob/master/modules/xfeatures2d/include/opencv2/xfeatures2d/nonfree.hpp)
- SIFT
- SURF
- Noch unsicher, welche der oben kann/soll verwendet werden für FeatureDetector oder DescriptorExtractor
Vielen Dank für das Teilen dieses Wissen! :) Ich habe gerade festgestellt, dass es eine '#if CV_MAJOR_VERSION> 2' in diesem Code gibt, und es verwendet den neueren' detector = cv :: FastFeatureDetector :: create(); 'anstelle des alten' detector = FeatureDetector: : create (str_detector); '. Das macht viel mehr Sinn und stimmt mit der Dokumentation/dem Quellcode überein. Prost – dtbaker