I am working on a solution for detecting similar and somewhat different media Images.
I have come across many articles suggesting techniques for handling Images for instance - Image comparison - fast algorithm
file-hash based (md5,sha1,etc) - Tried, working well for exactly similar content.
perceptual hashing (phash) for rescaled images - Looking for a java implementation that is as accurate as the one provided by phash.org. One java solution provided @ http://pastebin.com/Pj9d8jt5 has been reported to have false positives, i haven't tried it though.
feature-based (SIFT) for modified images - Looking for some sample code for a kickstart.
If there are any other suggestions please do share.