我使用 OpenCV 的人脸识别器创建了一个简单的人脸识别功能。它可以很好地处理来自人的图像。
现在我想用手写字符代替人来做一个测试。我遇到了 MNIST 数据集,但它们将图像存储在一个我以前从未见过的奇怪文件中。
我只需要从中提取一些图像:
train-images.idx3-ubyte
并将它们保存在文件夹中 .gif
还是我误解了这个 MNIST 的东西。如果是的话,我在哪里可以获得这样的数据集?
编辑
我还有 gzip 文件:
train-images-idx3-ubyte.gz
我正在尝试阅读内容,但 show()
不起作用,如果我 read()
我看到随机符号。
images = gzip.open("train-images-idx3-ubyte.gz", 'rb')
print images.read()
编辑
通过使用以下方法设法获得一些有用的输出:
with gzip.open('train-images-idx3-ubyte.gz','r') as fin:
for line in fin:
print('got line', line)
我现在必须以某种方式将其转换为图像,输出:
原文由 Roman 发布,翻译遵循 CC BY-SA 4.0 许可协议
下载训练/测试图像和标签:
并将它们解压缩到工作目录中,比如
samples/
。从 PyPi 获取 python-mnist 包:
导入
mnist
包并读取训练/测试图像:向控制台显示图像:
你会得到这样的东西:
解释:
list
无符号字节。array
无符号字节。