我有一个透明的图片,我正在尝试使用Image
模块的getcolor()
方法从中提取主要颜色
y = Image.open('img.png')
y.getcolors()
[Out]: [(21841, 0),
(13328, 1),
(8171, 2),
(2673, 3),
(1337, 4),
(1010, 5),
(892, 6),
(519, 7),
(379, 8),
(234, 9)]
如何获得与这些索引相对应的实际颜色值(或名称)?
答案 0 :(得分:0)
我不确定以下代码段是否是您找到的。将Image
对象转换为RGBA对象并使用getcolors()
,如下所示。
from PIL import Image
im = Image.open('img.png')
rgba_im = im.convert('RGBA')
print ( rgba_im.getcolors() )
"""
<Output>
[(2673, (218, 215, 209, 255)), (379, (195, 29, 54, 255)), (21841, (208, 208, 209, 0)), (234, (206, 198, 185, 255)), (519, (201, 178, 176, 255)), (1337, (193, 188, 186, 0)), (8171, (182, 176, 174, 0)), (892, (178, 170, 165, 255)), (13328, (168, 26, 41, 255)), (1010, (107, 18, 19, 255))]
"""