从 App Engine 图像获取调色板(Blobstore,Python)

Get color palette from App Engine image (Blobstore, Python)

是否可以从 App Engine 图像(存储为 blob)中获取一组主色?

有了 PIL,我可以做到:

import Image
im = Image.open('image.jpg')
out = im.convert('P', palette=Image.ADAPTIVE, colors=5)

在 App Engine 中,我像这样获取图像:

image = images.Image(blob_key=blob_key)

是否可以从这里获得调色板?

GAE images.Image class 似乎没有提供 similar/pallette-based 功能。

但是 PIL 是 GAE 之一 Built-in Third-party Libraries,您可以使用它来代替。您需要:

  • 在您的 app.yaml:

    中请求图书馆
    libraries:
    - name: PIL
      version: "1.1.7"
    
  • 明确使用 PIL 中的 Image class(如果您也是 importing/using Image class 来自 GAE 的 images,以避免命名冲突):

    from PIL import Image
    im = Image.open('image.jpg')
    out = im.convert('P', palette=Image.ADAPTIVE, colors=5)