mnist有多少张图片(怎么读取图片文字)

importosfromPILimportImageimportnumpyasnp#读取文件夹mnist下的42000张图片,图片为灰度图,所以为1通道,如果是将彩色图作为输入,则将1替换为3,图像大小28*28defload_data(): data=np.empty((42000,1,28,28),dtype="float32") label=np.em…

大家好,又见面了,我是你们的朋友全栈君。

    记录用不同的方法读取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/

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/129521.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • creo2.0安装激活成功教程教程_droid upnp port mapper下载

    creo2.0安装激活成功教程教程_droid upnp port mapper下载GAppProxy-2.0.0安装使用手册GAppProxy基于GoogleAppEngine,所以首先需要准备一个google账号(即gmail账号)。申请GAE空间并创建新的的app_id:1,打开浏览器,输入http://appengine.google.com/输入gmail用户密码登入。2,点击“CreateanApplication”…

    2025年7月28日
    3
  • bzero函数C语言_zeros函数

    bzero函数C语言_zeros函数原型:externvoidbzero(void*s,intn);  用法:#include  功能:置字节字符串s的前n个字节为零且包括‘\0’。  说明:bzero无返回值,并且使用strings.h头文件,strings.h曾经是posix标准的一部分,但是在POSIX.1-2001标准里面,这些函数被标记为了遗留函数而不推荐使用。在POSIX.

    2022年10月12日
    6
  • ringbuffer 无锁队列_javabytebuffer使用

    ringbuffer 无锁队列_javabytebuffer使用一、简介1、循环缓冲区的实现原理环形缓冲区通常有一个读指针和一个写指针。读指针指向环形缓冲区中可读的数据,写指针指向环形缓冲区中可写的缓冲区。通过移动读指针和写指针就可以实现缓冲区的数据读取和写入。在通常情况下,环形缓冲区的读用户仅仅会影响读指针,而写用户仅仅会影响写指针。如果仅仅有一个读用户和一个写用户,那么不需要添加互斥保护机制就可以保证数据的正确性。如果有多个读写用户访问环形缓冲区,那么必须…

    2025年9月5日
    7
  • 【安卓笔记】高速的发展设置界面—–PreferenceActivity

    【安卓笔记】高速的发展设置界面—–PreferenceActivity

    2022年1月1日
    39
  • kali linux破解wifi密码-超详细过程

    前期准备VMwareWorkstation虚拟机在虚拟机安装好kaillinunx系统无线网卡(芯片为3070或者1887L都支持Linux)一.打开终端,用airmon-ng命令查看如果出现无法访问…没有那个文件或目录解决办法:先在window主机上按win+r键然后输入services.msc回车找到VMwareUSBArbitrationService,双击…

    2022年4月8日
    1.6K
  • Java三种方式实现发送xml参数的WebService接口调用

    Java三种方式实现发送xml参数的WebService接口调用项目开发中与第三方系统数据对接遇到的问题,仅用作记录。1.使用cxf调用(联调时没有收到响应信息)JaxWsDynamicClientFactoryclientFactory=JaxWsDynamicClientFactory.newInstance();logger.info(JSON.toJSON(todoInfo));Clientclient=clientFacto…

    2022年7月12日
    20

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号