【发布时间】:2019-10-23 03:09:49
【问题描述】:
我有大量图片。有些是JPEG,有些是PNG。对于 PNG,我正在制作一个将所有透明像素转换为纯白色的程序。但是,它不仅不起作用,而且一些背景会变成随机颜色,例如红色和绿色。我不知道我做错了什么,所以这是我的代码:
import os
from PIL import Image
files = os.listdir("/Users/Riley/PycharmProjects/myNN/logos")
for file in files:
print(file)
image = Image.open("/Users/Riley/PycharmProjects/myNN/logos/" + file)
pixels = image.load()
if image.mode == 'RGBA':
print("RGBA")
for x in range(image.size[0]):
for y in range(image.size[1]):
if pixels[x, y][3] < 1:
pixels[x, y] == (255, 255, 255, 1)
print(pixels[x, y])
image = image.convert('RGB')
print(pixels[x, y]) 用于故障排除。我没有收到任何错误,但它会打印出随机的 RGBA 值,尽管刚刚将其设置为 (255, 255, 255, 1)。
谢谢。
【问题讨论】:
-
有趣的问题。你能提供一个演示问题的示例图像吗?我尝试在我用 MS Paint 制作的 png 上运行你的代码,它似乎工作正常。
标签: python image-processing png python-imaging-library