peterf@2: Summary peterf@2: ------------------- peterf@2: This software relates to results reported in Foster et al. (2015). Scripts are included for analysing annotator agreement and for obtaining baseline GMM results, using the CHiME-Home dataset. Finally, the scripts are provided for obtaining the annotations. peterf@2: peterf@2: NB: The CHiME-Home dataset is not included. The dataset (recordings & annotations) is available at TODO. peterf@2: peterf@2: The scripts were developed and tested on Linux environments, using Python 2.7.6. Portability to other environments is not expected. peterf@2: peterf@2: Overview of directory structure and scripts peterf@2: ------------------- peterf@2: annotation_scripts/ peterf@2: Contains scripts used to obtain annotations peterf@2: annotationkit_create_annotation_protocol.py peterf@2: Prepares annotation protocol CSV from list of audio files peterf@2: annotationkit_create_annotation_protocol_wrapper.sh peterf@2: Wrapper shell script for annotationkit_create_annotation_protocol.py peterf@2: annotationkit_play_chunks.py peterf@2: Play back list of audio chunks, based on specified annotation protocol CSV and read annotation strings from terminal peterf@2: warmup_phase/ peterf@2: Contains preliminary scripts used to create protocol files for annotator warm-up phases (cf. Foster et al., 2015) peterf@2: peterf@2: analysis_of_annotations/evaluate_annotations.py peterf@2: Code relevant to analysis of CHiME-Home annotations (not audio) peterf@2: peterf@2: gmm_baseline_experiments/ peterf@2: Contains scripts for baseline GMM evaluation. peterf@2: run_experiments.py peterf@2: Main script for baseline GMM evaluation peterf@2: peterf@2: How-to peterf@2: ------------------- peterf@2: Reproduce analysis of annotations reported in Foster et al. (2015) :- peterf@2: peterf@2: 1) Modify evaluate_annotations.py, so that variable DatasetPath points to directory containing CHiME-Home dataset peterf@2: 2) Execute evaluate_annotations.py peterf@2: The script writes textual analysis data to standard output; a figure pdf is written to analysis_of_annotations/figures subdirectory. peterf@2: peterf@2: Reproduce baseline results reported in Foster et al. (2015) :- peterf@2: peterf@2: 1) Modify run_experiments.py, so that Settings['paths']['chime_home']['basepath'] points to Directory containing CHiME-Home dataset; Settings['paths']['resultsdir'] and Settings['paths']['featuresdir'] should respectively point to desired directories for storing pickle files of data structures containing results and features peterf@2: 2) Execute run_experiments.py peterf@2: The script writes a figure pdf to gmm_baseline_experiments/figures subdirectory. peterf@2: peterf@2: Adapt annotation scripts for alternative purposes :- peterf@2: peterf@2: 1) Modify annotationkit_create_annotation_protocol.py. The purpose of this script is to read a list of audio files from standard input and write CSV to standard output; as presently implemented, each input file is a audio segment from which a set of 4-second chunks are sampled (as defined in script header, and sampling without replacement). The list of chunks is written to an output CSV, and defines a `protocol' file for use with the annotation script annotationkit_play_chunks.py. Variables chunkDuration and sampleRate should match desired chunk duration and given audio sample rate. peterf@2: 2) Modify annotationkit_play_chunks_wrapper.sh so that parameters chunkDuration, sampleRate are consistent with annotationkit_create_annotation_protocol.py. Further, modify parameters PermittedAnnotationCharacters, LoneAnnotationCharacters, LabelMap to reflect chosen label alphabet. NB: As implemented, using the protocol CSV, annotationkit_play_chunks.py seeks within each audio segment to locate each audio chunk, thus no explicit segmentation of input audio is required. peterf@2: peterf@2: peterf@2: peterf@2: How to cite peterf@2: ------------------- peterf@2: P. Foster, S. Sigtia, S. Krstulovic, J. Barker, M. D. Plumbley. "CHiME-Home: A Dataset for Sound Source Recognition in a Domestic Environment," in Proceedings of the 11th Workshop on Applications of Signal Processing to Audio and Acoustics (WASPAA), 2015.