Skip to main content

Apply color palettes on images.

Project description

palettify - Apply color palettes to images within seconds

Requirements

You will need either pillow or pillow-simd. The latter might give a performance boost, however it does not support as many architectures.

Installation

The installation itself is quite easy, simply run:

pip install palettify
Didn't work?
  • pip is not in PATH

    python -m pip install palettify
    
  • Check if the path of your python executable matches the path of the interpreter you run your code with
    In UNIX-like systems:

    which python
    

Usage

You can use either the command-line or the python API to palettify an image.

Through the command-line: Invoke palettify using palettify or python -m palettify.

paths [paths ...] (required)

You can input multiple images, each one pointing to an existing file. A list of supported image formats can be found here.

-p/--palette (required)

The color palette to use. If an integer n, palettify will try to find the n most dominant colors in the original image and build the palette using those colors. Otherwise, a path to a JSON file should be specified, containing a list of RGB channels.

[
    [255, 255, 255],
    [0, 0, 0],
    [0, 255, 0],
    [255, 255, 0]
]

-o/--output (optional)

If more than one input path is given, the output path has to be an existing directory. If only one input path is given, the output path can be either a directory or the path to a file. If no output path is given, palettify will create path duplicates of the input paths and add a -palettified suffix.

-a/--autoscale (optional)

If autoscale is enabled, palettify tries to find the desktop resolution and resizes the image accordingly, while keeping the original ratio. A display server is required Defaults to False.

-w/--width (optional)

The width of the palettified image. If -h/--height is not given, palettify will calculate the height to keep the original ratio.

-H/--height (optional)

The height of the palettified image. If -w/--width is not given, palettify will calculate the width to keep the original ratio. If neither width or height are given, palettify will use the resolution of the original image.

-t/--threads (optional)

The number of threads to start for a single image. Defaults to 10.

-v/--verbose (optional)

Whether to explain what is being done. Defaults to False.

Invoking palettify through python

from palettify import palettify_image

palettify_image(...)

You can pass in the same arguments as in the command-line. However, optional arguments are keyword-only.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

palettify-0.0.6.tar.gz (39.2 kB view hashes)

Uploaded Source

Built Distribution

palettify-0.0.6-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl (113.9 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.5+ x86-64

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page