Analysis of Audio Using PCA SAMEER MESHRAM (M.S.) 1725972 VARUN RUPCHANDANI (M.S.) 1728011 VIDUR VIJ (M.S.) 1727990 June 4, 2018
CONTENTS Sound Waves - Basics Problem Statement / Proposed Algorithm Overview VMD and PCA Algorithm Implementation Results Conclusion i
SOUND WAVES - Basics A Sound waves are disturbances in space caused by vibration from a source. Usually represented in the form of a sinusoid: 𝑠 𝑡 =𝐴∗ 𝑠𝑖𝑛 2𝜋𝑓𝑡 + ∅ =𝐴∗𝑠𝑖𝑛 2𝜋 𝑇 𝑡+ ∅ Since analog signal A/D conversion is required for storage and processing Audible range for humans: 20 Hz to 20 kHz Fig : (A) Frequency and wavelength of a typical sound wave (F. Camastra et al 2015) 1
Algorithm for the proposed method PROBLEM STATEMENT Separation of two distinct audio sources from a single mixed audio signal Applications: Bio-medical signal processing, speech recognition, etc. A Fig : (A) Representation of individual and mixed sound signals Algorithm for the proposed method 1. Input observed signal x(t) 2. Apply VMD on x(t) to get n modes : M 1 , M 2 , - up to M n 3. Apply PCA on M 1 to M n to select m principal components : P 1 , P 2 ,- up to P m 4. Extracted sources : P 1 , P 2 ,- up to P m 2
VARIATIONAL MODE DECOMPOSITION (VMD) VMD decomposes a signal into a number of modes Each mode is band-limited about its center frequency It decomposes a real valued signal into a finite number of modes Principal components of these modes are selected to reconstruct the original signal. Fig : (A) VMD decomposition of noisy tri-harmonic. (a) The noisy input signal. (b)-(d) The three modes extracted by de-noising VMD, 3
PRINCIPAL COMPONENT ANALYSIS (PCA) Principal Component Analysis transforms the data into a new domain The new basis are perpendicular to each other The new basis of the data is along the direction of max variance (PC1) Data can be decomposed using eigenvalue decomposition of covariance matrix Or SVD of data matrix PC1 Fig : (A) Representation of the concept of PCA 4
ALGORITHM IMPLEMENTATION - I Signal Input: 𝑥 𝑡 = 𝑥 1 𝑡 + 𝑥 2 𝑡 Case 1 Case 2 𝑥 1 𝑡 =sin(3t) 𝑥 1 𝑡 ="Cymbals audio“ [3 - 5 kHz] 𝑥 𝟐 𝑡 =sin(7t) 𝑥 𝟐 𝑡 ="Bass Drum audio" [60 - 100 Hz] Matlab function(s): audioread() A B Fig : (A) Unmixed and mixed audio signal for case 1, (B) Unmixed and mixed audio signal for case 2 5
ALGORITHM IMPLEMENTATION - II Variational Mode Decomposition on : 𝑥 𝑡 = 𝑥 1 𝑡 + 𝑥 2 𝑡 Input 𝒙 𝑡 =sin 3t +sin(7t) 𝒙 𝑡 ="Cymbals + Bass Drums" Output Modes: M 1 , M 2 , - M n Matlab function(s): VMD() Principal Component Analysis on VMD Modes : M 1 , M 2 , - M n Input Modes of 𝒙 𝑡 Output Extracted Principal Components: P 1 , P 2 ,- P m Matlab function(s): pca() Signal Reconstruction: 𝐏𝐂𝐀 𝐫𝐞𝐜𝐨𝐧𝐬𝐭𝐫𝐮𝐜𝐭𝐢𝐨𝐧=𝐏𝐂 𝐬𝐜𝐨𝐫𝐞𝐬 × 𝐄𝐢𝐠𝐞𝐧𝐯𝐞𝐜𝐭𝐨𝐫𝐬 𝐓 +𝐌𝐞𝐚𝐧 6
RESULTS - Case 1 (Sinusoids) B Fig : (A) Unmixed audio signal 1 for case 1, (B) Unmixed audio signal 2 for case 1 7
RESULTS - Case 1 (Sinusoids) B Fig : (A) Spectrogram of unmixed audio signal 1 for case 1, (B) Spectrogram of unmixed audio signal 2 for case 1 8
RESULTS - Case 1 (Sinusoids) Comparison between original and separated signal For 𝒙 𝟏 𝒕 =𝐬𝐢𝐧(𝟑𝐭) Correlation coefficient 0.9872 Percentage error 6.3593 Root mean square error 0.0187 For 𝒙 𝟐 𝒕 =𝐬𝐢𝐧(𝟕𝐭) Correlation coefficient 0.9987 Percentage error 4.5866 Root mean square error 0.0053 9
RESULTS - Case 2 (Cymbals & Bass Drums) Fig : (A) Unmixed audio signal for cymbal, (B) Unmixed audio signal for bass drum 10
RESULTS - Case 2 (Cymbals & Bass Drums) Fig : (A) Spectrogram of unmixed audio signal for cymbal, (B) Spectrogram of unmixed audio signal for bass drum 11
RESULTS - Case 2 (Cymbals & Bass Drums) Comparison between original and separated signal For Cymbal Correlation coefficient 0.6794 Percentage error 43.9026 Root mean square error 0.1601 For Bass Drum Correlation coefficient 0.9988 Percentage error 16.4570 Root mean square error 0.0489 12
CONCLUSION Algorithm based on VMD & PCA was implemented for audio separation Mixture of pure sinusoids is separated very efficiently Instruments cymbal and bass drum are separated satisfactorily The algorithm has scope for further improvement 13
THE END Thank You! Questions?