math-girl-796

导航

 

SVHN数据集官网:http://ufldl.stanford.edu/housenumbers/

SVHN数据集官方提供的有两种格式
Format1是那种在街上拍的照片,每张照片的尺寸都不同,然后label提供了照片上门牌上的所有数字,和每一个单独的数字的bounding box;
在这里插入图片描述

Format2是把街拍图片上的数字一个一个截出来,然后resize成32*32的图片,label是一个单独的数字。
在这里插入图片描述

官方的Format2特别好读,numpy矩阵啥的官方都给了,网上教程也一大堆。但是Format1不太好读,我整了一下午,整了一个从bounding box剪出来的,多数字的版本,这里给大家提供一个开箱即用的预处理过的好读的格式发出来。

input和label如下

input:
在这里插入图片描述
label:[2, [2, 3]]

使用方法

import pickle

# 读取数据
f = open('train-set.blob', 'rb')
x_train_set, y_train_set = pickle.load(f)
f.close()

f = open('test-set.blob', 'rb')
x_test_set, y_test_set = pickle.load(f)
f.close()

# 展示图片和对应标签
from PIL import Image
index = 666
im = Image.fromarray(x_train_set[i].reshape(64,64,3))
im.show()
print(y_train_set[i])

数据格式

x_XXX_set::一个列表,列表中每个元素是一个numpy数组,表示一张图片,数组的尺寸是3*64*64,表示(通道,高度,宽度)。这个numpy数组的dtype为uint8,范围在0-255之间。通道有三个,意思是RGB的,具体哪个是R哪个是G哪个是B我就没管了

y_XXX_set:一个列表,列表中每个元素是一个列表,对应一张图片的label。这个小列表的格式为[数字的数量, [第一个数字,第二个数字,...]],列表中数字的数据类型都是python中的内置的int数据类型。

在原数据集中,图片上的0用“10”来标注。在我们这个版本里做出了修改,0就是用0标注。也就是0-9的正常标注。

下载地址:

有csdn积分的哥们施舍一下:https://download.csdn.net/download/qq_39480548/15617097

实在没积分的哥们咱也不能一棒子打死:https://pan.baidu.com/s/1jgc3-iQjMeDO30mhe8WGmQ 提取码: h9p3

posted on 2021-03-06 18:41  mathgirl796  阅读(509)  评论(0编辑  收藏  举报