看上去语法也不难,直接运算不就好了么?可是运算出来的结果自己却搞不懂,因为自己没有多少统计的知识,于是又去巴拉数学的材料,想去搞明白xcorr函数的原理或公式。最后还是去matlab论坛找到了自己想找的答案,这里就来分析下matlab的互相关函数xcorr。
matlab中的参数都是以数组的形式存储的,标量可以看作是一维数组。我们采用序列x = [1, 3, 5]作为实验对象,经过xcorr()函数运算,分析结果:

  1. xcorr()
  2. x = [1 3 5]

x =

 1 3 5

[a,b] = xcorr(x)

a =

 5 18 35 18 5

b =

-2 -1 0 1 2

也许你对这个结果感到困惑,不急,待我慢慢道来。计算时先进行b的计算,用序列x中的元素的序号互相做减法,可以得到的所有值的可能集合,按照从小到大顺序排列后就得到了b;然后分别根据序号的“差”的情况计算序列a:
当b(1)=-2时,只有数据(1, 5)作差可以得到,即序号1和序号3的差,因此计算a(1)=15=5;
当b(2)=-1时,涉及到了序号对应的(3, 1)和序号(5, 3),所以计算a(2)=3
1+53=18;
当b(3)=0时,涉及到了序号对应的(1, 1), (3, 3)和(5, 5),因此计算a(3)=1
1+33+55=35;
当b(4)=1时,涉及到了序号对应的(3, 1)和(5, 3),计算a(4)=31+53=18;
当b(5)=2时,涉及到了序号对应的(5, 1)(后面的数据的序号减去前面数据的序号正好为2),计算a(5)=5*1=5

  1. xcorr(x, ‘unbiased’)
    参数’unbiased’的作用在于基于缺省参数时的计算结果,每个组的计算再除上该组的序号组数,比如b(1)时组数为1,记为N=1,则a(1)=1*5/N=5;b(2)时就是a(2)=18/N=18/2=9;类似等等;
  2. xcorr(x, ‘biased’)
    参数’biased’的作用在于缺省参数的基础上除以序列x的长度,即a(1)=5/3;比如:
  3. xcorr(x, ‘coeff’)
    此时用于求序列x的自相关序列,其结果是针对’biased’的情况进行归一化,使得b=0时即中间的值a(3)=1,因此a(1)=5/11.6667,所有的分组数据在’biased’基础上都通过11.6667归一运算:
    由于xcorr多用于工程上针对时间信号采样,但是计算时将采集到的数据一起送给matlab,因此matlab本身并不知道时间间隔,我们可以使用dt=0.1, t=b*dt,plot(t, a)进行作图,前半部分是超前,后半部分是滞后,如:

Matlab的自相关函数corr相关推荐

  1. 皮尔逊相关分析的MATLAB实现,corr(),corrcoef()函数使用

    皮尔逊相关系数可以用来表述两个序列的相关性. 常常用来做数据分析.数据挖掘等工作. 如何简单快捷的实现皮尔逊相关,并得到结果? 需要应用MATLAB中的corr(X, Y)或者 corrcoef(X, ...

  2. matlab中的脚本与函数、自相关函数corr,xcorr,corrcoef的应用

    1.脚本文件,MATALAB中都是按照文件中所输入的指令执行的,主要特点如下: 1>文件只是一串按照用户意愿排列的MATLAB指令合集: 2>脚本文件运行后,其运算过程所产生的变量都自动保 ...

  3. 自相关法基音提取的matlab程序,自相关函数法基音检测matlab程序

    自相关函数法基音检测matlab程序 AudioFilename = 'shiyan1.wav'; FrameShift = 0.012; %(s) FrameLength = 0.024; %(s) ...

  4. matlab中自相关函数

    点击打开链接 有时候编程会为了一点小问题纠结半天.而这时就会发现网上寻找也是很艰难的,所以我写下来,希望帮助和我一样无助的人. 自相关函数用于描绘信号和自己相关的程度,它是信号间隔的函数.比如间隔为0 ...

  5. matlab信号自相关函数,正弦波与其他信号自相关函数的matlab实现

    n=0:499; x=sin(0.1*n*pi);%产生正弦波 s=-2+4*rand(1,length(x));%产生随机噪声 X=x+s; [b,a]=xcorr(x); [d,e]=xcorr( ...

  6. matlab lpc函数 c语言,lpc中matlab解自相关函数

    function [aCoeff, tcount_of_aCoeff, e] = func_lev_durb (y, M);%莱文逊-杜宾递推算法 %M=how much, how much orde ...

  7. 【20220623】【信号处理】深入理解Pearson相关系数和Matlab corr()、corrcoef()仿真

    目录 一.定义 二.特性 三.适用条件 四.Matlab 仿真 1. 时间序列 2. 矩阵 一.定义 相关系数(correlation of coefficient)是统计学中的概念,是由统计学家卡尔 ...

  8. 基音检测 matlab,基于MATLAB基音检测分析.doc

    基于MATLAB基音检测分析 基于MATLAB基音检测分析 摘要:基音检测作为语音信号处理的重要手段,被广泛地应用于语音的合成.编码及识别等一系列语音信号处理技术问题.基音检测的准确性对于要求极高的语 ...

  9. matlab xcorr lags,[转载]matlab中xcorr的用法

    Matlab中用于计算自相关函数的指令是xcorr.比如矩阵A=[1 2 3]; xcorr(A)=3.0000 8.0000 14.0000 8.0000 3.0000 自相关函数是信号间隔的函数, ...

  10. 自相关与互相关在matlab中实现

    之前要做一个图像匹配的灰度投影算法,要用到互相关函数,matlab真是好啊,一个函数搞掂,只要弄清楚参数意义就可以了,先转载在网上搜到的吧 ****************************** ...

最新文章

  1. TOJ 3750: 二分查找
  2. 饮冰三年-人工智能-Python-29瀑布流
  3. 骚操作!昨晚停网,我写了一段Python代码破解了隔壁小姐姐的wifi密码...
  4. header python 环境信息_【关于header信息的构造】Python模拟登录出现乱码
  5. Spark OpenHashMap分析
  6. 新手如何从零开始入门前端开发,分享我的学习方法!
  7. 25 个 Vue 技巧,开发了 5 年了,才知道还能这么用
  8. 9.RabbitMQ实战 --- 使用REST API控制Rabbit
  9. linux下 根目录扩展
  10. springMVC中415错误
  11. 深入学习Spring IOC和AOP 实例代码
  12. !function(){}() 什么意思
  13. Android安装App出现:“该文件包与具有同一名称的现有文件包存在冲突”的解决方法
  14. 图文详解!10大高性能开发核心技术+
  15. 马贼——选自《萌芽》王若虚
  16. 夕颜的python笔记003
  17. amd电脑安装Android失败,AMD显卡驱动安装失败
  18. Mysql数据库导入excel和乱码问题
  19. C++与C语言02 结构体区别
  20. iOS沙盒目录中 Documents Library tmp的作用和区别

热门文章

  1. 2021信息安全工程师学习笔记(二十四)
  2. 车辆颜色分类网络—BeerNet
  3. 我要考华为认证,需不需要培训呢?
  4. 共享服务器文件溢出,文件共享锁定数溢出
  5. Android WIFI连接开发 WIFI工具类
  6. 关于DCMM评估模型的全面解析
  7. 深度学习视觉目标跟踪算法毕业论文【matlab】
  8. ArcGIS Engine打开文件地理数据库
  9. 航空公司客户价值分析
  10. python读取xml文件并修改_如何在Python中解析和修改XML?