MATLAB自相关分析xcorr

自相关定义

信号 x ( t ) x(t) x(t)的自相关函数定义为
在这里插入图片描述
其中,T为信号 x ( t ) x(t) x(t)的观测时间, R x ( τ ) R_{x}(\tau) Rx(τ)描述了 x ( t ) x(t) x(t) x ( t + τ ) x(t+\tau) x(t+τ) x ( t − τ ) x(t-\tau) x(tτ)之间的相关性。自相关函数可以从被干扰的信号中找出周期成分。

xcorr的应用

MATLAB中自带自相关变换的函数xcorr(),其调用格式如下:
在这里插入图片描述
其中的’option’参数可选:
“biased”:为有偏的互相关函数估计;
“unbiased”:为无偏的互相关函数估计;
“coeff”:为0延时的正规化序列的自相关计算;
“none”:为原始的互相关计算;

下面针对这个参数讲一下我的理解:
根据自相关函数的定义,信号 x x x应该是无限长的,然而我们现实中采集到的数据都是有限长度的,因此做自相关变化之后肯定会有衰减。

根据定义或者我们做自相关变换的目的,我们想要找的信号 x x x的周期,不希望它有衰减。比如正弦函数做变换之后仍是正弦函数。因此,我们可以用"biased"和"unbiased"这两个参数来调节

举个栗子

在这里插入图片描述

Fs=1000; %采样率
f = 5;
N = 2; % 周期数
t=N; % 信号时长 s 
n=0:1/Fs:t-1/Fs; % 采样时间点,刚好采N 个周期
len = length(n); % 信号点数
y = sin(2*pi*f*n); % 采集到的离散信号
subplot(311)
plot(y)
title('sin(x)')
[a,b] = xcorr(y,'biased');
subplot(312)
plot(b,a)
title('biased')
[a,b] = xcorr(y,'unbiased');
subplot(313)
plot(b,a)
title('unbiased')

在这里插入图片描述
加上"unbiased"参数之后,相当于把信号变为无限长之后再做自相关,这正是我们希望得到的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值