自相关互相关
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一.互相关cross-correlation与自相关 auto-correlation
仔细翻阅资料后,自相关的定义如下:
应用于离散数字信号处理中,在matlab里面描述如下:xcorr表示对于x和y两个随机序列求出互相关估计
The output vector c has elements given by c(m) = cxy(m-N), m=1, ...,
2N-1
实验如下:
>> a=[1 2 3 4];b=[1 j 2 j];
>> c=xcorr(a,b);
>> c
c =
Columns 1 through 6
-0.0000 - 1.0000i 2.0000 - 2.0000i 4.0000 - 4.0000i 7.0000 - 6.0000i 10.0000 - 3.0000i 3.0000 - 4.0000i
Column 7
4.0000 + 0.0000i
其中当上面式子中的m=0时,即c(4),这里c长度为6,表示Rxy(n)从n=-3:0:3.经过xcorr函数运算得到的c长度为2*N-1,例子中N=4;
因此得到c(4)= Rxy(0)= 1-2j+6-4j=7-6j;这里就比较清楚互相关的计算了,实际的物理意义就使用积分标量来表示两个序列之间的相似程度度。可以翻阅随机过程.
那么,对于序列x的自相关,R_coeff=xcorr(x,'coeff');
等效于:R=xcorr(x,x); R_coeff = 1/max(R) * R;因为是自身和自身的相关,因此其中max(R)一定是R(N),m=0的情况下,即此时相关序列无延迟
二.自相关矩阵
对于一个有限长度的随机序列,知道了其Rxx的估计后.自相关矩阵定义如下:
n*n的方阵。它的主对角线上都是R(0),主对角线旁边两个是R(1),然后再旁边两个是R(2),等等,最右上角和最左下角是R(N)。在上面的式子中
R(m)=[x(n)*x(n+m)]/n,m=0,1,2,....,n。
即Rij = Rxx(i-j) = Rxx(j-i) = Rji;
在信号处理中,具体的关于上面的数字信号概念讨论见:
/archiver/?tid-400394.html
三.相关性的具体应用
最后,附上一个高斯噪声进行估计信噪比的程序.来作为具体的相关矩阵应用的例子.下面的程序只是对于信号功率具有固定的幅度的信号做的,也就是恒包罗.不适合16QAM等非恒包罗的调幅信号.如果需要做非恒包罗的SNR估计,具体参考非恒包罗的AGWN的SNR计算方法.
amp_e = SNR_Estimate(ComplexSignal)
yn=real(ComplexSignal);
c=xcorr(yn,'coeff');
len=length(ComplexSignal);
m=100;
rk = c(len:len+m-1);
Rxx = zeros(m,m);
Rxx(1,:)=rk;
Rxx(m,:)=fliplr(rk);
for i=2:m-1
if i>1
Rxx(i,:)=[fliplr(rk(2:i)),rk(1:m-i+1)];
end
end
[U,S,V]=svd(Rxx);
for i=1:m
s_x(i) = S(i,i);
end
s_xd = s_x(2:m)-s_x(1:m-1);
s_xd (60:80);
for i =1:m-1
if abs(s_xd(i))<0.1 &abs(s_xd(i+1))<0.1
p = i-1;
break;
end
noise_p = 1/(m-p)*sum(s_x(p+1:m));
SNR = 10*log10((sum(s_x(1:p))-p*noise_p)/(m*noise_p);
amp_e = SNR;
最后估计得到的误差CDF如下图,其中可以看到65%估计到的SNR与真实的相
差1DB
3.自相关/互相关:是指信号之间的相似程度吗?那么在时间轴上,又代表了信号的什么特性呢?
互相关指2个信号之间的相似程度,时间轴表示“挪”了多少的“距离”,比如一个信号不动,另一个以起点开始“错动”,“挪”到某点时,两个信号的相似程度在函数值上体现,而“挪动”的“距离”在时间轴上体现。
自相关表示信号的周期性——自相关极值点间的距离就是周期;对于随机信号,自相关表示该信号的变化快慢——如果自相关函数平滑,说明变化慢;