phash について

phash で画像ファイルを 64bit で表現する。ハミング距離から、画像の類似性を判定できる。

from imagehash import phash
from PIL import Image as pil_image

img = pil_image.open(path)
h = phash(img)

h
"""
array([[ True, False,  True,  True,  True,  True,  True,  True],
       [False, False, False,  True,  True,  True,  True, False],
       [ True, False, False, False, False,  True, False,  True],
       [ True, False,  True, False, False, False, False,  True],
       [False,  True,  True, False, False, False, False, False],
       [False,  True,  True,  True,  True, False, False, False],
       [False,  True, False,  True,  True, False, False, False],
       [ True, False, False,  True,  True,  True,  True,  True]])
"""

type(phash(img))
"""
imagehash.ImageHash
"""

str(h)
"""
'bf1e85a16078589f'
"""

www.kaggle.com