Skip to content

woltapp/blurhash-python

Folders and files

NameName
Last commit message
Last commit date

Latest commit

370bcc8 · Jan 24, 2024
Aug 1, 2023
Apr 3, 2023
Sep 8, 2021
May 31, 2018
Jul 15, 2017
Oct 23, 2019
Apr 3, 2023
Jan 24, 2024
Jan 24, 2024
Aug 30, 2021
Jul 13, 2017
Jan 24, 2024
Jan 24, 2024

Repository files navigation

blurhash-python

This is an encoder for the BlurHash algorithm. To find out more about BlurHash, see https://github.com/woltapp/blurhash.

Installation

Install blurhash with pip

$ pip install blurhash-python

or pipenv

$ pipenv install blurhash-python

Usage

Create blurhash from image file

import blurhash

with open('image.jpg', 'rb') as image_file:
    hash = blurhash.encode(image_file, x_components=4, y_components=3)

Alternatively, scale the image to produce a faster hash, and create a blurhash from the in-memory image directly

import blurhash
from PIL import Image

with Image.open('image.jpg') as image:
  image.thumbnail(( 100, 100 ))
  hash = blurhash.encode(image, x_components=4, y_components=3)

You can also pass file name as parameter to the function

import blurhash

hash = blurhash.encode('image.jpg', x_components=4, y_components=3)

y_components and x_components parameters adjust the amount of vertical and horizontal AC components in hashed image. Both parameters must be >= 1 and <= 9.

Development

Install development requirements and package in editable mode

$ pipenv install --dev

Tests

Run test suite with pytest in virtual environment

$ pytest

Use tox to run test suite against all supported python versions

$ tox