CREPE: A Convolutional Representation for Pitch Estimation
J. W. Kim, J. Salamon, P. Li, and J. P. Bello.
In IEEE International Conference on Acoustics, Speech, and Signal Processing (ICASSP), Calgary, Canada, Apr. 2018.
[PDF][Copyright]
CREPE can return both the final pitch estimate (fundamental frequency a.k.a f0) as well as the output activation matrix of the convolutional network, which can be used for subsequent post-processing and visualization.
In the example below you can listen to a 10 second excerpt of a solo voice recording from the MedleyDB dataset, with plots displaying CREPE's pitch output and activation matrix:
Try CREPE out for yourself:
On your machine
A pre-trained python version of CREPE can be installed via: pip install crepe
For usage instructions and installing from source see: https://github.com/marl/crepe
Online
An experimental real-time in-browser version of CREPE: https://marl.github.io/crepe/
Note: this demo is work in progress and only supported on Chrome with certain system configurations, so your mileage may vary!
Finally, if you're at ICASSP 2018 be sure to check out my colleague Jong Wook's talk about CREPE:
Paper Code: AASP-L4.3 Paper Number: 4121
Title: CREPE: A CONVOLUTIONAL REPRESENTATION FOR PITCH ESTIMATION
Track: AASP: Audio and Acoustic Signal Processing
Session: Music Signal Analysis and Processing
Time: Thursday, April 19, 14:10 - 14:30