How can I compare images of the same origin that were cropped?

Suppose I have an image file / URL and I want my software to search for it within up to 100 images (or at least in that order). The target image that the software should find should be the “same” image as the given image, but it should still “forgive” a little processing on either of them (two images may be cropped differently or they were compressed differently ) The question is whether this is a feasible task, given that I will not have any images before starting the search (i.e. Indexing until the search will be.) Perhaps this works in subseconds (remember that the comparison set is quite small). And if possibleWhat tools can I use for this task? It can be software components or even an online service (I can live with this to prove the concept). CanDoes OpenSURF help me here? To focus more on my question - I am not asking which algorithms to use, at this point I would prefer to use an existing tool / API / service.

+3
source share
3 answers

The target image that the software should find should be the “same” image as the given image, but it should still “forgive” the little processing on any of them.

If the “small processing” does not include rotation, but only “cropping,” then simple cross-correlation should work, if perspective correction, rotation, and lens distortion correction are possible, then everything is more complicated.

, . , , .

- , , /API/.

cvMatchTemplate OpenCV ( C API, ++ Python). .

, , , CV_TM_CCOEFF CV_TM_CCOEFF_NORMED. . (CV_TM_*_NORMED) , , .

-. , - /. , @misha, /, .

+3

jetxee . , , , . , , (, ), , , . .

, , , :

  • , .
  • .
  • , .

, . (, ), .

+1

, , , , , , ...

, , F ourier-Mellin - ( - ) , , , .

+1

Source: https://habr.com/ru/post/1789199/


All Articles