Search code examples
computer-visionmatchingfeature-selection3d-reconstruction

Loop Feature Matching


Hello I have to achieve feature stereo matching for egomotion estimation. From Paper "Multispectral Stereo Odometry " : "The feature in the right image that maximizes the similarity function for a given feature in the left image is selected as a potential match. A threshold is then applied to keep only strong matches. As stated above, the algorithm is fed with four images: previous left (imLt−1), previous right (imRt−1), current left (imLt), and current right (imRt). The matching is carried out in a loop fashion [14] to keep only features that find their correspondences across all four images. Fig. 4 illustrates the different steps. We first start by finding stereo matches between (imLt−1) and (imRt−1) (I). Then, sequential matches are found between (imRt−1) and (imRt) (II). Another stereo matching is performed between (imLt) and (imRt) (III). Finally, a last sequential matching is performed between (imLt−1) and (imLt) (IV). At this stage, if the starting and ending feature points are identical, then the match is accepted. Otherwise, it is simply rejected. This process is carried out for all the features extracted in the first image (imLt−1)."

My question is : what does it means for "identical" when it refers to the first and last feature? What does it means "a threshold is then applied"?

illustration of the loop matching steps


Solution

  • This is what I understood from the extract you posted:

    • Thresholding: I would say that the matching process is done first by comparing potential matches and computing their similarity, then by finding the match with the highest similarity. Once you've found it, you should compare that similarity against a pre-defined threshold value T. If the match similarity is below the threshold, then you discard the match. In order to detect the best threshold T, I'd try some values and see what happens.
    • Identical match: From what I understood, the authors perform the matching process in a loop: starting from a point P in imL(t-1), they perform a stereo matching process towards imR(t-1), then a sequential matching between imR(t-1) and imR(t), then a stereo matching between imR(t) and imL(t) and a final sequential match between imL(t) and imL(t-1), obtaining a new point Q. If P and Q are the same point (in terms of spatial coordinates probably), then the loop matching process is considered successful.

    EDIT: Could you add the title of the paper please?