import cv2
from scipy.io import loadmat
import numpy as np
from pathlib import Path
from tqdm import tqdm
#SVHN
dataFile = './oral_image/train_32x32.mat'
data = loadmat(dataFile)
train_number = 67257
#训练集
for i in tqdm(range(train_number-1)) :
path = Path("./data/train/")
tag = (str(data['y'][i][0]) if data['y'][i][0]!=10 else '0')
path = path/tag
if path.exists()==False :
path.mkdir(parents=True)
image_path = "./data/train/"+tag+'/'+tag+'_'+str(i)+'.jpg'
cv2.imwrite(image_path, data['X'][:,:,:,i])
#验证集
for i in tqdm(range(len(data['y'])-train_number)) :
i = i + train_number
path = Path("./data/val/")
tag = (str(data['y'][i][0]) if data['y'][i][0]!=10 else '0')
path = path/tag
if path.exists()==False :
path.mkdir(parents=True)
image_path = "./data/val/"+tag+'/'+tag+'_'+str(i)+'.jpg'
cv2.imwrite(image_path, data['X'][:,:,:,i])
dataFile = './oral_image/test_32x32.mat'
data = loadmat(dataFile)
#测试集
for i in tqdm(range(len(data['y']))) :
path = Path("./data/test/")
tag = (str(data['y'][i][0]) if data['y'][i][0]!=10 else '0')
path = path/tag
if path.exists()==False :
path.mkdir(parents=True)
image_path = "./data/test/"+tag+'/'+tag+'_'+str(i)+'.jpg'
cv2.imwrite(image_path, data['X'][:,:,:,i])