Skip to content

dmpetrov/imagehash

 
 

Repository files navigation

ImageHash

A image hashing library written in Python. ImageHash supports:

  • average hashing (aHash)
  • perception hashing (pHash)
  • difference hashing (dHash)
  • wavelet hashing (wHash)

Travis Coveralls

Requirements

Based on PIL/Pillow Image, numpy and scipy.fftpack (for pHash) Easy installation through pypi.

Basic usage

>>> from PIL import Image
>>> import imagehash
>>> hash = imagehash.average_hash(Image.open('test.png'))
>>> print(hash)
d879f8f89b1bbf
>>> otherhash = imagehash.average_hash(Image.open('other.bmp'))
>>> print(otherhash)
ffff3720200ffff
>>> print(hash == otherhash)
False
>>> print(hash - otherhash)
36

The demo script find_similar_images illustrates how to find similar images in a directory.

Source hosted at github: https://github.com/JohannesBuchner/imagehash

Changelog

  • 3.0: dhash had a bug: It computed pixel differences vertically, not horizontally.
    I modified it to follow dHash. The old function is available as dhash_vertical.
  • 2.0: added whash
  • 1.0: initial ahash, dhash, phash implementations.

About

A Python Perceptual Image Hashing Module

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 66.3%
  • HTML 33.7%