互相关
R = xcorr(x,y)
R = xcorr(x)
R = xcorr(___maxlag)
R = xcorr(___scaleopt)
[r,滞后]= xcorr(___)
在不同位置的两个传感器测量汽车过桥时引起的振动。
加载信号和采样率,.创建时间向量并绘制信号。传感器2的信号比传感器1的信号到达的时间早。
负载sensorDatat1 =(0:长度(s1)-1)/Fs;t2 =(0:长度(s2)-1)/Fs;Subplot (2,1,1) plot(t1,s1)标题(“s_1”) subplot(2,1,2) subplot(t2,s2)“s_2”)包含(“时间(s)”)
当滞后等于延迟时,两个测量值的相互相关性最大。
绘制相互关系图。将延迟表示为以秒为单位的样本数。
[acor,lag] = xcorr(s2,s1);[~,I] = max(abs(acor));lagDiff =滞后(I)
lagDiff = -350
timeDiff = lagDiff/Fs
timeDiff = -0.0317
图图(滞后,acor) a3 = gca;a3。XTick = sort([-3000:1000:3000 lagDiff]);
对齐两个信号并重新绘制它们。延迟差加1,以说明MATLAB®使用的基于1的索引。
s1al = s1(-lagDiff+1:end);t1al =(0:长度(s1al)-1)/Fs;Subplot (2,1,1) Subplot (t1al,s1al)标题(“s_1、一致”) subplot(2,1,2) subplot(t2,s2)“s_2”)包含(“时间(s)”)
语音录音包括由墙壁反射引起的回声。使用自相关将其过滤掉。
在录音中,一个人说了MATLAB®这个词。加载数据和采样率,.
负载mtlb输入soundsc(mtlb,Fs)
通过向录音中添加延迟信号的副本来模拟回声样品经已知因素衰减:.指定时间延迟为0.23 s,衰减因子为0.5。
Timelag = 0.23;delta = round(Fs* timeelag);Alpha = 0.5;Orig = [mtlb; 0 (delta,1)];Echo = [0 (delta,1);mtlb]*alpha;mtEcho = orig + echo;
画出原始信号、回声和结果信号。
t = (0:length(mtEcho)-1)/Fs;Subplot (2,1,1) plot(t,[origin echo])“原始”,“回声”) subplot(2,1,2) plot(t,mtEcho)“总”)包含(“时间(s)”)
要收听,输入soundsc(mtEcho,Fs)
计算信号自相关的无偏估计。选择并绘制滞后大于零对应的部分。
[Rmm,滞后]= xcorr(mtEcho,“公正”);Rmm = Rmm(滞后>0);滞后=滞后(滞后>0);图(滞后/Fs,Rmm) xlabel(“滞后(s)”)
自相关在回波到达的滞后处有一个尖峰。通过IIR系统对信号进行滤波,消除回波。,遵循.
[~,dl] = findpeaks(Rmm,滞后,“MinPeakHeight”, 0.22);mtNew = filter(1,[1 0 (1,dl-1) alpha],mtEcho);
绘制滤波后的信号并与原始信号进行比较。
Subplot (2,1,1) plot(t, trans)图例(“原始”) subplot(2,1,2) plot(t,mtNew)“过滤”)包含(“时间(s)”)
要收听,输入soundsc(mtNew,Fs)
生成三个11样本指数序列,,,.使用stem3
并排绘制序列。
N = 11;n = (0: n -1)';A = 0.4;B = 0.7;C = 0.999;Xabc = [a];^nb.^n c.^n]; stem3(n,1:3,xabc',“填充”) ax = gca;斧子。YTick = 1:3;视图(37.5,30)
计算序列的自相关和相互交叉相关。输出滞后,这样您就不必跟踪它们。将结果归一化,使自相关在零滞后时具有单位值。
[cr,lgs] = xcorr(xabc,多项式系数的);为Row = 1:3为Col = 1:3 nm = 3*(行-1)+ Col;次要情节(3 3海里)茎(lgs cr(:,海里),“。”)标题(sprintf (“c_ {% d % d}’ylim([0 1])结束结束
限制计算之间的滞后而且.
[cr,lgs] = xcorr(xabc,5,多项式系数的);为Row = 1:3为Col = 1:3 nm = 3*(行-1)+ Col;次要情节(3 3海里)茎(lgs cr(:,海里),“。”)标题(sprintf (“c_ {% d % d}’ylim([0 1])结束结束
计算自相关和相互交叉相关的无偏估计。默认情况下,延迟在两者之间运行而且.
Cu = xcorr(xabc,“公正”);为Row = 1:3为Col = 1:3 nm = 3*(行-1)+ Col;次要情节(3 3海里)茎(- (n - 1): (n - 1)、铜(:,海里),“。”)标题(sprintf (“c_ {% d % d}’,行,坳))结束结束
计算28个样本指数序列的自相关函数,为.
A = 0.95;N = 28;n = 0: n -1;滞后= -(N-1):(N-1);X = a.^n;C = xcorr(x);
确定分析地检验结果的正确性。使用较大的抽样率来模拟连续的情况。序列的自相关函数为,,是
Fs = 10;nn = -(N-1):1/fs:(N-1);dd = (1-a.^(2*(N-abs(nn))))/(1-a^2).*a.^abs(nn);
在同一图形上绘制序列。
茎(滞后,c);持有在情节(nn, dd)包含(“滞后”)传说(“xcorr”,“分析”)举行从
重复计算,但现在找到一个无偏见的自相关的估计。验证无偏估计是由.
Cu = xcorr(x,“公正”);du = dd./(N-abs(nn));茎(滞后、铜);持有在情节(nn, du)包含(“滞后”)传说(“xcorr”,“分析”)举行从
重复计算,但现在找到一个有偏见的自相关的估计。验证偏差估计是由.
Cb = xcorr(x,“有偏见的”);db = dd/N;茎(滞后,cb);持有在情节(nn, db)包含(“滞后”)传说(“xcorr”,“分析”)举行从
找到自相关的估计值,其值在零滞后是统一的。
Cz = xcor (x,多项式系数的);Dz = dd/max(dd);茎(滞后、cz);持有在情节(nn, dz)包含(“滞后”)传说(“xcorr”,“分析”)举行从
计算并绘制两个16样本指数序列的相互相关性,而且,.
N = 16;n = 0: n -1;A = 0.84;B = 0.92;Xa = a.^n;Xb = b.^n;R = xcorr(xa,xb);茎(- (n - 1): (n - 1), r)
确定分析地检验结果的正确性。使用较大的抽样率来模拟连续的情况。序列的互相关函数而且为,,是
Fs = 10;nn = -(N-1):1/fs:(N-1);cn = (1 - (a*b).^(N-abs(nn)))/(1 -a *b). *...(a.^nn.*(nn>0) + (nn==0) + b.^-(nn).*(nn<0));
在同一图形上绘制序列。
持有在情节(nn, cn)包含(“滞后”)传说(“xcorr”,“分析”)
验证切换操作数的顺序是否颠倒了顺序。
图干(-(N-1):(N-1),xcorr(xb,xa))保持不变在茎(- (n - 1): (n - 1), fliplr (r),”——*’)包含(“滞后”)传说(“xcorr (x_b x_a)”,“fliplr (xcorr (x_a x_b))”)
生成20个样本的指数序列.计算并绘制其与的交叉相关性而且.输出滞后,使绘图更容易。xcorr
在较短序列的末尾追加0,以匹配较长序列的长度。
Xc = 0.77.^(0:20-1);[xca,la] = xcorr(xa,xc);[xcb,lb] = xcorr(xb,xc);图(2,1,1)子图(2,1,2)茎(la,xca)子图(2,1,2)茎(lb,xcb) xlabel(“滞后”)
此示例需要并行计算工具箱™软件和支持cuda的NVIDIA GPU,具有1.3或以上的计算能力。看到GPU系统要求获取详细信息。
创建一个包含10hz正弦波的附加噪声信号,以1khz采样。使用gpuArray
要创建gpuArray
对象存储在计算机的GPU上。
T = 0:0.001:10-0.001;X = cos(2* *10*t) + randn(size(t));X = gpuArray(X);
计算规范化自相关序列滞后200。
[xc,滞后]= xcorr(X,200,多项式系数的);
输出,xc
,是一个gpuArray
对象。
使用收集
将数据从GPU传输到MATLAB®作为双精度矢量的工作空间。
Xc = gather(Xc);
x
- - - - - -输入数组gpuArray
对象y
- - - - - -输入数组gpuArray
对象输入数组,指定为向量或gpuArray
对象。
数据类型:单
|双
复数支持:万博1manbetx是的
的结果xcorr
可以解释为两个随机序列之间的相关性的估计或两个确定性信号之间的确定性相关性。
两个联合平稳随机过程的真互相关序列,xn而且yn,由
在哪里−∞<n<∞,星号表示复数共轭,和E是期望值算子。xcorr
只能估计序列,因为在实践中,只有一个无限长随机过程的实现的有限段是可用的。
默认情况下,xcorr
计算未归一化的原始相关性:
输出向量,c
的元素
一般来说,相关函数需要归一化来产生准确的估计。您可以使用input参数来控制相关性的规范化scaleopt
.
[1]巴克,约翰R,迈克尔m丹尼尔,安德鲁c辛格。信号与系统的计算机探索用MATLAB。第二版。上马鞍河,新泽西州:Prentice Hall, 2002。
Stoica, Petre和Randolph Moses。信号的光谱分析。上马鞍河,新泽西州:Prentice Hall, 2005。
使用注意事项和限制:
领先的大小(x)
对每个输入都必须是常数x
.如果x
是可变大小的,是行向量,它必须是1 × -:
.这不可能:
——- - - - - -:
与大小(x, 1)
运行时= 1。
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入该命令来运行该命令。Web浏览器不支持MATLAB命令。万博1manbetx
您也可以从以下列表中选择一个网站:
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。