大家好,又见面了,我是你们的朋友全栈君。
记录用不同的方法读取Mnist数据集
1、Python的PIL模块读取Mnist图片
#读取文件夹mnist下的60000张图片,图片为灰度图,所以为1通道,如果是将彩色图作为输入,则将1替换为3,图像大小28*28
def load_data():
data = np.empty((60000,1,28,28),dtype="float32")
label = np.empty((60000,),dtype="uint8")
imgs = os.listdir("E:\\DataSet\\mnist")
num = len(imgs)
for i in range(num):
img = Image.open("E:\\DataSet\\mnist\\"+imgs[i])
arr = np.asarray(img,dtype="float32")
data[i,:,:,:] = arr
label[i] = int(imgs[i].split('.')[0])
#归一化和零均值化
data /= np.max(data)
data -= np.mean(data)
return data,label
if __name__ == '__main__':
load_data()
2、keras自带的 load_data( ) 方法
from keras.datasets import mnist
(X_train, y_train), (X_test, y_test) = mnist.load_data()
X_train.shape (60000, 28, 28),X_test.shape (10000, 28, 28);
y_train.shape (60000,),y_test.shape (10000,)。
这个方法未进行归一化,像素点数据范围是0-255。
参考:
http://keras-cn.readthedocs.io/en/latest/other/datasets/
https://github.com/wepe/MachineLearning/
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/129521.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...