Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I was wondering how does tineye carry a search. Does it store all the images and then extracts exif data? Which in turn must be stored in a database and queried against. So probably it is using some sort of keyword/pattern matching algorithm...

share|improve this question
2  
tineye.com/faq#how - Tineye analyzes the actual image contents and builds a kind of hash/checksum of the images (like obtaining a fingerprint). Such algorithms are in the class of Content Based Image Retrieval. How tineye's algorithm exactly works, however, is proprietary information. –  birryree Mar 29 '12 at 23:52
    
Sorry Marin but questions need to be answerable without anyone getting sued (the answerer in this case) –  World Engineer Mar 30 '12 at 0:20
    
Tineye is one of the few software products that falls under the "not obvious" category, and for which I wouldn't begrudge them holding one or more patents on (and I'm generally very much against software patents). I don't think you'll get much in the way of a precise technical answer here. –  Scott Whitlock Mar 30 '12 at 0:30
    
Thank you all for your time and effort. I really do like their service and was honestly interested in knowing the basics/gist of their algorithm. –  Marin Mar 30 '12 at 4:07
    
You should check out phash, "Perceptual Hash". It does something similar. –  Philip Feb 25 '13 at 22:51
show 1 more comment

1 Answer

up vote 5 down vote accepted

The TinEye FAQ reads:

When you submit an image to be searched, TinEye creates a unique and compact digital signature or 'fingerprint' for it, then compares this fingerprint to every other image in our index to retrieve matches. TinEye can even find a partial fingerprint match. Those fingerprints use only the image itself, and not its name or surrounding text. Our fingerprinting technologies were developed by Idée Inc.

TinEye does not typically find similar images (i.e., a different image with the same subject matter); it finds exact matches including those that have been cropped, edited or resized.

Chasing this then to Idee and a google patent search for "idee image search" brings up a number of patents (mostly named "Methods and Systems for Content Processing").

While my digital signal processing background isn't there, these patents do appear to be similar to what TinEye implements... or if not specifically licensed by TinEye, do similar things with other algorithms that accomplish the same end (many of the results appear to be referencing things that TinEye does). The patents are much larger than those I have glanced at before - some reaching over 100 pages.

Unfortunately, neither of the founders of Idée, Inc. come up in the patent search - which is often a valid approach to finding the patents they started with.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.