220 likes | 370 Vues
This document provides an in-depth overview of Independent Component Analysis (ICA), a mathematical technique for extracting hidden parameters from random variables or signals. It outlines the fundamentals of ICA, its applications across various fields such as radar, medical ultrasonography, and telecommunications, and discusses algorithm implementation. The paper emphasizes the importance of statistical independence of sources and explores the practical performance of ICA in real-time scenarios, highlighting its capabilities and constraints in various tests.
E N D
REAL-TIME INDEPENDENT COMPONENT ANALYSIS IMPLEMENTATION AND APPLICATIONS By MARCOS DE AZAMBUJA TURQUETI turqueti@fnal.gov FERMILAB May 2010 RTC 2010
What is it? • Independent component analysis or ICA is a mathematical technique used for extracting hidden parameters that underlie in sets of random variables or signals. • ICA is a type of blind source separation method and common inputs sources are signals originated from audio, images or telecommunications. RTC 2010
ICA Applications • A wide variety of systems can make use of ICA algorithms; RADAR CCD signal processing SONAR PIXEL detectors Medical ultrasonography Positron Emissions Scan machines RTC 2010
Assumptions • This technique is based on the assumption that signals from different sources are statistically independent and non-Gaussian. • At most one signal can be Gaussian otherwise this technique does not work. • Information about magnitude of the signal is lost. • ICA can provide redundant outputs. RTC 2010
Algorithm implementation Application Preprocessing High pass filter make input variables zero mean Centering cov( X Y )= I Whitening ICA Preprocessing Compute weight vector X= WTY ICA Algorithm J (Y) = H(Ygauss) - H(Y) Measure Gaussianity differential entropy (negentropy) Converged? No Dn= J(yn)-J(yn-1) Yes population correlation coefficient Correlation filter Post Processing Algorithm Redundancy Elimination sample correlation coefficient RTC 2010
Algorithm simulation M1 M2 A B Linear combination RTC 2010
Whitening of the signal (decorrelating) Joint probability distribution of the mix signals before and after whitening. Mix signals cov( X Y )= I RTC 2010
CAPTAN Network Compatible Hardware Joint probability distribution of the whiten signal and ICA output. X= WTY J (Y) = H(Ygauss) - H(Y) Minimizing Gaussianity by rotating the axis and using Negentrophy to have a indication of Gaussianity. RTC 2010
Recovered signal Original signal Recovered signal RTC 2010
Hardware platform for ICA implementation • Due to the large number of operations involving arrays this algorithm is proper to be implemented by multi-core vectorial processors. • FPGA’s are also specially suitable due to flexibility and parallelism capabilities. • On this work parallel FPGA’s are being used as hardware platform for the algorithm implementation. CAPTAN System (FERMILAB) Sensor Array RTC 2010
Implementation constrains • In order for the algorithm to converge fast a maximum number of interactions to maximize the non-Gaussianity is allowed; • This maximum number of interactions depends on several factors such as: • The system speed; • Type of signals being input into the algorithm; • Number of mixed sources; • Amount of noise on the system; (Gaussian source) RTC 2010
Real-time application example • Source separation can be used in many different applications such as: • Video conference • Cell phones • Sonar • Medical RTC 2010
Test I - Four Sine Waves Test RTC 2010
Test I - Results Two microphones fastICA results: Four microphones fastICA/ AIIA results: Four microphones fastICA results: RTC 2010
Test I - Results Fast ICA algorithm results: AIIA algorithm results: RTC 2010
Test II – Pelican x Chicken RTC 2010
Test II - Results Signals after fastICA (8 microphones): Signals after fastICA (12 microphones): Mix signals before fastICA: Signals after fastICA: RTC 2010
Test III – AK47 x Turbine Red – configuration 1 Green – configuration 2 (0.5 s delay) (A) (B) (A) (B) RTC 2010
Test III – Recovered Signals AK47 fastICA/AIIA Configuration 1 Turbine AK47 fastICA/AIIA Configuration 2 Turbine RTC 2010
Conclusion • This work shows that it is possible to use the ICA algorithm on real-time applications; • It also demonstrates the capabilities of the algorithm as well as its limitations; • Currently the algorithm is being implemented for applications that demand faster convergence time. RTC 2010
Thank you! RTC 2010