python 提取图片的某个颜色_colorgram.py-从图像中提取颜色的Python模块。获取任何图片的调色板!-Samuel Messner Results Installation How ...

colorgram.py是一个Python库,用于从图像中提取颜色,其结果比其他库更鲜明。它是colorgram.js的移植版,提供与原版库相同准确性的颜色提取。使用colorgram.py,可以从图像中快速提取颜色,并通过RGB和HSL值进行访问和排序。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

作者:Samuel Messner

作者邮箱:powpowd@gmail.com

首页:https://github.com/obskyr/colorgram.py

文档:None

下载链接 https://github.com/obskyr/colorgram.py/tarball/v1.2.0

colorgram.py

colorgram.py is a Python library that lets you extract colors from images. Compared to other libraries, the colorgram algorithm's results are more intense.

colorgram.py is a port of colorgram.js , a JavaScript library written by GitHub user @darosh . The goal is to have 100% accuracy to the results of the original library (a goal that is met). I decided to port it since I much prefer the results the colorgram algorithm gets over those of alternative libraries - have a look in the next section.

Results

.. image:: http://i.imgur.com/BeReaRM.png :alt: Results of colorgram.py on a 512x512 image

Time-wise, an extraction of a 512x512 image takes about 0.66s (another popular color extraction library, Color Thief __, takes about 1.05s).

Installation

You can install colorgram.py with pip __, as following:

::

pip install colorgram.py

How to use

Using colorgram.py is simple. Mainly there's only one function you'll need to use - colorgram.extract.

Example '''''''

.. code:: python

import colorgram

# Extract 6 colors from an image.

colors = colorgram.extract('sweet_pic.jpg', 6)

# colorgram.extract returns Color objects, which let you access

# RGB, HSL, and what proportion of the image was that color.

first_color = colors[0]

rgb = first_color.rgb # e.g. (255, 151, 210)

hsl = first_color.hsl # e.g. (230, 255, 203)

proportion = first_color.proportion # e.g. 0.34

# RGB and HSL are named tuples, so values can be accessed as properties.

# These all work just as well:

red = rgb[0]

red = rgb.r

saturation = hsl[1]

saturation = hsl.s

colorgram.extract(image, number_of_colors) '''''''''''''''''''''''''''''''''''''''''''''' Extract colors from an image. image may be either a path to a file, a file-like object, or a Pillow Image object. The function will return a list of number_of_colors Color objects.

colorgram.Color ''''''''''''''''''' A color extracted from an image. Its properties are:

Color.rgb - The color represented as a namedtuple of RGB from 0 to 255, e.g. (r=255, g=151, b=210).

Color.hsl - The color represented as a namedtuple of HSL from 0 to 255, e.g. (h=230, s=255, l=203).

Color.proportion - The proportion of the image that is in the extracted color from 0 to 1, e.g. 0.34.

Sorting by HSL '''''''''''''' Something the original library lets you do is sort the colors you get by HSL. In actuality, though, the colors are only sorted by hue (as of colorgram.js 0.1.5), while saturation and lightness are ignored. To get the corresponding result in colorgram.py, simply do:

.. code:: python

colors.sort(key=lambda c: c.hsl.h)

# or...

sorted(colors, key=lambda c: c.hsl.h)

Contact

If you find a bug in the colorgram.py, or if there's a feature you would like to be added, please open an issue __ on GitHub.

If you have a question about the library, or if you'd just like to talk about, well, anything, that's no problem at all. You can reach me in any of these ways:

Tweet @obskyr __

E-mail me __

To get a quick answer, Twitter is your best bet.

Enjoy!

Copy from pypi.org

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值