我有一个原始图像,其中每个像素对应一个16位无符号整数。我正在尝试使用PIL Image.fromstring()函数进行读取,如以下代码所示:
if __name__ == "__main__":
if (len(sys.argv) != 4):
print 'Error: missing input argument'
sys.exit()
file = open(sys.argv[1], 'rb')
rawData = file.read()
file.close()
imgSize = (int(sys.argv[2]), int(sys.argv[3]))
# Use the PIL raw decoder to read the data.
# - the 'F;16' informs the raw decoder that we are reading a little endian, unsigned integer 16 bit data.
img = Image.fromstring('L', imgSize, rawData, 'raw', 'F;16')
im.save('out.png')
PIL文档通知fromstring()函数的第一个参数为’mode’。但是,在查阅文档并进行谷歌搜索时,我无法找到有关该参数真正含义的详细信息(我相信它与色彩空间或类似的东西有关)。有谁知道我在哪里可以找到有关fromstring()函数以及mode参数意味着什么的更详细的参考?
具体文档位于http://effbot.org/imagingbook/concepts.htm:
模式
图像的模式定义图像中像素的类型和深度。当前版本支持以下标准模式:
- 1(1位像素,黑白,每字节存储一个像素)
- L(8位像素,黑白)
- P(8位像素,使用调色板映射到任何其他模式)
- RGB(3x8位像素,真彩色)
- RGBA(4x8位像素,带透明蒙版的真彩色)
- CMYK(4x8位像素,彩色分离)
- YCbCr(3x8位像素,彩色视频格式)
- I(32位带符号整数像素)
- F(32位浮点像素)
PIL还为某些特殊模式提供了有限的支持,包括LA(带有alpha的L),RGBX(带有填充的真彩色)和RGBa(带有预乘alpha的真彩色)。
问题内容: 如何使用PIL或任何其他Python库获取图片边的大小? 问题答案: 根据文档。
问题内容: 如何使用PIL检测PNG图像是否具有透明的Alpha通道? 通过上面的代码,我们知道PNG图像是否不具有Alpha通道,但是如何获得Alpha值? 我没有在PIL网站上描述的img.info词典中找到“透明”键 我正在使用Ubuntu和zlib1g,已经安装了zlibc软件包。 问题答案: 要获取RGBA图像的alpha层,您需要做的是: 要么 有一种设置Alpha层的方法: 透明度键
问题内容: 我刚刚使用Python图像库(PIL)进行了一些图像处理,这是我之前发现的用于执行图像的傅立叶变换的文章,但是我无法使用save函数。整个代码运行良好,但不会保存生成的图像: 我得到的错误如下: 如何使用Pythons PIL保存图像? 问题答案: 已解决有关文件扩展名的错误,您可以使用(不带点)或将输出名称与扩展名一起传递。现在要处理该错误,您需要在频域中适当地修改数据以将其保存为整
What follows is the original PIL 1.1.7 README file contents. The Python Imaging Library $Id$ Release 1.1.7 (November 15, 2009) ==================================================================== Th
本文向大家介绍使用js获取图片原始尺寸,包括了使用js获取图片原始尺寸的使用技巧和注意事项,需要的朋友参考一下 浏览器中显示的图片大小未必是他真实的高和宽,比如像下面这样,我们给他加上宽和高的样式 <img src="IE.png" style="width:25px;height:25px;"> 这样在浏览器中显示的大小就是25px。那么我们如何获取图片的真实大小呢?,下面的代码就实现了这个
问题内容: 我想创建一个Python程序,该程序需要多行用户输入。例如: 如何接收多行原始输入? 问题答案: 要将每一行作为字符串获取,你可以执行以下操作: Python 3: