解析数据并呈现PNG图像
Parse data and present PNG image
我有一个文件 (rawbytes.data)。它包含 YUV NV12 格式的原始字节。它包含一帧灰度图像 (640x480)。我将如何解析此数据文件并显示 png?
.data 文件在 Sublime Text 中如下所示:
0000 0000 0000 0000 6c05 0000 8002 0000
e001 0000 0707 0807 0808 0a0b 0e0f 1112
1515 1512 120f 0f0d 0c0e 0e10 1011 1110
0f0d 0e0b 0b0c 0e0e 0f0d 0c0e 0c0c 0b0a
0908 0a0a 0a0a 0908 0a08 0808 0708 0809
0809 0b09 0b09 0b0f 1214 1416 1413 1112
0f09 0809 0c0e 1010 1111 1110 0e0e 0d0c
0a08 0807 0708 0708 0707 0708 0606 0707
0707 0807 0708 0708 0807 0707 0708 0807
0808 0707 0707 0807 0808 0706 0707 0807
0807 0807 0707 0807 0707 0808 0808 0708
0706 0707 0807 0708 0808 0808 0808 0708
0808 0807 0808 0708 0807 0809 0707 0908
0808 0808 0908 0708 0707 0807 0808 0708
0707 0808 0708 0809 0808 0708 0708 0707
0808 0808 0707 0707 0708 0807 0809 0708
0808 0809 0908 0807 0809 0908 0808 0808
0808 0808 0809 0808 0809 0808 0808 0808
0908 0808 0908 0908 0909 0809 0908 0808
0708 0809 0909 0909 0809 0908 0908 0809
0909 0809 0909 0808 0808 0809 0808 0909
0808 0709 0808 0808 0809 0809 0809 0808
我尝试使用 python 以 'rb' 模式打开文件并以 'wb' 将其写入 png 文件但不起作用。
with open('rawbytes.data', 'rb') as f:
data = f.read()
with open('picture_out.png', 'wb') as f:
f.write(data)
尝试使用以下方法将原始数据转换为 png:
rawData = open("foo.raw" 'rb').read()
imgSize = (h,w)
img = Image.fromstring('L', imgSize, rawData, 'raw', 'F;16')
img.save("foo.png")
其中 h 和 w 将是高度和宽度
我有一个文件 (rawbytes.data)。它包含 YUV NV12 格式的原始字节。它包含一帧灰度图像 (640x480)。我将如何解析此数据文件并显示 png?
.data 文件在 Sublime Text 中如下所示:
0000 0000 0000 0000 6c05 0000 8002 0000 e001 0000 0707 0807 0808 0a0b 0e0f 1112 1515 1512 120f 0f0d 0c0e 0e10 1011 1110 0f0d 0e0b 0b0c 0e0e 0f0d 0c0e 0c0c 0b0a 0908 0a0a 0a0a 0908 0a08 0808 0708 0809 0809 0b09 0b09 0b0f 1214 1416 1413 1112 0f09 0809 0c0e 1010 1111 1110 0e0e 0d0c 0a08 0807 0708 0708 0707 0708 0606 0707 0707 0807 0708 0708 0807 0707 0708 0807 0808 0707 0707 0807 0808 0706 0707 0807 0807 0807 0707 0807 0707 0808 0808 0708 0706 0707 0807 0708 0808 0808 0808 0708 0808 0807 0808 0708 0807 0809 0707 0908 0808 0808 0908 0708 0707 0807 0808 0708 0707 0808 0708 0809 0808 0708 0708 0707 0808 0808 0707 0707 0708 0807 0809 0708 0808 0809 0908 0807 0809 0908 0808 0808 0808 0808 0809 0808 0809 0808 0808 0808 0908 0808 0908 0908 0909 0809 0908 0808 0708 0809 0909 0909 0809 0908 0908 0809 0909 0809 0909 0808 0808 0809 0808 0909 0808 0709 0808 0808 0809 0809 0809 0808
我尝试使用 python 以 'rb' 模式打开文件并以 'wb' 将其写入 png 文件但不起作用。
with open('rawbytes.data', 'rb') as f:
data = f.read()
with open('picture_out.png', 'wb') as f:
f.write(data)
尝试使用以下方法将原始数据转换为 png:
rawData = open("foo.raw" 'rb').read()
imgSize = (h,w)
img = Image.fromstring('L', imgSize, rawData, 'raw', 'F;16')
img.save("foo.png")
其中 h 和 w 将是高度和宽度