0
votes

I'm trying to get as much keypoints from some small size image (e.g. 176*146 px) as possible. But I must say, I'm failing.

My idea is to calculate the descriptor of each keypoint and store it into a db/bag of word, so a simillar picture can be identified as already existent inside the db in a way of just counting similar descriptors.

My problem is in small resolution pictures. I've tried nearly all feature extractors/descriptors available in openCV. Sift,Surf,ORB,Dense,AKAZE and so on. Every method is failing with small sized images.

What can I do to get more robust keypoints?

1

1 Answers

1
votes

You should decide, whether you want to detect more keypoints, or more robust keypoints. Usually it is favorable to have less keypoints, that are more stable under different transformations. Also, please define what do you mean by failing. Too few keypoints? That's easy to fix. Incorrect matching? Not so easy.

Have you tried FAST detector? From my experience it usually detects more keypoints than I want, and I have to discard most of them to get meaningful results.You can also try to detect keypoints in a regular grid with small cell size - this way you'll get a uniform coverage, and if the descriptors are good - you'll eventually get some matches. Although you'd probably want to calculate descriptors not exactly in the grid intersection, but in the most corner-like location nearby.