matlab中c = xcorr(x,y,maxlags,'option') 与c = xcorr(y,x,maxlags,'option') 运算结果不一样

matlab中c=xcorr(x,y,maxlags,'option')与c=xcorr(y,x,maxlags,'option')运算结果不一样,c分别代表什么意思?... matlab中c = xcorr(x,y,maxlags,'option') 与c = xcorr(y,x,maxlags,'option') 运算结果不一样,c分别代表什么意思? 展开
 我来答
雨扬振1238
2013-07-26 · TA获得超过2782个赞
知道小有建树答主
回答量:586
采纳率:100%
帮助的人:1045万
展开全部
结果其实是一样的,只是倒转了结果的排列顺序。

c代表互相关,如果option选coeff, c就是互相关系数。
c = xcorr(x,y,maxlags,'option')是保留x的相位,平移y。而c = xcorr(y,x,maxlags,'option')是保留y的相位,平移x。因为对x平移-k个单位等同与对y平移k个单位,所以这两个c其实表达了同样的结果。只是结果的顺序倒置了。如果你想验证这个,可以将用fliplr(c)将第二个c的顺序倒转回来,结果和第一个c应该是一样的。
由此可知,如果maxlags=0,这两个c也会是一样的。
更多追问追答
追问
这个我验证过,x,y颠倒位置,结果一正一负,关键是我要用这个相关提取时差。如果是c = xcorr(x,y,maxlags,'option'),,t=(find(c==max(c))-lag)/fs;这样提取的时差是x-y的时差,还是y-x的时差?
追答
你的意思是求出来的t是一正一负吗?lag和fs是什么?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式