计算相关函数和协方差的MATLAB函数
MATLAB信号处理工具箱提供了计算随机信号相关函数xcorr。
函数xcorr用于计算随机序列自相关和互相关函数。调用格式为:
[c,lags]=xcorr(x,y[,maxlags,’option’])
式中,x,y为两个独立的随机信号序列,长度均为N;c为x,y的互相关估计;lags为相关估计c的序号向量,其范围为[-maxlags:maxlags]。
option缺省或’none’时,函数xcorr按下式执行非归一化的相关:
(9-23)
上角加星号的变量表示其共轭。
option为’biased’,计算有偏互相关函数估计
(9-24)
option为’unbiased’,计算无偏互相关函数估计
(9-25)
option为’coeff’,序列归一化,使零延迟的自相关函数为1。
maxlags为x和y的最大延迟,该项缺省时,函数返回值c的长度为2N-1;该项不缺省时,函数返回值c的长度为2*maxlags+1。
该函数也可用于求一个随机信号序列x(n)的自相关函数,调用格式为:
c=xcorr(x,maxlags)
其中不太明白的是为什么有一个偏移,因为互协方差的定义为:
Rxy(m)=E[x(n)y(n+m)]=lim1/N(∑x(n)y(m+n));
Cxy(m)=E{[x(n)-μx][y(n+m)-μy]}=Rxy-μxμy;