【问题标题】:python - not creating imagepython - 不创建图像
【发布时间】:2011-10-07 21:52:11
【问题描述】:

我正在尝试导入图像,然后处理其 rgb 颜色。 这就是我所拥有的:

from PIL import Image
image = Image.open('grapes.jpg')
pixels = list(image.getdata())

for pixel in pixels:
    pixel = (pixel[0] - 50, pixel[1] , pixel[2])

image.putdata(pixel)
image.save('grapes_modified.jpg')

如您所见,我正在尝试减少红色通道。这行不通。它会生成与导入图像完全相同的副本。 即使我在哪里做这样的事情:pixel = (0,0,0)。它会产生重复的图像。

那么如何修改图片呢?

谢谢,

【问题讨论】:

    标签: python python-imaging-library


    【解决方案1】:

    for 循环不会替换每个像素的内容,它只是创建一个新实例,然后将其丢弃。您应该创建一个新数组,例如:

    newdata = [ (pixel[0] - 50, pixel[1] , pixel[2]) for pixel in pixels ]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-10-30
      • 1970-01-01
      • 2015-02-15
      • 2021-09-25
      • 1970-01-01
      • 2014-04-02
      • 2021-02-21
      • 1970-01-01
      相关资源
      最近更新 更多