0

对于一个编程项目,我需要使用 pyglet 从加载的图像中读取像素。我使用“pyglet.image.load('map.png')”来加载图像,我发现你可以使用img.get_image_data()来检索图像数据。我用线mapImage.get_region(x,y,1,1).get_image_data().get_data("RGBA", 4)

从位于 (x,y) 的像素读取数据。这就是我卡住的地方。当我打印上一行的结果时,我得到一个空白区域。谁能澄清我如何从 get_data() 函数返回的字符串中提取 RGB 值?

谢谢!

4

1 回答 1

1

您的 mapImage... 返回一个包含 4 个字符的字符串,代表 rgba。

尝试这个:

pix = mapImage.get_region(x,y,1,1).get_image_data().get_data("RGBA", 4)

print 'r = ' + str(ord(pix[0]))
print 'g = ' + str(ord(pix[1]))
print 'b = ' + str(ord(pix[2]))
print 'a = ' + str(ord(pix[3]))
于 2010-11-17T01:31:31.093 回答