views:

169

answers:

2

Please consider following use case,

  1. I have one bigger image, lets called is master image.
  2. Now from some where else, I am getting one small image. I want to check whether this small image is subset of master image or not.

important points are, smaller image might have different file format, smaller image might captured from comparatively different view. smaller image may have different light intensity.

At this stage of algorithm/computation advancement, which level of accuracy I could expect?

Any algorithm/open source implementation that would have such implementation?

Thanks, Rajnikant

+4  A: 

Have you checked the OpenCV library? It's C, C++, Python and Octave. For Java try ImageJ stuff.
BTW: the different file format is not a problem, different light intensity is still quite ok, but "might be captured from a comparatively different view" sounds a bit problematic. How accurate this algorithm should be? Is it gonna be used to compare the eye's image before you point the laser into someone's head or just comparing photos from Christmas?

@trzewiczek, the image format can be a problem depending the level of accuracy he wants. If the original image has no compression but the small one has lossy compression, this can be a problem. But depends the level of detail.
Andres
@Andres, of course, but I understood that the problem is master is jpg and small is png, but they are both good enough quality. In other case - let say uncompressed tiff and 35% quality jpg - it can be a real problem! :)
+2  A: 

Assuming that the issues with the file format can be worked out, you should be able to use a cross correlation. Even though you've got this tagged for C and Java, you might find this MATLAB tutorial useful in providing some additional insight.

andand