gpt4 book ai didi

python - Pygame:将png图像中的所有白色像素转换为完全透明

转载 作者:太空宇宙 更新时间:2023-11-03 11:54:51 24 4
gpt4 key购买 nike

我一直在尝试创建一个图像处理程序来获取加载图像中的所有白色像素 (255,255,255) 并将它们的 alpha channel 设置为 0(非不透明),然后保存图像。

我一直在使用 Python 的 pygame 扩展来帮助我实现这一点,但到目前为止,我找不到一种简单的方法来完成我上面刚刚描述的事情。

请记住,我不是要显示图像,而是要操纵它。

最佳答案

我还建议使用 PIL 或 ImageMagick ,但这里有一种在 pygame 中执行此操作的方法:

import pygame

def convert():
pygame.init()
pygame.display.set_mode()
image = pygame.image.load("triangle.png").convert_alpha()
for x in range(image.get_width()):
for y in range(image.get_height()):
if image.get_at((x, y)) == (255, 255, 255, 255):
image.set_at((x, y), (255, 255, 255, 0))
pygame.image.save(image, "converted.png")

if __name__ == "__main__":
convert()

以上适用于白色背景。以下是 triangle.pngconverted.png 使用品红色而不是白色的外观,因此您可以看到区别:

magenta bg transparent bg

使用 ImageMagick 实用程序,就像在命令行上运行它一样简单:

convert original.png -transparent white converted.png

关于python - Pygame:将png图像中的所有白色像素转换为完全透明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14087450/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com