【问题标题】:Reading PNG with PIL in Python在 Python 中使用 PIL 读取 PNG
【发布时间】:2016-02-10 15:29:21
【问题描述】:

我正在用 Python 读取 PNG 文件。我想要图像中每个像素的 RGB 值:

  img = Image.open(path)
  pixels = img.load()

对于 JPEG 文件,像素是 tuple,但对于 PNG,我得到一个 integer。我应该如何使用 Python 读取 PNG 图像以获取像素值?

【问题讨论】:

  • 奇怪,当我在我的机器上打开 pngs 时,我得到了一个元组。您是否在多个 png 上尝试过此操作?
  • 检查您的 PNG 文件。如果它实际上是灰度或索引彩色图像 - 并且 不是 24 位颜色 - 你的问题是 stackoverflow.com/q/27093835/2564301 的重复

标签: python png jpeg python-imaging-library


【解决方案1】:

听起来图像是以灰度模式打开的。在访问像素值之前尝试转换为 RGB。

img = Image.open(path).convert("RGB")
pixels = img.load()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-05-02
    • 2011-04-05
    • 2020-07-11
    • 1970-01-01
    • 2023-03-10
    • 1970-01-01
    • 1970-01-01
    • 2011-09-15
    相关资源
    最近更新 更多