Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

calculation of signal to noise ratio in ECG using independent component analysis

Status
Not open for further replies.

dikty

Newbie level 6
Joined
Aug 19, 2010
Messages
11
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Location
Manchester , UK
Activity points
1,351
hi i want to calculate SNR of ECG two lead data , after seperating the independent components , using ICA algorithms FastICA
but the source signal and independent component are both having different amplitude , how can i calculate SNR of that , i used matlab program for that and used the formula

S = source signal
Y = independent component (assumed to be pure signal)

noise = S - Y;
but S and Y have different amplitudes.

SNR = 10 * log10 (var(source)/var(noise));

but it give me negative value which is i thing not desirable , i tried to make both matrices value in range of 0 - 1 but still no help.
 

Hi,
When you use ICA to extract the independent components from signal mixture, you will loose information on amplitude as well as phase scale. In your steps I think one trick will do the stuff for you.

Before doing : noise = S-Y,
do this step => gain=S/Y
then do noise = S- (gain*Y)

, then rest steps are fine.

I think this will sort out your problem.

Cheers
 

Hello , thanks for ur advise , i did that and i got all the noise in negative will all ICA algorithms , do u think we can ignore negative sign and just consider amplitude , will that make sense.
please advise
 

Hi,

Noise is an absolute quantity, so ignoring the negative sign will be fine.
 
  • Like
Reactions: dikty

    dikty

    Points: 2
    Helpful Answer Positive Rating
Hello aka,
since you have interest in biosignals , and ECG , can you advise me about ECG application , what i am doing currently , is searching the potential of applying independent component analysis to search for artificats in ECG , this area is already worked on , so can you advise me some tip which i can work on for my thesis so it has some novelty.

thanks for all ur help
 

Hi,

The main application of ECG signal is clinical diagnosis as you know. Independent Component Analysis is a very interesting machine learning algorithm for blind source separation. As in your project it can be used for artifact removal from signals.
With ECG signals , what I feel is that, the kind of noise that would appear in them is mainly electronic noise like 50 Hz AC line. And for ECG analysis we are particularly interested to see the complexes ( PQRS) for its analysis. To remove high frequency noises or any other kind of noises what I feel is that , ICA algorithm is actually not cost effective . ECG signals are not that complex. Because you have the PQRS complex defined in a standard scale and any kind of deviation from that standard would mean the ECG of that person is defective or he has some illness. ICA is a higly computationally expensive algorithm. With ECG signals only having limited number of sources , you cannot actually feel its intensity ( the time needed for computation). Normal filtering methods based on Fourier theory and even wavelets are computationally less intensive and can do the same job very easily. This is just my thought on using ICA on ECG signals.

Well about your work, the attempt to use ICA is very good. You have used it to remove the noise from ECG signals as I understand. Have you looked on the nature of the noise being removed ? One interesting you could do is using the independent components see if you could remove the baseline drift of the ecg signal ( even though you have more easier methods that ICA).
Another thing you can try out is to separately extract the different complexes (PQRS ) of the ecg, as they are also some kind of independent components . Because the P , Q , R & S are all triggered from different points of the heart itself.

So you can try somethings like this I suppose, the rest depends on you creativity.

Cheers
 

Hi , Aka

I was wondering whether there is something as simulated ECG signal , there are some software which can do single channel , but since iam using ICA i need at least two or more channel , i saw some software for EEG generation , but can't find same for ECG multi channel , can you help me in this regard ,
so with simulated ECG i can compare the mixture and independencomponent more easily and do some other analysis as well.

Thanks
 

Hi,

Well at the first place , how did you do ICA with ECG. How many channels and from where did you use.

Usually you get ECG data of a single channel. In practise ECG recorders have about 6 electrodes excluding the reference electrodes placed on the chest for recording ECG. So one solution is to use data from these multiple electrodes,if available, for ICA decomposition.

Simulated ECG is not still perfect. You can goto Matlab Central Website and find matlab codes to generate ECG signal. But still to make it continuous, you have do your on coding. I don't think simulated ECG signals would help in a good analysis.

Cheers
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top