我正在尝试使用
获取两个不同图像文件(.jpg和.png)的像素信息from PIL import Image
#for jpg
im = Image.open('file1.jpg')
pixel_jpg = list(im.getdata())
#for png
im1 = Image.open('file1.png')
pixel_png = list(im.getdata())
和pixel_jpg和pixel_png的结果类似于
pixel_jpg = [(27, 45, 19), (26, 44, 20), (26, 44, 20), (26, 44, 20),...]
pixel_png = [(138, 68, 5, 255), (155, 81, 5, 255), (178, 94, 6, 255),...]
PNG图像中可用的额外像素信息是什么?为什么会这样?
答案 0 :(得分:2)
png
的第四列称为 alpha ,用于表示透明度。由于jpg
没有 alpha 属性(因为它不支持透明度),因此.getdata()
不会包含它们。
jpg
使用颜色方案RGB,png
称为RGBA。这就是他们返回不同结果的原因。
作为旁注,最后一栏255表示它完全不透明(0%不可见)。由于像RGB的其他属性一样,它总共有255个。