matlab什么函数可以去除信号中混杂的直流分量和线性分量,去除信号中的直流分量...

一、去除信号中的直流分量的两种方法

信号中的每个数据减去平均值

通过对数据做FFT变换,令FFT变换后的Y = FFT(X),Y(1)=0即可去除信号中的直流分量

二、去除信号中的直流分量的代码

%%%第二种方法

x = rand(128, 1);

L=128;%信号长度

F=0:127;

f = fft(x);

A = abs(f);

A = A/(L/2);

subplot(1,2,1)

plot(F(1:L/2),A(1:L/2));%原数据的FFT

f(1) = 0;%令f(1)置0

f1 =f ;

x_ac = real(ifft(f1));

A1 = abs(f1);

A1 = A1/(L/2);

subplot(1,2,2)

plot(F(1:L/2),A1(1:L/2));%去除直流分量后的FFT

%%%第一种方法

x2 = x-mean(x);

三、原因:

一个信号f(x)可以分解为无数信号,即:

df4ed865da11cecf963015bd657ea52c.png

可以看到,会有cos(0.x) = 1的直流成分,其中的ω=0,即频率为0的频谱

而,我们所做的工作,所有数据减去平均值,最后会令整个数据的平均值为0,这个数据就成为了奇函数产生的结果,这个时候对其进行分解,只会存在

8afbf9c2bc32a983bb678a9c72c09201.png

这个时候就不存在cos(0.x)的直流成分

标签:FFT,A1,信号,去除,直流,分量

来源: https://www.cnblogs.com/andrew-address/p/12888567.html

  • 0
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值