MATLAB中xcorr函数用法解析
xcorr是用于求解序列自相关和互相关的函数,通过help命令可以调出其具体说明,MATLAB中提供的几种用法如下:
c = xcorr(x,y)
c = xcorr(x)
c = xcorr(x,y,'option')
c = xcorr(x,'option')
c = xcorr(x,y,maxlags)
c = xcorr(x,maxlags)
c = xcorr(x,y,maxlags,'option')
c = xcorr(x,maxlags,'option')
[c,lags] = xcorr(...)
这里只简单的举几个例子作分析,注:这里只分析线性卷积和线性相关,至于圆周卷积和圆周相关不做介绍(其涉及到圆周移位,主要用于周期序列)。
其实说到相关,我们很容易想到卷积,回顾下线性卷积的几个主要步骤
1.翻褶-2移位-3相乘-4相加(积分)
再回顾下线性相关的步骤,很容易分辨两者的共同点和不同点
1.移位(左移右移)-2相乘-3.相加
很明显,线性相关的步骤相比于线性卷积而言,只是少了翻褶这一步骤
(1)我们举例自相关用法:
a=xcorr([1 2 3],[1 2 3])
a =
3 8 14 8 3
这句语句是求解序列[1 2 3]的自相关输出,在MATLAB中式如何算的呢,下面分析
原序列 1 2 3---左右移位得到
1 2 3
1 2 3 =1x1+2x2+3x3=14
1 2 3 =2x1+3x2=8
1 2 3 =3x1=3
8 =1x2+2x3= 1 2 3
3=1x3= 1 2 3
这样一分析就很好理解了,至于互相关,操作过程和上面是一样的,但是需要注意的是,当个2个序列的长度不一样时,
MATLAB会将较短的序列补0操作,补至和较长序列一样的长度,其实这和理论上的操作也是一致的。
标签:
matlab
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】