I am trying to make a detector based on descriptors. I am using OpenCV and I have seen that there are many feature types and descriptor types, and also matcher types. More I have also seen that there can be composed types like Grid or Pyramid for feature types.
I have not found a good explanation of them (except for Pyramid, where it says that is good "for detectors that are not inherently scaled"). I want to have a small description of each type and each combination (feature-descriptor-matcher), to make an idea and not creating an exhaustive work searching and verifying each possible combination.
Does anyone know some more information about this?
The term feature is commonly used for two different things:
A detector aims at.. well... detecting good interesting points, i.e., points that are stable under viewpoint and illumination changes and that yield good performance in tasks like homography estimation or object detection.
A descriptor aims at reaching good matching performance for detected points under the said viewpoint and illumination changes.
Some points were designed individually, without any descriptor. This is the case for most of the oldest interest points (Moravec, Harris, good features) and a small portion of the recent ones (FAST).
Then, a major performance improvement was reached through the co-design of point detectors and descriptors, and this is the approach embraced by SIFT and SURF. For simplicity, the descriptor was not given a particular name (although you can remark that SIFT descriptors and HoG features are very close to each other). These descriptors are real valued (i.e., floating point vectors).
Finally, in order to have fast running times on limited hardware, an original keypoint detector (FAST) was designed. FAST relies on simple binary tests. The same approach of binary tests was then used to design descriptors, and this is how you got BRIEF, BRISK, FREAK, ORB... Thus, what you get is binary descriptors (bitstreams).
Finally, if you want to summarize:
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With