madmax
madmax

Reputation: 1813

How to search the image for an object with SIFT and OpenCV?

i am working on a simple playing card detecting programme. For now i have a working Sift Algorithmus from here. And i have created some bounding boxes around the cards. Then i used Sift on the card to be searched for and saved the descriptors.

But what to do next? Do i have to make a mask of the object and run with it through the bounding box while running Sift in every step? Couldn't find any tutorial on how to do that exactly.

Hope someone can help me!

Greets Max

edit: I want to recognize every card, so i can say like: it's a heart 7 or so.

Upvotes: 0

Views: 2729

Answers (3)

nimcap
nimcap

Reputation: 10493

SIFT is just the beginning.

SIFT is a routine to obtain interest points on object. You have to use Bag of Words approach. Cluster the SIFT features you collected and represent each feature in terms of your cluster means. Represent each card as histogram of these cluster means (aka. bag of words).

Upvotes: 2

Martin Beckett
Martin Beckett

Reputation: 96109

Is SIFT the best approach for something like this ?
As opposed to Haar classifiers or just simple template matching.

eg http://digital.liby.waikato.ac.nz/conferences/ivcnz07/papers/ivcnz07-paper51.pdf

Upvotes: 1

carlosdc
carlosdc

Reputation: 12142

Once you have the representation of the cards ready (what @nimcap says), you then you need to do the recognition itself. You can try nearest neighbors, SVM, etc.

Also, for a better description (more technical) of what to do you might want to look at Lowe's original 2004 SIFT paper.

Upvotes: 1

Related Questions