Sumeet
Sumeet

Reputation: 190

Detecting somewhat different Images - Is there any java implementation for perceptual hash and differential hash?

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

  1. file-hash based (md5,sha1,etc) - Tried, working well for exactly similar content.

  2. 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.

  3. feature-based (SIFT) for modified images - Looking for some sample code for a kickstart.

If there are any other suggestions please do share.

Upvotes: 4

Views: 5438

Answers (1)

Anton Ivinskyi
Anton Ivinskyi

Reputation: 392

Answer to a point 2 of the question. I did not check any of these pHash implementations yet, but probably there is an accurate one among them:

Java pHash https://github.com/krishnact/jphash

Another java pHash https://github.com/thomasheckmann/image-indexer

Java (Android) pHash https://github.com/gavinliu/SimilarPhoto

Groovy pHash https://github.com/mdbishop/ImagePHash

Scala pHash https://gist.github.com/Howon/7db1239355841a71ffa9

Another scala pHash https://github.com/warricksothr/ImageTools/blob/master/engine/src/main/scala/com/sothr/imagetools/engine/hash/PHash.scala

Upvotes: 5

Related Questions