Mercurial > hg > mirex2013
changeset 36:8d313328c5fa abstract
Merge Segmentino into same document as Chordino
author | Chris Cannam |
---|---|
date | Fri, 06 Sep 2013 17:42:01 +0100 |
parents | d96ec36441c6 |
children | 82f497a186a1 |
files | vamp-plugins_abstract/Makefile vamp-plugins_abstract/chordino-mirex2013.tex vamp-plugins_abstract/qmvamp-mirex2013.bib vamp-plugins_abstract/segmentino-mirex2013.tex |
diffstat | 4 files changed, 97 insertions(+), 86 deletions(-) [+] |
line wrap: on
line diff
--- a/vamp-plugins_abstract/Makefile Fri Sep 06 17:17:45 2013 +0100 +++ b/vamp-plugins_abstract/Makefile Fri Sep 06 17:42:01 2013 +0100 @@ -1,4 +1,4 @@ -all: qmvamp-mirex2013.pdf chordino-mirex2013.pdf segmentino-mirex2013.pdf beatroot-vamp-mirex2013.pdf cep-mirex2013.pdf +all: qmvamp-mirex2013.pdf chordino-mirex2013.pdf beatroot-vamp-mirex2013.pdf cep-mirex2013.pdf qmvamp-mirex2013.pdf: qmvamp-mirex2013.tex qmvamp-mirex2013.bib ( echo q | xelatex qmvamp-mirex2013 ) && bibtex qmvamp-mirex2013 && xelatex qmvamp-mirex2013 && xelatex qmvamp-mirex2013 @@ -6,9 +6,6 @@ chordino-mirex2013.pdf: chordino-mirex2013.tex qmvamp-mirex2013.bib ( echo q | xelatex chordino-mirex2013 ) && bibtex qmvamp-mirex2013 && xelatex chordino-mirex2013 && xelatex chordino-mirex2013 -segmentino-mirex2013.pdf: segmentino-mirex2013.tex qmvamp-mirex2013.bib - ( echo q | xelatex segmentino-mirex2013 ) && bibtex qmvamp-mirex2013 && xelatex segmentino-mirex2013 && xelatex segmentino-mirex2013 - beatroot-vamp-mirex2013.pdf: beatroot-vamp-mirex2013.tex qmvamp-mirex2013.bib ( echo q | xelatex beatroot-vamp-mirex2013 ) && bibtex qmvamp-mirex2013 && xelatex beatroot-vamp-mirex2013 && xelatex beatroot-vamp-mirex2013 @@ -16,4 +13,4 @@ ( echo q | xelatex cep-mirex2013 ) && bibtex qmvamp-mirex2013 && xelatex cep-mirex2013 && xelatex cep-mirex2013 clean: - rm -f qmvamp-mirex2013.bbl qmvamp-mirex2013.aux qmvamp-mirex2013.blg qmvamp-mirex2013.log chordino-mirex2013.aux chordino-mirex2013.blg chordino-mirex2013.log segmentino-mirex2013.bbl segmentino-mirex2013.aux segmentino-mirex2013.blg segmentino-mirex2013.log beatroot-vamp-mirex2013.bbl beatroot-vamp-mirex2013.aux beatroot-vamp-mirex2013.blg beatroot-vamp-mirex2013.log cep-mirex2013.bbl cep-mirex2013.aux cep-mirex2013.blg cep-mirex2013.log + rm -f qmvamp-mirex2013.bbl qmvamp-mirex2013.aux qmvamp-mirex2013.blg qmvamp-mirex2013.log chordino-mirex2013.aux chordino-mirex2013.blg chordino-mirex2013.log beatroot-vamp-mirex2013.bbl beatroot-vamp-mirex2013.aux beatroot-vamp-mirex2013.blg beatroot-vamp-mirex2013.log cep-mirex2013.bbl cep-mirex2013.aux cep-mirex2013.blg cep-mirex2013.log
--- a/vamp-plugins_abstract/chordino-mirex2013.tex Fri Sep 06 17:17:45 2013 +0100 +++ b/vamp-plugins_abstract/chordino-mirex2013.tex Fri Sep 06 17:42:01 2013 +0100 @@ -9,7 +9,7 @@ % Title. % ------ -\title{MIREX 2013 Entry: Chordino Vamp Plugin} +\title{MIREX 2013 Entry: Chordino and Segmentino} % Single address % To use with only one author or several with the same address @@ -27,9 +27,9 @@ % Three addresses % -------------- \threeauthors - {Chris Cannam} {Affiliation1 \\ {\tt author1@music-ir.org}} - {Lu\'{i}s A. Figueira} {Affiliation2 \\ {\tt author2@music-ir.org}} - {Matthias Mauch} {Affiliation3 \\ {\tt author3@music-ir.org}} + {Chris Cannam} {Queen Mary, University of London \\ {\tt chris.cannam@eecs.qmul.ac.uk}} + {Lu\'{i}s A. Figueira} {Queen Mary, University of London \\ {\tt luis.figueira@eecs.qmul.ac.uk}} + {Matthias Mauch} {Queen Mary, University of London \\ {\tt matthias.mauch@eecs.qmul.ac.uk}} \begin{document} % @@ -37,18 +37,19 @@ % \begin{abstract} +Chordino and Segmentino are Vamp plugin implementations of chord +extraction and structural segmentation algorithms, respectively, based +on earlier work by Matthias Mauch. + Chordino is an open source Vamp plugin library for harmony and chord extraction with some features aimed at amateur musicians, and some at -music information retrieval researchers. +music information retrieval researchers. Written by Matthias Mauch, it +has been available online as a free, open source download from the +Centre for Digital Music at Queen Mary, University of London since +late 2010. -This plugin library has been available online as a free, open source -download from the Centre for Digital Music at Queen Mary, University -of London since late 2010. A related method was submitted to MIREX in -2010 by Matthias Mauch\cite{mauch:md1:2010}, using the chroma -implementation from this plugin with a MATLAB dynamic Bayesian network -front-end. We now submit this simpler plugin implementation, as part -of a programme of evaluation of Vamp plugins based on work carried out -at the Centre for Digital Music. +Segmentino is a Vamp plugin library written by Matthias Mauch and +Massimiliano Zanoni and currently in preparation for a public release. \end{abstract} % @@ -72,15 +73,76 @@ The Chordino plugin was developed following Mauch's 2010 work on chord extraction as submitted to MIREX in that year\cite{mauch:md1:2010}. While that submission used a C++ chroma -implementation with a MATLAB chord extraction front-end, Chordino is -an entirely C++ implementation that was developed specifically to be -made freely available as an open-source plugin for general use. +implementation with a MATLAB dynamic Bayesian network as a chord +extraction front-end\cite{matthias2010a}, Chordino is an entirely C++ +implementation that was developed specifically to be made freely +available as an open-source plugin for general use. + +The Segmentino plugin is a new C++ implementation of a segmentation +method first described in Mauch's paper on using musical structure to +enhance chord transcription\cite{matthias2009a} and expanded on in +Mauch's PhD thesis\cite{matthiasphd}, that is currently being prepared +for public release. + +We are preparing and submitting these plugins as part of a programme +of evaluation of Vamp plugin implementations of existing algorithms +being carried out at the Centre for Digital Music. (For a complete overview of this submission across all of the tasks and plugins it covers, please see the relevant repository at the SoundSoftware site\footnote{http://code.soundsoftware.ac.uk/projects/mirex2013}.) +\section{Audio Chord Extraction} + +The method for the Chordino plugin has two parts: + +\subsection{NNLS Chroma} + +NNLS Chroma analyses a single channel of audio using frame-wise +spectral input from the Vamp host. The spectrum is transformed to a +log-frequency spectrum (constant-Q) with three bins per semitone. On +this representation, two processing steps are performed: tuning, after +which each centre bin (i.e. bin 2, 5, 8, …) corresponds to a semitone, +even if the tuning of the piece deviates from 440 Hz standard pitch; +and running standardisation: subtraction of the running mean, division +by the running standard deviation. This has a spectral whitening +effect. + +The processed log-frequency spectrum is then used as an input for NNLS +approximate transcription using a dictionary of harmonic notes with +geometrically decaying harmonics magnitudes. The output of the NNLS +approximate transcription is semitone-spaced. To get the chroma, this +semitone spectrum is multiplied (element-wise) with the desired +profile (chroma or bass chroma) and then mapped to 12 bins. + +\subsection{Chord transcription} + +A fixed dictionary of chord profiles is used to calculate frame-wise +chord similarities. A standard HMM/Viterbi approach is used to smooth +these to provide a chord transcription. + +\section{Structural Segmentation} + +A beat-quantised chroma representation is used to calculate pair-wise +similarities between beats (really: beat "shingles", i.e. multi-beat +vectors). Based on this first similarity calculation, an exhaustive +comparison of all possible segments of reasonable length in beats is +executed, and segments are added to form segment families if they are +sufficiently similar to another "family member". Having accumulated a +lot of families, the families are rated, and the one with the highest +score is used as the first segmentation group that gets +annotated. This last step is repeated until no more families fit the +remaining "holes" in the song that haven't already been assigned to a +segment. + +This method was developed for "classic rock" music, and therefore +assumes a few characteristics that are not necessarily found in other +music: repetition of harmonic sequences in the music that coincide +with structural segments in a song; a steady beat; segments of a +certain length; corresponding segments have the same length in +beats. + \bibliography{qmvamp-mirex2013} \end{document}
--- a/vamp-plugins_abstract/qmvamp-mirex2013.bib Fri Sep 06 17:17:45 2013 +0100 +++ b/vamp-plugins_abstract/qmvamp-mirex2013.bib Fri Sep 06 17:42:01 2013 +0100 @@ -85,3 +85,20 @@ year = {2010} } + @inproceedings{matthias2009a, + author = {Matthias Mauch and Katy C. Noland and Dixon, Simon}, + title = {Using Musical Structure to Enhance Automatic Chord Transcription}, + booktitle = {Proceedings of the 10th International Conference on Music Information Retrieval (ISMIR 2009)}, + note = {First description of the algorithm. However, the description is not complete. Better description in "Automatic chord transcription from audio using computational models of musical context" (Mauch's PhD Thesis), Chapter 6.}, + pages = {231-236}, + year = {2009} +} + + @phdthesis{matthiasphd, + author = {Matthias Mauch}, + title = {Automatic Chord Transcription from Audio Using Computational Models of Musical Context}, + note = {Features a more thorough description of the segmentation algorithm in Chapter 6.}, + school = {Queen Mary, University of London}, + year = {2010} +} +
--- a/vamp-plugins_abstract/segmentino-mirex2013.tex Fri Sep 06 17:17:45 2013 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,65 +0,0 @@ -% ----------------------------------------------- -% Template for MIREX 2010 -% (based on ISMIR 2010 template) -% ----------------------------------------------- - -\documentclass{article} -\usepackage{mirex2010,amsmath,cite} -\usepackage{graphicx} - -% Title. -% ------ -\title{MIREX 2013 Entry: Segmentino Vamp Plugin} - -% Single address -% To use with only one author or several with the same address -% --------------- -%\oneauthor -% {Names should be omitted for double-blind reviewing} -% {Affiliations should be omitted for double-blind reviewing} - -% Two addresses -% -------------- -%\twoauthors -%{Chris Cannam} {Affiliation1 \\ {\tt author1@music-ir.org}} -%{Lu\'{i}s A. Figueira} {Affiliation2 \\ {\tt author2@music-ir.org}} - -% Three addresses -% -------------- - \threeauthors - {Chris Cannam} {Affiliation1 \\ {\tt author1@music-ir.org}} - {Lu\'{i}s A. Figueira} {Affiliation2 \\ {\tt author2@music-ir.org}} - {Matthias Mauch} {Affiliation3 \\ {\tt author3@music-ir.org}} - -\begin{document} -% -\maketitle -% -\begin{abstract} - -Segmentino is a Vamp plugin library for structural segmentation of music audio. - -%!!! check spelling -This library, developed by Matthias Mauch and Massimiliano Zanoni, is -currently in preparation for a public release from the Centre for -Digital Music at Queen Mary, University of London. We are preparing -and submitting it as part of a programme of evaluation of Vamp plugin -implementations of existing algorithms being carried out at the Centre -for Digital Music. - -(For a complete overview of this submission across all of the tasks and -plugins it covers, please see the relevant repository at the -SoundSoftware -site\footnote{http://code.soundsoftware.ac.uk/projects/mirex2013}.) - -\end{abstract} -% -\section{Introduction}\label{sec:introduction} - -desccibe vamp -describe rationale supporting submission\ldots - - -\bibliography{qmvamp-mirex2013} - -\end{document}