有时候编程会为了一点小问题纠结半天。而这时就会发现网上寻找也是很艰难的,所以我写下来,希望帮助和我一样无助的人。
自相关函数用于描绘信号和自己相关的程度,它是信号间隔的函数。比如间隔为0的时候,就是检查自己和自己相关的程度,由于自己和自己最相似,所以自相关函数最大。如果是周期信号,当时间间隔为周期的整数倍的时候,也达到峰值。
Matlab中用于计算自相关函数的指令是xcorr.比如矩阵A=[1 2 3];
xcorr(A)=3.0000 8.0000 14.0000 8.0000 3.0000
高潮到来了,为啥得到这个结果呢?昨天晚上,我研究了一晚上。在网上狂搜。狂看概率书,在群里狂问。最后搞清楚了。
自相关函数是信号间隔的函数,间隔有正负间隔,所以n个长度的信号,有2n-1个自相关函数值,分别描述的是不同信号间隔的相似程度。
比如,上面的矩阵,最后得到5个结果,其中第三个是自己和自己相乘,最后相加的结果,值最大1*1+2*2+3*3=14。而第二个和第四个分别是间隔正负1的结果也就是1*2+2*3=8,2*1+3*2=8。第1个和第五个分别是间隔正负2,也就是1*3=3,3*1=3。