Insight is a perceptual hashing engine that enables fuzzy image comparison through the estimation of visual similarity. This system detects structural similarities and is invariant to scale and rotation, so it is particularly useful for certain tasks including:
Reverse image search
Pose estimation
Data forensics
Image reconstruction
Object recognition
Copyright detection
This is accomplished by generating digital fingerprints of two files in a manner that is invariant to minor changes. These fingerprints can then be compared in order to form an estimate of similarity.
For more information about Insight and perceptual hashing, check out this blog post.
Insight Source code (BSD License)