README.txt for dpwechordrecog-20091002

Dan Ellis dpwe@ee.columbia.edu 2009-10-02

This is a pre-trained chord recognition system according to the 
minimal chord set (i.e. only 25 total distinct chord types, 
including no chord). 

It has been trained on the 180 Beatles chord transcriptions 
created by Chris Harte and corresponding audio.

It consists of one main function that can be run from the Matlab 
command prompt:

>> doChordID "/path/to/testFileList.txt" "/path/to/scratchDir" "/path/to/resultsDir"

This will perform chord recognition on each of the audio files listed in 
testFileList.txt, and write the results into resultsDir/<filename.wav>.txt .
scratchDir is a directory into which intermediate files are written.

The output files are in the format

<start_time_in_sec> <end_time_in_sec> <label>
<start_time_in_sec> <end_time_in_sec> <label>
....

where the label is C, C#, D, ... B, C:min, C#:min, ... B:min, 
or N for no chord.

Running this system over the 180 Beatles tracks, using our alignments 
and our mapping of the full set of chords to the 25 classes, gives a 
time-weighted accuracy of 73.74%.  For completeness, this package 
also includes our evaluation routine, which is executed as:

>> fl = doChordID('allmp3s.txt','scratch','results');
>> rfl = listfileread('alllabs.txt');
>> [S,C] = score_chord_id(fl,rfl,1);
>> S
S =
    0.7374


EXECUTION TIME

Chord recognition takes around 10s per track on a 2.5 GHz Macbook Pro 
using Matlab R2009a.

 * end *
