Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/albincorreya/chromacoverid
Methods to compute various chroma audio features and audio similarity measures particularly for the task of cover song identification
https://github.com/albincorreya/chromacoverid
audio-processing audio-similarity-measures chroma cover-song-detection cover-song-identification essentia librosa music-information-retrieval
Last synced: 2 months ago
JSON representation
Methods to compute various chroma audio features and audio similarity measures particularly for the task of cover song identification
- Host: GitHub
- URL: https://github.com/albincorreya/chromacoverid
- Owner: albincorreya
- Created: 2017-11-03T14:48:16.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2020-02-07T15:11:23.000Z (almost 5 years ago)
- Last Synced: 2024-11-01T01:53:03.773Z (2 months ago)
- Topics: audio-processing, audio-similarity-measures, chroma, cover-song-detection, cover-song-identification, essentia, librosa, music-information-retrieval
- Language: Jupyter Notebook
- Homepage:
- Size: 13.3 MB
- Stars: 24
- Watchers: 2
- Forks: 10
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ChromaCoverID
Set of functions and methods to compute various chroma and audio similarity measures particularly for the task of cover song identification.
For the moment it includes the python implementation of QMAX, DMAX cover song similarity measures as mentioned in the following papers.
* Serra, J., Serra, X., & Andrzejak, R. G. (2009). Cross recurrence quantification for cover song identification. New Journal of Physics.
* Chen, N., Li, W., & Xiao, H. (2017). Fusing similarity functions for cover song identification. Multimedia Tools and Applications.
[PS: This implementation is purely for research purposes]
## Setup
Install python dependencies using pip
```bash
$ pip install -r requirements.txt
```## Usage examples
For more detailed examples have a look on the ipython [notebook](examples.ipynb)
* For feature extraction using [chroma_features.py]
```python
from chroma_features import ChromaFeaturesaudio_path = "./test_audio.wav"
#Initiate the chroma class
chroma = ChromaFeatures(audio_file=audio_path, mono=True, sample_rate=44100)# Now you can compute various chroma features and ther plots using the various methods of object chroma
chroma.chroma_stft()
chroma.chroma_cqt()#You can specify custom params
chroma.chroma_hpcp(hopSize=2048, numBins=24)
chroma.chroma_cens(hopSize=1024)```
* Computing cover song similarity measures (qmax and dmax)
```python
from chroma_features import ChromaFeatures
import cover_similarity_measures as simschroma1 = ChromaFeatures('')
chroma2 = ChromaFeatures('')
hpcp1 = chroma1.chroma_hpcp()
hpcp2 = chroma2.chroma_hpcp()#similarity matrix
cross_recurrent_plot = sims.cross_recurrent_plot(hpcp1, hpcp2)#cover song similarity distance
qmax, cost_matrix = sims.qmax_measure(cross_recurrent_plot)
dmax, cost_matrix = sims.dmax_measure(cross_recurrent_plot)
```## Contribute
It would be great if we can compile all the related cover song similarity measures from
other papers together in this repo. Let me know if you have any suggestions.* Fork the repo
* Submit a pull request## Acknowledgements
Thanks to Romain Hennequin for helping in the implementation and Ning Chen for the matlab code for dmax measure.