adaptive filtering by using uncorrelativity feature
7 次查看(过去 30 天)
显示 更早的评论
Hi every body..... I have three signals , two of them are supposed to be correlated , while the the third is supposed to be uncorrelated with the first two signals , as I know that for two signals to be uncorrelated , their mean values should be zero, am I wrong? there is a program in matlab help that perform adaptive filtering on ECG signal to extract fetal ECG , but I tried to measure the correlativity between them I found that it does not match what I know about the principle of correlation , please help me to understand that principle....thank you for your patience....
0 个评论
采纳的回答
Greg Heath
2012-8-23
编辑:Greg Heath
2012-8-23
The cross correlation function of two signals is calculated using the zero-mean/unit-variance zscores. Therefore it is invariant w.r.t. changes in means and standard deviations.
Although the functions XCORR, CROSSCORR and NNCORR automatically calculate the zscores, the zscores must be explicitly calculated when obtaining the cross correlation using FFT.
Hope this helps.
Greg
0 个评论
更多回答(1 个)
Stephen
2012-5-21
you can get the signal mean to zero by subtracting the original mean. then divide by the variance, to make the variance effectively 1. you can use corr() or crosscorr() to get some sort of answer related to the degree of correlation then. for signals that are correlated, it means that there is some sort of dependence of one signal on the other, so if one increases, the other will either also increase or decrease. if one changed while the other stayed constant, that would be less correlated, but I'm no expert at this, you should read more to get a good idea.
2 个评论
Greg Heath
2013-10-9
No. Correlation depends on the shape of the function the auto and cross correlations of the following functions should be identical
1. x and y
2. u and v
u = A*x + b
v = C*y + d
Hope this helps.
Greg
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!