Mercurial > hg > silvet
view testdata/scripts/matlab/batchProcessingEvaluate.m @ 223:51c18a17404a
Move some scripts about, make piano test script produce norm'd ref output as well as non-norm'd test output
author | Chris Cannam |
---|---|
date | Wed, 16 Jul 2014 13:29:38 +0100 |
parents | testdata/evaluation/batchProcessingEvaluate.m@ce64d11ef336 |
children |
line wrap: on
line source
function [Pre,Rec,F] = batchProcessingEvaluate(folder) % Evaluate transcription output, using onset-only note-based metrics % e.g. [Pre,Rec,F] = batchProcessingEvaluate('TRIOS-mirex2012-matlab'); fileList = dir(folder); fileCount = 0; for i=3:length(fileList) if(isdir([folder '/' fileList(i).name])) fileCount = fileCount + 1; % Load ground truth [pianoRollGT,nmatGT] = convertMIDIToPianoRoll([fileList(i).name '.mid'],10,1.0); % Load transcripton nmat nmat = load([folder '/' fileList(i).name '/' 'mix.lab']); % Convert 3rd nmat column to MIDI scale nmat(:,3) = round(12.*log2(nmat(:,3)./27.5) + 1); % Compute onset-based note-level accuracy [Pre(fileCount),Rec(fileCount),F(fileCount)] = computeNoteLevelAccuracy(nmat,nmatGT); end; end;