Skip to content
Projects

fengsp/color-thief-py

View on GitHub

fengsp/color-thief-py has 1,109 GitHub stars and 122 forks. GitHot measured 0 stars in 24 hours. Last checked 2026-11-09 09:43 UTC. Last push 2022-10-31.

How these counts are measured

Grabs the dominant color or a representative color palette from an image. Uses Python and Pillow.

Measured star growth

in 24h
0
in 7 days
Update delayed
in 15 days
Update delayed
in 1 month
Update delayed

Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.

README.md

Original

Color Thief

A Python module for grabbing the color palette from an image.

Installation

::

$ pip install colorthief

Usage

.. code:: python

from colorthief import ColorThief

color_thief = ColorThief('/path/to/imagefile')
# get the dominant color
dominant_color = color_thief.get_color(quality=1)
# build a color palette
palette = color_thief.get_palette(color_count=6)

API

.. code:: python

class ColorThief(object):
    def __init__(self, file):
        """Create one color thief for one image.

        :param file: A filename (string) or a file object. The file object
                     must implement `read()`, `seek()`, and `tell()` methods,
                     and be opened in binary mode.
        """
        pass

    def get_color(self, quality=10):
        """Get the dominant color.

        :param quality: quality settings, 1 is the highest quality, the bigger
                        the number, the faster a color will be returned but
                        the greater the likelihood that it will not be the
                        visually most dominant color
        :return tuple: (r, g, b)
        """
        pass

    def get_palette(self, color_count=10, quality=10):
        """Build a color palette.  We are using the median cut algorithm to
        cluster similar colors.

        :param color_count: the size of the palette, max number of colors
        :param quality: quality settings, 1 is the highest quality, the bigger
                        the number, the faster the palette generation, but the
                        greater the likelihood that colors will be missed.
        :return list: a list of tuple in the form (r, g, b)
        """
        pass

Thanks

Thanks to Lokesh Dhakar for his original work <https://github.com/lokesh/color-thief/>_.

Better

If you feel anything wrong, feedbacks or pull requests are welcome.

Explore related projects