The goal of this project is to separate three different instruments, namely guitar, cello and piano. The minimal goal is to train a Machine Learning algorithm with a moderate number of training samples in order to build a mathematical decision boundary to distinguish those three instruments. Certainly, the solution is supposed to be extensible in a way that without a lot of effort further instruments can be recognized. In the beginning the algorithm is trained by a tone with a frequency of 440Hz.
The point of the separating approach is to extract the ratio between the recorded frequency(440Hz) and all peaks of further resonating frequencies. The training is done by a classical SVM algorithm. A long-distance goal would be to develop a more robust system which can be relevant to various frequencies and to train the system with more instruments.
To get the code: git clone git:git.code.sf.net/p/instrumentrecog/code instrumentrecog-code