原文链接: mnist 简单使用
上一篇: python 解方程
下一篇: inception模型下载
mnist 手写数字的数据集
import os
import tensorflow as tf
from tensorflow.examples.tutorials.mnist import input_data
import numpy as np
from PIL import Image
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'
# 载入数据集
mnist = input_data.read_data_sets('MNIST_data', one_hot=True)
print('训练集数据总数', mnist.train.num_examples)
print('测试集数据总数', mnist.test.num_examples)
print('训练数据集形式', mnist.train.images.shape, mnist.train.labels.shape)
# 获得下一批次的数据和标签,返回多重矩阵的形式
'''
[[ 0. 0. 0. ..., 0. 0. 0.]
[ 0. 0. 0. ..., 0. 0. 0.]
[ 0. 0. 0. ..., 0. 0. 0.]]
[[ 0. 0. 0. 0. 0. 0. 0. 1. 0. 0.]
[ 0. 0. 0. 0. 0. 0. 0. 0. 1. 0.]
[ 0. 0. 0. 0. 0. 0. 0. 1. 0. 0.]]
batch_xs, batch_ys = mnist.train.next_batch(3)
print(batch_xs)
print(batch_ys)
'''
''' 前十个数据标签
[2]
[0]
[2]
[5]
[0]
[1]
[1]
[8]
[7]
[4]
'''
# 保存图片数据
for i in range(100):
image, label = mnist.train.next_batch(1);
data = np.reshape(image, [28, 28])
#矩阵中的元素都是 像素点灰度/255 的一个小数,需要乘以255 转化为灰度值
data = data * 255
img = Image.fromarray(data.astype(np.uint8), 'L')
img_num = np.argmax(label, 1)
img.save('mnist/img_%d_%d.bmp' % (i, img_num))
Extracting MNIST_data\train-images-idx3-ubyte.gz
Extracting MNIST_data\train-labels-idx1-ubyte.gz
Extracting MNIST_data\t10k-images-idx3-ubyte.gz
Extracting MNIST_data\t10k-labels-idx1-ubyte.gz
训练集数据总数 55000
测试集数据总数 10000
训练数据集形式 (55000, 784) (55000, 10)
会保存为这样的小图片
每次获取的图片都是随机的