- #1
karnick
- 1
- 0
OK. Going to try to explain the background on this one the best I can. I have two data sets which are mixtures of TWO signals, but are both different (Think of it as two people in a room talking at the same time and there are two different microphones listening to what they are saying).
Lets call the signals a and b, and Let's call the mixtures X1 and X2. There is a process called ICA (Independent Component Analaysis) which will extract a and b from X1 and X2. Cool right? yeah. Not so cool.
The way the algorithm works is you input a matrix with a and b inside (so let's say a 2x100). You run it through the algorithm (which in my case happens to be in MATLAB) and the output is generated in a matrix, but you NEVER can predict which row of the matrix will be a and which will be b. If i was dealing with audio signals, then id be able to listen to them and figure it out. But, I am dealing with EEG signals (brain waves) so I barely know what I am lookin at. Therefore, I am currently trying to categorize the outputs from the ICA algorithm by the average energy in the signals. Well there's one more problem. During the ICA process, the output signals are sometimes inverted or amplified. Usually it behaves the same every time on the same data set, but if you give it slightly different data, it will maybe amplify more or less or even invert the data.
So the main problem is, I need a way to consistently categorize a from b. Avg Energy/power doesn't seem to be helpful since the signals are sometimes amplified or inverted after separation. Unless there is some way I can normalize the data before/after but I can't think of anything.
Thanks in advance
Lets call the signals a and b, and Let's call the mixtures X1 and X2. There is a process called ICA (Independent Component Analaysis) which will extract a and b from X1 and X2. Cool right? yeah. Not so cool.
The way the algorithm works is you input a matrix with a and b inside (so let's say a 2x100). You run it through the algorithm (which in my case happens to be in MATLAB) and the output is generated in a matrix, but you NEVER can predict which row of the matrix will be a and which will be b. If i was dealing with audio signals, then id be able to listen to them and figure it out. But, I am dealing with EEG signals (brain waves) so I barely know what I am lookin at. Therefore, I am currently trying to categorize the outputs from the ICA algorithm by the average energy in the signals. Well there's one more problem. During the ICA process, the output signals are sometimes inverted or amplified. Usually it behaves the same every time on the same data set, but if you give it slightly different data, it will maybe amplify more or less or even invert the data.
So the main problem is, I need a way to consistently categorize a from b. Avg Energy/power doesn't seem to be helpful since the signals are sometimes amplified or inverted after separation. Unless there is some way I can normalize the data before/after but I can't think of anything.
Thanks in advance