【发布时间】:2014-06-20 15:55:04
【问题描述】:
所以我有另一个程序输出的字节文件。该字节文件包含来自相机输出的 640x480 分辨率的单帧数据。我想将该文件读入python并将其转换为图像。
我一直在使用 pil,但是当我尝试这样做时......
def readimage(path):
with open(path, "Ur") as f:
return f.read()
def main():
bytes = readimage("color725.txt")
image = Image.fromstring('RGB', (640,480), bytes)
image.save("test.bmp")
我得到的图像根本不是我开始使用的图像。 (看起来像废话)
当我尝试这样做时......
def readimage(path):
with open(path, "rb") as f:
return bytearray(f.read())
def main():
bytes = readimage("color725.txt")
image = Image.open(io.BytesIO(bytes))
image.save("test.bmp")
我收到错误“IO 错误:无法识别图像文件”。这不是文件存在与否的问题,因为它是引发错误的图像命令,而不是试图打开文件。
这两次尝试基本上总结了我从文档中看到的内容。我看到的其他任何东西都不完全适用。有没有我想念的简单的东西,或者以某种方式更好的方法?任何帮助找到问题的答案将不胜感激。
字节文件的前几行为十六进制:
1010 1100 1010 1100 1111 1000 1211 1000 1413 1000 1212 1100 1013 1100 0f11 1200 0f11 1200 0f10 1300 0f10 1200 0f10 1200 1013 1300 1011 1400 1014 1500 0f12 1600 0f15 1500 1115 1500 1315 1400 1211 1300 1110 1100 100e 0f00 0f0c 0e00 0f0d 0d00 0f0d 0c00 0e0c 0c00 0e0c 0b00 0d0c 0b00 0c0d 0d00 0e0f 0f00 1010 1100 0e0e 1300 0c0c 0f00 0d0b 0b00 0e0a 0900 0c0a 0800 0b0a 0900 0909 0b00 0808 0900 0707 0800
【问题讨论】:
-
图片是什么格式的?
-
@kindall 图像是一个文本文件,包含 RGB 信息作为字节。
-
只是为了确定文件格式,您输入文件的大小是多少?
-
@SergeBallesta 1.34mb 如果有帮助
-
您的文件太大,640x480x3 正好是 921600 字节。该文件一定有一些你还不理解的地方。
标签: python image byte python-imaging-library