How to match one image with best one from different images

2 views (last 30 days)
Hi everybody. I group of images of an object from different positions, and i take new image of this object and want to match it with the best possible image from a group (the same side and position). Thanks.

Answers (1)

Florian Morsch
Florian Morsch on 26 Apr 2018
Edited: Florian Morsch on 26 Apr 2018
Detect SURF features on all your previous compare-images, then detect the features on the newly taken image.
Now check the SURF feature points with each image and take the one which fits best.
  2 Comments
Baisseyev Miram
Baisseyev Miram on 27 Apr 2018
Thanks. I need to select best match manually? is there a way to make it automatically?
Florian Morsch
Florian Morsch on 27 Apr 2018
You can search for the two matched with the most shared SURF features.
One possible option: write all shared featurepoints in an array (like when you detect 10 in the first match, 13 in the second, 9 in the third and 22 in the last) your array would look like [10 13 9 22] and then just search for the highest value in the array and take the corresponding picture. You can do so with
[max, index] = max(yourArray(:))
this gives you the largest output from your array and the position in which is stored ( here is the complete link https://de.mathworks.com/help/matlab/ref/max.html ). In this case you would get max = 22, index = 4, so you would know your 4th picture is the best match.

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!