def eval(args): # load model model = get_model(args, 0, args.r, from_ckpt=True, train=False, grocery=args.grocery) model.load(args.logname) # from default checkpoint if args.wav_file_list: with open(args.wav_file_list) as f: for line in f: try: print((line.strip())) if (args.speaker == 'single'): upsample_wav( '../data/vctk/VCTK-Corpus/wav48/p225/' + line.strip(), args, model) else: upsample_wav( '../data/vctk/VCTK-Corpus/' + line.strip(), args, model) except EOFError: print('WARNING: Error reading file:', line.strip())
def eval(args): # load model # model = get_model(args, 0, args.r, from_ckpt=True, train=False) # model.load(args.logname) # from default checkpoint num = 49 model = torch.load(folder + "model_epoch_"+str(num)+".pth") avg_psnr = 0 avg_snr = 0 sum_x = 0 sum_y = 0 val_dir = '../data/vctk/vctk-speaker1-val.4.16000.8192.4096.h5' file_list = '../data/vctk/speaker1/speaker1-val-files.txt' # X_val, Y_val = load_h5(args.val) # dataset = loading(root_dir, transform=None) valset1 = loading(val_dir, transform=None) valset = DataLoader(valset1, batch_size=1, shuffle=False, num_workers=4) nb_batch = valset.__len__() with torch.no_grad(): for i_batch, val in enumerate(valset): # for batch in range(nb_batch): # input, target = batch[0].to(device), batch[1].to(device) X_val, Y_val = val['lr'], val['hr'] # print(X_val.numpy()[0].shape) # x_temp = X_val.numpy()[0] # y_temp = Y_val.numpy()[0] # x_S = computeSNR(x_temp,2048) # y_S = computeSNR(y_temp,2048) # sum_x += x_S # sum_y += y_S X_val = X_val.float() Y_val = Y_val.float() X_val = Variable(X_val.cuda(), requires_grad=False).permute(0, 2, 1) # compute N, C L Y_val = Variable(Y_val.cuda(), requires_grad=False).permute(0, 2, 1) # print(X_val.size()) # print(Y_val.size()) prediction = model(X_val) mse = loss_function(prediction, Y_val) psnr = 10 * log10(1 / mse.item()) snr = 10 * log10(1 / mse.cpu().data.numpy()) avg_psnr += psnr avg_snr += snr print("===> Avg. SNR: {:.4f} dB".format(avg_snr / len(valset))) # print("===> X. SNR: {:.4f} dB".format(sum_x / len(valset))) # print("===> Y. SNR: {:.4f} dB".format(sum_y / len(valset))) with open(file_list) as f: for line in f: try: print(line.strip()) upsample_wav(line.strip(), model) except EOFError: print('WARNING: Error reading file:', line.strip())
def eval(args): # load model model = get_model(args, 0, args.r, from_ckpt=True, train=False) model.load(args.logname) # from default checkpoint if args.wav_file_list: with open(args.wav_file_list) as f: for line in f: try: print line.strip() upsample_wav(line.strip(), args, model) except EOFError: print 'WARNING: Error reading file:', line.strip()
def eval(args): # load model model = get_model(args, 0, args.r, from_ckpt=True, train=False) model.load(args.logname) # from default checkpoint upsample_wav(args.wav_file_list, args, model)