matlab做互相关分析,自相关与互相关在matlab中实现_互相关在matlab中实现
1. 首先说说自相关和互相关的概念。
这个是信号分析里的概念,他们分别表示的是两个时间序列之间和同一个时间序列在任意两个不同时刻的取值之间的相关程度,即互相关函数是描述随机信号x(t),y(t)在任意两个不同时刻t1,t2的取值之间的相关程度,自相关函数是描述随机信号x(t)在任意两个不同时刻t1,t2的取值之间的相关程度。
自相关函数是描述随机信号X(t)在任意两个不同时刻t1,t2的取值之间的相关程度;互相关函数给出了在频域内两个信号是否相关的一个
判断指标,把两测点之间信号的互谱与各自的自谱联系了起来。它能用来确定输出信号有多大程度来自输入信号,对修正测量中接入噪声源而产生
的误差非常有效.
事实上,在图象处理中,自相关和互相关函数的定义如下:设原函数是f(t),则自相关函数定义为R(u)=f(t)*f(-t),其中*表示卷积;设两个函数分别是f(t)和g(t),则互相关函数定义为R(u)=f(t)*g(-t),它反映的是两个函数在不同的相对位置上互相匹配的程度。
那么,如何在matlab中实现这两个相关并用图像显示出来呢?
dt=.1;
t=[0:dt:100];
x=cos(t);
[a,b]=xcorr(x,’unbiased’);
plot(b*dt,a)
上面代码是求自相关函数并作图,对于互相关函数,稍微修改一下就可以了,即把[a,b]=xcorr(x,’unbiased’);改为[a,b]=xcorr(x,y,’unbiased’);便可。
2. 实现过程:
在Matalb中,求解xcorr的过程事实上是利用Fourier变换中的卷积定理进行的,即R(u)=ifft(fft(f)×fft(g)),其中×表示乘法,注:此公式仅表示形式计算,并非实际计算所用的公式。当然也可以直接采用卷积进行计算,但是结果会与xcorr的不同。事实上,两者既然有定理保证,那么结果一定是相同的,只是没有用对公式而已。下面是检验两者结果相同的代码:
dt=.1;
t=[0:dt:100];
x=3*sin(t);
y=cos(3*t);
subplot(3,1,1);
plot(t,x);
subplot(3,1,2);
plot(t,y);
[a,b]=xcorr(x,y);
subplot(3,1,3);
plot(b*dt,a);
yy=cos(3*fliplr(t)); % or use: yy=fliplr(y);
z=conv(x,yy);
pause;
subplot(3,1,3);
plot(b*dt,z,’r’);
即在xcorr中不使用scaling。
3. 其他相关问题:
(1)相关程度与相关函数的取值有什么联系?
相关系数只是一个比率,不是等单位量度,无什么单位名称,也不是相关的百分数,一般取小数点后两位来表示。相关系数的正负号只表
示相关的方向,绝对值表示相关的程度。因为不是等单位的度量,因而不能说相关系数0.7是0.35两倍,只能说相关系数为0.7的二列变量相关程度
比相关系数为0.35的二列变量相关程度更为密切和更高。也不能说相关系数从0.70到0.80与相关系数从0.30到0.40增加的程度一样大。
对于相关系数的大小所表示的意义目前在统计学界尚不一致,但通常按下是这样认为的:
相关系数 相关程度
0.00-±0.30 微相关
±0.30-±0.50 实相关
±0.50-±0.80 显著相关
±0.80-±1.00 高度相关
(2)matlab计算自相关函数autocorr和xcorr有什么不一样的?
分别用这两个函数对同一个序列计算,为什么结果不太一样?因为xcorr是没有将均值减掉做的相关,autocorr则是减掉了均值的。而且,用离散信号做自相关时,信号截取长度(采样点N)不一样,自相关函数就不一样。
(3)xcorr是计算互相关函数,带有一个option的参数:
a=xcorr(x,y,’option’)
option=baised时,是计算互相关函数的有偏估计;
option=unbaised时,是计算互相关函数的无偏估计;
option=coeff时,是计算归一化的互相关函数,即为互相关系数,在-1至1之间;
option=none,是缺省的情况。
所以想要计算互相关系数,可用’coeff’参数。
*************************************************************************
用这个xcorr函数作离散互相关运算时要注意,当x, y是不等长向量时,短的向量会自动填0与长的对齐,运算结果是行向量还是列向量就与x一样。
互相关运算计算的是x,y两组随机数据的相关程度,使用参数coeff时,结果就是互相关系数,在-1至1之间,否则结果不一定在这范围,有可能很大也有可能很小,这视乎x, y数据的大小,所以一般要计算两组数据的相关程度,一般选择coeff参数,对结果进行归一化。
所谓归一化简单理解就是将数据系列缩放到-1到1范围,正式的就是一种简化计算的方式,即将有量纲的表达式,经过变换,化为无量纲的表达式,成为纯量。变换式为X=(X实测–Xmin)/(Xmax-Xmin)。
一般来说选择归一化进行互相关运算后,得到结果绝对值越大,两组数据相关程度就越高。
喜欢 (0)or分享 (0)
matlab做互相关分析,自相关与互相关在matlab中实现_互相关在matlab中实现相关推荐
- m 文件 dll matlab 中调用_如何在matlab中调用python程序
现在python很火,很多代码都是python写的,如果你和我一样,习惯了使用matlab,还想在matlab中调用Python的代码,应该怎么办呢?其中一条思路:首先在matlab中调用系统脚本命令 ...
- matlab做plsda分析,Plsda分析
PLS-DA(Partial Least Squares Discriminant Analysis),即偏最小二乘法判别分析,是多变量数据分析技术中的判别分析法,经常用来处理分类和判别问题.通过对主 ...
- matlab怎么对三组数据做相关性分析,如何用matlab做相关性分析
2014-04-22 怎样用matlab求相关系数矩阵 我们是用corr来计算的: [RHO,PVAL] = corr(X,Y,'name',value) 其中name可以是type,rows,tai ...
- matlab 做偏回归分析,偏最小二乘回归分析|MATLAB 数学统计与优化|MATLAB技术论坛 - Powered by Discuz!...
clear;clc; pz = load('pz.txt'); mu = mean(pz); % 均值 sig = std(pz); % 方差 rr = corrcoe ...
- 用matlab做元胞自动机预测,元胞自动机(Cellular Automata)与城市规划及其MATLAB实现——莆田市城市发展预测...
前言 探索元胞自动机用于城市规划,是由于前不久在CSDN上看到相关案例后大开眼界,兴趣使然,想对家乡做一个城市发展预测,遂在巨人的肩膀上做一些探索与更正.文章末尾有这些案例的链接,感谢并致敬这些先行者 ...
- matlab中删除照片_如何使用matlab从图像中删除划痕
如果您知道划痕的位置,则此问题称为 inpainting,并且存在非常复杂的算法.因此,一种方法是尽可能好地检测划痕,然后在其上使用标准的修复算法.我在Mathematica中玩了一下你的形象: 首先 ...
- matlab做偏最小二乘回归(PLS带精度验证)
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/lusongno1/article/de ...
- r语言实现互相关分析和典型相关分析
互相关分析 互相关与自相关不同,互相关是指两个时间序列在任意两个不同时刻的相关程度. 假设有时间序列 xt 和 yt ,则 xt 在时刻 t 和 yt 在时刻 t+n 的相关即为n阶互相关. 公式: ...
- 卷积、互相关、自相关
卷积.互相关.自相关 看累了,写篇blog 刚刚在看通信方面的概念,看到了很多关于"相关"的概念.之前学信号的时候接触过,但不是重点内容,so 印象不太深.瞅了瞅信号书,感觉理解了 ...
最新文章
- Cheat Engine Tutorial 闯关手记
- timer计时器 java_java中基于timer计时器的图片播放
- [HOW TO]-从github拉取optee代码拉不下来怎么办?
- 【杂谈】当前知识蒸馏与迁移学习有哪些可用的开源工具?
- linux切换图片的代码,cacaview – Linux终端下将图片转换ASCII Art代码图案
- hdu 2046 骨牌铺方格 递推求解
- 2017年最新基于Bootstrap 4 的专业、多用途响应式布局的系统模板
- 2017年公众号32篇热文回看
- 华为平板鸿蒙评测,华为平板首发鸿蒙系统,Matepad Pro2 跑分首曝
- html之css关于引入样式的优先级
- spring mvc 实现websocket(服务器主动消息推送)
- Javaweb 网上订餐系统
- 21个以Bootstrap为框架的WordPress免费主题模板下载
- Kepware三菱驱动连接轻松开启
- 设计模式:模板(Template)模式
- 形式语言与自动机 第三章 课后题答案
- 9个动作让网站3天被百度收录!
- 模拟人生4中文免费版 电脑版
- CMake之add_executable
- 医疗物联网七大应用场景案例解析