1 / 6

Extraction of Individual Tracks from Polyphonic Music

This project explores source separation techniques to extract individual tracks from polyphonic music. It covers various methods, including Independent Component Analysis (ICA), Principal Components Analysis (PCA), and Independent Subspace Analysis (ISA). The project utilizes C programming language with the help of GNU Scientific Library (GSL) and Mathematia. Challenges include handling audio formats, complex Fourier transforms, and developing more general classification techniques.

rbarnett
Download Presentation

Extraction of Individual Tracks from Polyphonic Music

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Extraction of Individual Tracks from Polyphonic Music Nick Starr

  2. Introduction • Source Separation - general technique and field of research. • Applications - Magnetic Imaging in Medicine                        - "Cocktail" problem in audio analysis • Techniques - *Independent Component Analysis (ICA)*                       - Principal Components Analysis (PCA)                       - Independent Subspace Analysis (ISA)

  3. Mathematical Background (summaries) 1. Matrix concepts and vocabulary 2. Short Time Fourier Transforms 3. Singular Value Decomposition 4. Source Separation

  4. Technology Used • C programming language, gcc, make: the bulk of the code. • GNU Scientific Library (GSL): implementations of computationally intensive/complex mathematical routines • Mathematica: simple testing of said complex mathematical routines, possibly even code if needed - interface with C?

  5. Decomposition • STFT to send data to spectral domain • SVD and other matrix operations to put data in usable form • ICA to reduce complex signal to individual components • Inverse STFT to send components back to time domain Classification • Put the separated components into different categories for recombination • Methods: Amplitude envelopes, machine learning? Algorithm Description

  6. Challenges • Input: no useful libraries for decompressing most audio formats. Uncompressed WAV is the only practical option. • Fourier Transforms: very complicated mathematically, many personal conventions involved in implementations which are often not clearly specified. • GSL: lots of functionality, not much usability - who names their matrix multiplication method gsl_blas_dgemm()? • Classification: how to develop more general classification techniques?

More Related