<< Chapter < Page Chapter >> Page >
Theory for the Music Visualization project

Theory

Source separation:

A classical example for source separation is the "cocktail party problem", where a number of people talk simultaneously and one is trying to follow one of the discussions.

In our case, we deal with music instead of multiple people. Music is often composed of multiple instruments playing different notes at the same time. In order to separate these instruments, there exist many methods in signal processing which perform source separation , attempting to determine the different signals that make up the music.

Some of the most famous methods of source separation include Independent Component Analysis (ICA), Markov chains, and using Fast Fourier Transforms (FFTs). For this project we decided to focus on ICA instead of other methods to separate the sources, since it could be implemented in Matlab easily.

Ica algorithm:

Independent Component Analysis (ICA) takes a 0.5 second frame of the track, sliding this 0.5 second window along the entire song. It then separates this frame into 20 possible sources, determines 3 sources that are maximally independent, and returns those 3 sources. We then perform FFTs on these 3 sources and find the peaks from the resulting spectrums of the signals.

From these frequencies, we determine the peaks, take the two most dominat peaks per source, and create matrix containing the results from each frame.

If we see a note that lasts for more than 5 frames, we call it a note and visualize it. In the example above, we can see a constant note in low frequencies, this could be considered the bass line.

Our ICA algorithm is based off of JadeR algorithm, which was implemented in our Matlab code.

There are many factors we can change in our Matlab code, including:

  • Number of sources, though this lowers the height of peaks when we find the FFT.
  • Threshold for what we consider "peaks" in our FFTs
  • Number of frames necessary for a frequency to be considered a note.

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Music visualization using independent component analysis. OpenStax CNX. Dec 19, 2012 Download for free at http://cnx.org/content/col11473/1.1
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Music visualization using independent component analysis' conversation and receive update notifications?

Ask