def prep_whole_dividable(path_load, path_save, skipcount, option, firstdim, secdim): import string import os import numpy as np import scipy.io import math from tqdm import tqdm # -------------------------------------------------------------- # Get files from path path_save_one = path_save for p in range(1,2): if p == 0: path_load_real = path_load + '/Train' path_save_real = path_save_one + '/Train' if not os.path.exists(path_save_real): os.makedirs(path_save_real) elif p == 1: path_load_real = path_load + '/Validation' path_save_real = path_save_one + '/Validation' if not os.path.exists(path_save_real): os.makedirs(path_save_real) elif p == 2: path_load_real = path_load + '/Test' path_save_real = path_save_one + '/Test' if not os.path.exists(path_save_real): os.makedirs(path_save_real) files_all = os.listdir(path_load_real) files_all = sorted(files_all) for files in range(0,len(files_all),skipcount): fourierspec2 = [] labelpsd2 = [] for file in tqdm(files_all[files:files+skipcount]): path_loadcontents = path_load_real + '/' + file contents = np.load(path_loadcontents) fourierspec = [] labelpsd = [] fourier = contents['dbmixed'] fourier = fourier[:firstdim,:secdim] fourierspec2.append(fourier) if option == 'music': label = contents['dbmusic'] elif option == 'speech': label = contents['dbspeech'] else: print('option not right!') label = label[:firstdim,:secdim] labelpsd2.append(label) train_data = np.array(fourierspec2) train_data = np.reshape(train_data, (train_data.shape[0], train_data.shape[1], train_data.shape[2], 1)) train_labels = np.array(labelpsd2) train_labels = np.reshape(train_labels, (train_labels.shape[0], train_labels.shape[1], train_labels.shape[2], 1)) path_savecontents = path_save_real + '/Processed_' + str(files) + '_' + str(train_data.shape[0]) + '_whole_dividable.npz' np.savez(path_savecontents, x=train_data, y=train_labels) return path_save_one def prep_flatten_1weiter(path_load, path_save, skipcount, framelength, option): import os import numpy as np import scipy.io import math from tqdm import tqdm # ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- path_save_one = path_save for p in range(0,3): if p == 0: path_load_real = path_load + '/Train' path_save_real = path_save_one + '/Train' if not os.path.exists(path_save_real): os.makedirs(path_save_real) elif p == 1: path_load_real = path_load + '/Validation' path_save_real = path_save_one + '/Validation' if not os.path.exists(path_save_real): os.makedirs(path_save_real) elif p == 2: path_load_real = path_load + '/Test' path_save_real = path_save_one + '/Test' if not os.path.exists(path_save_real): os.makedirs(path_save_real) # Get files from path files_all = os.listdir(path_load_real) files_all = sorted(files_all) for files in range(0,len(files_all),skipcount): fourierspec2 = [] labelpsd2 = [] for file in tqdm(files_all[files:files+skipcount]): path_loadcontents = path_load_real + '/' + file contents = np.load(path_loadcontents) fourierspec = [] labelpsd = [] fourier = contents['dbmixed'] for n in list(range(0, (math.floor(fourier.shape[1]/framelength)-1)*framelength+1)): fourierlil = fourier[:,n:n+framelength] fourierlil = np.transpose(fourierlil) fourierlil = np.reshape(fourierlil, (fourier.shape[0]*framelength)) fourierspec.append(fourierlil) fourierspec2.extend(fourierspec) if option == 'music': label = contents['dbmusic'] elif option == 'speech': label = contents['dbspeech'] else: print('option not right!') for n in list(range(0, (math.floor(fourier.shape[1]/framelength)-1)*framelength+1)): labellil = label[:,n+framelength-1] labelpsd.append(labellil) labelpsd2.extend(labelpsd) train_data = np.array(fourierspec2) train_labels = np.array(labelpsd2) path_savecontents = path_save_real + '/Processed_' + str(files) + '_' + str(train_data.shape[0]) + '_flatten_1weiter.npz' np.savez(path_savecontents, x=train_data, y=train_labels) diffcount = (math.floor(fourier.shape[1]/framelength)-1)*framelength+1 return diffcount def prep_flatten_4weiter(path_load, path_save, skipcount, framelength, option): import os import numpy as np import scipy.io import math from tqdm import tqdm # ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- path_save_one = path_save for p in range(0,3): if p == 0: path_load_real = path_load + '/Train' path_save_real = path_save_one + '/Train' if not os.path.exists(path_save_real): os.makedirs(path_save_real) elif p == 1: path_load_real = path_load + '/Validation' path_save_real = path_save_one + '/Validation' if not os.path.exists(path_save_real): os.makedirs(path_save_real) elif p == 2: path_load_real = path_load + '/Test' path_save_real = path_save_one + '/Test' if not os.path.exists(path_save_real): os.makedirs(path_save_real) # Get files from path files_all = os.listdir(path_load_real) files_all = sorted(files_all) for files in tqdm(range(0,len(files_all),skipcount)): fourierspec2 = [] labelpsd2 = [] for file in tqdm(files_all[files:files+skipcount]): path_loadcontents = path_load_real + '/' + file contents = np.load(path_loadcontents) fourierspec = [] labelpsd = [] fourier = contents['dbmixed'] print(fourier.shape) # if p == 0 & files == 0: # diffcount = math.floor(fourier.shape[1]/framelength) # return diffcount for n in list(range(0, math.floor(fourier.shape[1]/framelength))): fourierlil = fourier[:,framelength*n:framelength*n+framelength] fourierlil = np.transpose(fourierlil) fourierlil = np.reshape(fourierlil, (fourier.shape[0]*framelength)) print(np.size(fourierlil)) fourierspec.append(fourierlil) print(np.size(fourierspec)) fourierspec2.extend(fourierspec) if option == 'music': label = contents['dbmusic'] elif option == 'speech': label = contents['dbspeech'] else: print('option not right!') for n in list(range(0, math.floor(label.shape[1]/framelength))): labellil = label[:,framelength*n+framelength-1] print(np.size(labellil)) labelpsd.append(labellil) print(np.size(labelpsd)) labelpsd2.extend(labelpsd) train_data = np.array(fourierspec2) train_labels = np.array(labelpsd2) path_savecontents = path_save_real + '/Processed_' + str(files) + '_' + str(train_data.shape[0]) + '_' + str(framelength) + '_flatten.npz' np.savez(path_savecontents, x=train_data, y=train_labels)