boblsturm@0: function [H, cost] = nmfFn(nmf_params, corpus_analysis, target_analysis) boblsturm@0: boblsturm@0: nmf_alg = nmf_params.Algorithm; boblsturm@0: target_spect = target_analysis.STFT.S; boblsturm@0: corpus_spect = corpus_analysis.STFT.S; boblsturm@0: boblsturm@0: switch nmf_alg boblsturm@0: case 'Euclidean' boblsturm@0: [H, cost] = nmf_euclidean(nmf_params, target_spect, corpus_spect); boblsturm@0: case 'Divergence' boblsturm@0: [H, cost] = nmf_divergence(nmf_params, target_spect, corpus_spect); boblsturm@0: end boblsturm@0: end