【问题标题】:Create a color palette image from a list of RGB color从 RGB 颜色列表创建调色板图像
【发布时间】:2018-08-07 14:14:33
【问题描述】:

我使用color thief 从图像中提取调色板。

如何创建一个 rgb 值的图像作为 Palette?

from colorthief import ColorThief
color_thief = ColorThief('C:\Users\username\Desktop\index.jpg')
# get the dominant color
dominant_color = color_thief.get_color(quality=1)
print dominant_color
# build a color palette
palette = color_thief.get_palette(color_count=2)
print palette

输出:

(82, 129, 169)
[(82, 129, 169), (218, 223, 224), (147, 172, 193), (168, 197, 215), (117, 170, 212)]

预期的输出类似于http://www.color-hex.com/color-palette/895,即一系列彩色矩形

【问题讨论】:

  • 您的预期输出是什么?它已经丢失了
  • 只是一个包含调色板的图像

标签: python image numpy


【解决方案1】:

使用来自 Matplotlib 的imshow 的解决方案:

import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline

palette = [(82, 129, 169), (218, 223, 224), (147, 172, 193), (168, 197, 215), (117, 170, 212)]

palette = np.array(palette)[np.newaxis, :, :]

plt.imshow(palette)
plt.axis('off')
plt.show()

给予:

【讨论】:

  • 实际上,如果您只需要 3-5 个彩色方块的图像,也许有比 matplotlib 更好的工具...
  • 代码只显示黑色。请告诉我更好的工具。无需除以 255。它无需除以 255 即可解决我的问题。
  • 好的,如果不除以 255,它对我不起作用......也许不是同一版本的 matplotlib
  • 要将输出保存到文件中,请在 imshowshow 之间使用 plt.savefig('palette.png')
猜你喜欢
  • 2020-04-27
  • 2016-08-19
  • 2018-01-13
  • 1970-01-01
  • 2012-11-03
  • 1970-01-01
  • 1970-01-01
  • 2014-09-17
  • 2011-05-23
相关资源
最近更新 更多