问题
I'm new in opencv. My question is:
I have 2 train image descriptor trainA and trainB. Then i construct a vector to put them in, and add them into flann matcher for train.
After that, i use query image descriptor queryC to do the knnMatch and get a DMatchs returned.
In this case, which train descriptor would be used to match queryC, trainA or trainB? and how does the training help to improve the match accuracy?
Thanks in advance.
回答1:
Both. It is not "training" in standard meaning. "Training" here means just "set of the descriptors, based on which kd-tree is build". More simple - when you do matching, you take one feature from set S1 and look for nearest neighbor in the set S2. FLANN (realization of the kd-tree) is just fast way how find (approximate) nearest neighbor.
来源:https://stackoverflow.com/questions/21402464/how-does-flann-matcher-train-work-in-opencv