For several month I worked with a toolbox that uses BRISK detector + ORB descriptor + BruteForce matcher in order to get matches from a "particular" pair of images. The difference between the traditional usage of such kind of algorithms is that my image pair are very similar between each other. In fact, they differ for a very little horizontal translation (and a little rotation, too). Like this one:
Now, the combination of BRISK+ORB often produces good results, but there are cases in which the computation returns some matches that are affected by a small error, in terms of distance from the real location of the correspondent point in the second image (lets say, for example, 5 pixels).
In some cases this error could be treated as irrelevant, in other cases it produces a very bad input for the subsequent step. I'm wondering if there is a combination of (fast and lightweight) detector, descriptor and matcher that fits better my needs.
A NOTE: originally, I implemented just BRISK detector + descriptor and a BruteForce matcher and results were better. The problem is that BRISK descriptor is a very memory-consuming algorithm, I cannot implement it on devices with low RAM. This is why I switched to ORB.