As it was mentioned previously in this chapter, OpenCV provides classes to perform various feature detection and descriptor extraction algorithms created by computer vision researchers from all across the world. Just like any other complex algorithm implemented in OpenCV, feature detectors and descriptor extractors are also created by subclassing the cv::Algorithm class. This subclass is called Feature2D, and it contains various functions that are common to all feature detection and descriptor extraction classes. Basically, any class that can be used to detect features and extracts descriptors should be a subclass of Featured2D. OpenCV uses the following two class types for this purpose:
- FeatureDetector
- DescriptorExtractor
It's important to note that both of these classes are, in fact, just a different name for Feature2D since they are created...