MusicDB: A Query by Humming System
October :: December 2005 -- [report] [presentation] [demo]
Ever remember the tune of a song but fail to recall any of its lyrics? MusicDB is a query-by-humming music search system that Annie Ding, Calvin On, and I engineered for our 6.830 (Database Systems) final project. A user hums a tune into a microphone, and MusicDB returns a ranked list of the most likely hits from its database. We represent musical tunes and hums as time series and use a time warping distance metric for similarity comparisons. A multi-dimensional index structure is used to prune the search space of songs and efficiently return the top hits back to an intuitive UI.
Our user experiments on a database of fifty midis are promising; we find that MusicDB returns the desired song within the top 10 hits with 52% accuracy and as the top hit with 24% accuracy. Moreover, we believe that substantial room for improvement in search quality can be achieved with more accurate pitch extraction software and a more solid midi parsing library than the ones we used. Because few query-by-humming solutions have been fully documented in the research literature, we document all the core components of the MusicDB architecture to enable readers to build and extend our system if desired.