检查图像是否透明
Check if an image is transparent or not
我正在尝试使用 PIL 检查图像是否透明。
image = Image.open(file).convert('RGBA')
alpha = image.split()[-1]
这给出了这样的值
<PIL.Image.Image image mode=L size=714x303 at 0x25EB0EBC040>
如何将其转换为透明度值?或者这是通过将图像转换为 RGBA 来找到图像透明度的正确方法吗?
image.getextrema()
给出了每个通道的 min/max 范围,因此您可以使用它来检查 alpha 通道上的范围:
image = Image.open(file).convert('RGBA')
alpha_range = image.getextrema()[-1]
if alpha_range == (255,255):
print("image is not transparent")
编辑:进行了快速搜索。您还可以在图像模式上添加一些检查,也可以在此处查看答案python PIL - check if image is transparent
我正在尝试使用 PIL 检查图像是否透明。
image = Image.open(file).convert('RGBA')
alpha = image.split()[-1]
这给出了这样的值
<PIL.Image.Image image mode=L size=714x303 at 0x25EB0EBC040>
如何将其转换为透明度值?或者这是通过将图像转换为 RGBA 来找到图像透明度的正确方法吗?
image.getextrema()
给出了每个通道的 min/max 范围,因此您可以使用它来检查 alpha 通道上的范围:
image = Image.open(file).convert('RGBA')
alpha_range = image.getextrema()[-1]
if alpha_range == (255,255):
print("image is not transparent")
编辑:进行了快速搜索。您还可以在图像模式上添加一些检查,也可以在此处查看答案python PIL - check if image is transparent