I'm looking at some quite confused (at least for me) openCV code and questioning myself how it's working.
The question starts here.
The link shows the implementation of
BOWImgDescriptorExtractor::compute
which uses the function
DescriptorMatcher::match
at line 181.
The calculation time is quite fast and I'm asking myself how openCV archives that? How does function match links the nearest cluster to a given descriptor? In detail, how is std::vector< DMatch > matches getting filled so fast?