如何使用PIL减少调色板

14 python image colors palette python-imaging-library

我不确定如何减少PIL图像的调色板.我想将图像的调色板缩小为该图像中的5种突出颜色.我的总体目标是做一些基本的颜色采样.

Nad*_*mli 27

这很简单,只需使用未记录的颜色参数:

result = image.convert('P', palette=Image.ADAPTIVE, colors=5)
Run Code Online (Sandbox Code Playgroud)

我正在使用Image.ADAPTIVE来避免抖动

  • @unutbu,`im.quantize`已被弃用. (2认同)

Pau*_*aul 5

我假设你想做一些比posterize更复杂的事情。正如您所说的“采样”需要一些技巧,因为图像中最常见的 5 种颜色可能彼此相似。也许看看直方图中5 个最分离的峰值。