python读取二进制文件并将整成28*28的图像显示
时间: 2024-03-24 13:39:50 浏览: 72
在二进制文件中搜索字符串、十六进制甚至另一个二进制文件_Python
好的,我来为您解答。
首先,读取二进制文件需要使用 `open()` 函数,并指定以二进制模式打开文件。代码如下:
```python
with open('file.bin', 'rb') as f:
content = f.read()
```
接着,将读取到的内容整成 28*28 的图像需要使用 Python 的图像处理库 Pillow。具体操作如下:
```python
from PIL import Image
import numpy as np
# 将字节数组转成 28*28 的图像
data = np.frombuffer(content, dtype=np.uint8)
img = Image.fromarray(data.reshape(28, 28), mode='L')
# 显示图像
img.show()
```
注意,这里使用的是灰度图像,因此使用 `L` 参数创建图像对象。使用 `numpy` 的 `frombuffer` 函数将字节数组转换为 `numpy` 数组,然后使用 `reshape` 函数将其变形为 28*28 的矩阵。最后,使用 `Image.fromarray` 函数将 `numpy` 数组转换为图像对象。
希望这个回答能够帮助到您。
阅读全文