OpenCV filtering ORB matches

后端 未结 3 1555
醉梦人生
醉梦人生 2020-12-09 00:10

I am using the ORB feature detector to find matches between two images using this code:

    FeatureDetector detector = FeatureDetector.create(FeatureDetector         


        
3条回答
  •  暗喜
    暗喜 (楼主)
    2020-12-09 00:24

    To get better matching results you should include these filtering methods in the given order.

    1. Perform matching in two directions i.e for each point in first image find the best match in second image and vice versa .

    2. Perform ratio test(ratio test of euclidean distances) between matches to eliminate ambiguous matches .

    3. Perform RANSAC test: it's a model fitting algorithm which finds the best data which fits the model and removes outliers.
    4. Perform homography: it is an image projection algorithm.

    You can get all the details of above methods in chapter 9 of Computer vision application programming cookbook. It also has sample code for implementing these filtering techniques. It is very easy to understand. (Note: The code in this book is in C++ but once you understand, it can be easily implemented in JAVA too)

提交回复
热议问题