0

I am looking for an algorithm for template matching which I can implemented in matlab or python. I have already used normalized cross correlation and sum of sqaure differences. But These are not robust for my work. Does anyone have any suggestion for me?

Any help would be appreciated.

Thank you in advanvce

user3397178
  • 63
  • 2
  • 9

1 Answers1

0

Have you tried SIFT, SURF or any other feature detection algorithm?
I have a good experience with both of them in similar context and I know they have available matlab implementations. I have a good experience with VLFEAT.

ThP
  • 2,312
  • 4
  • 19
  • 25
  • one could also use [OpenCV](http://opencv.org/) which has implementations for those local features as well as many more.. OpenCV has Python and MATLAB bindings. Here is [an example](http://stackoverflow.com/a/20481266/97160) translated from [C++](http://docs.opencv.org/doc/tutorials/features2d/feature_homography/feature_homography.html) to MATLAB using the [mexopencv](https://github.com/kyamagu/mexopencv) MATLAB library. – Amro Jun 06 '14 at 09:07
  • @ThP: May you tell me that what do you mean with feature detection algorithm? It means, I have to exctract some features from my template and some features from my whole image and then compare? The thing which I can not understand is that how can I extract features from my Images with different sizes? Do I have to grid the whole image to small blocks? – user3397178 Jun 10 '14 at 16:43
  • @user3397178: I suggest you follow the links I provided (or look elsewhere) and read about feature detection. Generally, the size of the image is not an issue. Furthermore, the algorithms I mentioned should be robust against scaling, shifting or other transformations. I think the best way to understand this is to download an implementation of such algorithms that comes with good examples and test it for yourself. – ThP Jun 10 '14 at 20:23