Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/breezewhite/cfp_neuralnetwork
https://github.com/breezewhite/cfp_neuralnetwork
Last synced: 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/breezewhite/cfp_neuralnetwork
- Owner: BreezeWhite
- License: gpl-3.0
- Created: 2018-01-17T10:39:49.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2018-03-22T03:41:32.000Z (almost 7 years ago)
- Last Synced: 2023-03-05T16:04:27.129Z (almost 2 years ago)
- Language: Python
- Size: 2.18 MB
- Stars: 6
- Watchers: 0
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# CFP Neural Network
This is the code companion with the following paper:
**Yu-Te Wu, Berlin Chen, and Li Su, "Automatic music transcription leveraging generalized cepstral features and deep learning," IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), April 2018**For our study, we can visualize the work as this:
![](figures/purpose.png)
This means we teach our computer to have "absolute pitch" ability, just like expert musicians have.There are two parts of the code: one is for feature extraction; and the another one is for NN construction, training, and testing. To run the code, you need to install keras with tensorflow backend. You can either use GPU for training or not. Just modify the code in *_FullTrainTest.py, line 12*, set the os environment variable equals to "" for not to use GPU.
Before running the training code, make sure that you have already done the feature extraction. If not, run the *CFP_Extraction.m* for generating the necessary files. Or you can also run the python version: *GenFeature.py*. But you have to write additional code for processing through all the dataset automatically. Also, you have to modify some path variables inside the *_FullTrainTest.py* file. Set it to your path where your files are.
The structure of CNN model is visualized as below:
![](figures/CNN_Model.png)
And the structure of DNN is just the last four layers of CNN.---
Below are transcription results:
- chpn-p15_ENSTDkAm
![](figures/ENSTDkAm_MUS_MAPS_MUS-chpn-p15_ENSTDkAm.png)- grieg_kobold_ENSTDkAm
![](figures/ENSTDkAm_MUS_MAPS_MUS-grieg_kobold_ENSTDkAm.png)The full testing result reported in the paper [here](https://drive.google.com/open?id=1semWG4RHFSFDoH21fzQzY-eY9e-wRT3WjG9MDkXmZiE).
Enjoy~