Python PIL提供了getpixel()方法,这个方法可以用于获取图像中指定位置(指定像素坐标)的颜色值,其语法格式如下:
getpixel(xy)
参数xy是一个元组,表示像素坐标,元素分别为x轴和y轴的坐标值。
返回值是一个元组,共有RGB三个值,分别表示红、绿、蓝三个颜色通道的值,取值范围在0~255之间。
为了更好地理解和应用这个方法,下面将给出两个示例说明。
示例一
首先,我们先读取一张本地图片,然后获取图像中某一个像素点的颜色信息。代码如下:
from PIL import Image
# 打开图像文件
image = Image.open('test.jpg')
# 获取第50行第80列像素点的颜色
color = image.getpixel((80, 50))
print(color)
这里我们打开了一张名为”test.jpg”的图像文件,然后获取了第50行第80列像素点的颜色信息。结果是一个元组,表示这个像素点的颜色信息。
示例二
接下来,我们将对一张图片进行像素级别的遍历,获取每一个像素点的颜色值,并将其保存到一个列表中。代码如下:
from PIL import Image
# 打开图像文件
image = Image.open('test.jpg')
# 获取图片尺寸
width, height = image.size
# 遍历所有像素点
colors = []
for i in range(height):
for j in range(width):
# 获取当前像素点的颜色并保存到列表中
color = image.getpixel((j, i))
colors.append(color)
print(colors)
在这个示例中,我们首先获取了图像的尺寸,然后使用两个循环遍历了每一个像素点,并获取了每个像素点的颜色值,最后将其存储到一个列表中。
以上就是Python PIL getpixel()方法的完整攻略,包括两个示例说明。希望能对大家有所帮助。