解析minist数据集

本文介绍MNIST数据集的二进制存储结构,包括图像数据集的魔法数、图片数量、行数和列数信息,以及标签数据集的魔法数和数字标签。内容探讨了如何使用Python简单解析MNIST数据。
摘要由CSDN通过智能技术生成

image数据集是二进制存储,前32个字节是4个int,分别表示magic(没啥用?), num(图片个数), rows(图像行数), cols(列)。之后每个字节就是图像的每个像素。

labels数据集第前16个字节是2个int, 分别表示magic,, num,后面每个字节表示图像的数字,对应images里的每个图片

解析minst的方式很多,用python简单的实现以下

# -*-coding:utf8-*-
import numpy as np
import struct
import cv2

# 读取minist数据集,image, label读读取方式不同
def load_minist(path, kind="image"):
    """"
    :param path: 文件的路径 
    :param kind: 读取文件的种类,分为image, label
    :return: 
    """
    if kind == 'image':
        with open(path, mode='rb') as img_read:
            magic, num, row, col = struct.unpack('>IIII', img_read.read(16))
            images = np.fromfile(img_read, dtype=np.uin
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值