def getDist(args): sample = args['s_path'] word = args['w_path'] model = args['model'] trans = args['trans'] sample_wav, fs = walkman.load(sample) sample_feat = logfbank(sample_wav, samplerate=fs, lowfreq=64, highfreq=8000, nfilt=40, nfft=2048) sample_feat_trans = featureTransform(sample_feat, trans) word_wav, fs = walkman.load(word) word_feat = logfbank(word_wav, samplerate=fs, lowfreq=64, highfreq=8000, nfilt=40, nfft=2048) word_feat_trans = featureTransform(word_feat, trans) y_sample = model.predict(sample_feat_trans) y_word = model.predict(word_feat_trans) dist, _, _, _ = dtw(makeList(y_word), makeList(y_sample), euclidean) args['dist'] = dist return args
def score(sample, truth, model, trans): sample_wav, fs = walkman.load(sample) sample_feat = logfbank(sample_wav, samplerate=fs, lowfreq=64, highfreq=8000, nfilt=40) sample_feat_trans = featureTransform(sample_feat, trans) print(np.shape(sample_feat_trans)) x = sample_feat_trans y_sample = model.predict(x, batch_size=512) y_truth = load_truth(truth) dist, _, _, _ = dtw(makeList(y_truth), makeList(y_sample), klDist) return dist
def getDtw(args): dist, _, _, _ = dtw(makeList(args['w_feat']), makeList(args['s_feat']), euclidean) args['dist'] = dist return args