Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

What's the best feature matcher for pairs of very similar images?

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:

image description

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.

What's the best feature matcher for pairs of very similar images?

For several month months 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:

image description

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.

click to hide/show revision 3
retagged

updated 2014-03-23 05:05:32 -0600

berak gravatar image

What's the best feature matcher for pairs of very similar images?

For several months 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:

image description

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.