开发者

surf/sift/ for template matching

i want to use sift/surf for template matching. Image can have 1...n targets. Using surf/sift only one target can be extracted. One idea can be segment image in many segments and then look for sift/surf matching. It work开发者_JS百科s but obviously it is not ideal because of speed and effort. Does there exist any alternative approach?. / Anyone has source code for scale and rotation invariant template matching. regards,


If i understand correctly what you are saying (provide more informations please), you have N planar image objects. You want to extract SIFT/SURF features from the N images and put all the features in some sort of container (an array or an acceleration data structure for high-dimensional nearest neighbors). When you process a given image, you extract SIFT (or SURF) features and search, for every feature, its closest feature in the container. You end up having a list of pairs (feature from current image, feature from container). Now you have to apply some robust model estimator (RANSAC for example) to construct the homography. If a good homography can be found (with at least 10, 12 inliers), you will be sure that your target is there. Obviously, given the array of features pairs, you subdivide it into groups, where each group is one of the N planar image objects of your database (this is a not the best way to do, probably you should associate to each feature extracted from the current image to k features of the database and using some form of voting-scheme to establish which are the pairs, but doing so things gets more complicated). So, generally speaking, you have to make some decisions:

  • feature to use (SIFT? SURF? others?)
  • robust model estimator (RANSAC? PROSAC? MLSAC?)
  • which geometric considerations to use when computing the homography (take advantage of the fact that the homography relates points in two planar objects)
  • which multi-dimensional data structure you will use to accelerate the search
  • how to compute the homography (well, probably there is only one way: normalized DLT)

If your obects are NOT planar, the problem is more difficult, since a 3D rigid objects probably changes as the viewpoint changes. To describe it, you will need K images instead of only one. This is a lot more challenging to do, because as N and K grows, recognition rates drops down. Probably, there are other better ways. I strongly suggest to check using google relevant literature.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜