matlab写一个噪声信号通过低通滤波器
时间: 2023-11-03 19:09:10 浏览: 233
【滤波器】基于低通滤波器实现语音信号加噪与去噪含Matlab源码.zip
以下是一个简单的示例代码,演示如何使用MATLAB生成噪声信号并通过低通滤波器进行滤波:
```matlab
% 生成噪声信号
fs = 1000; % 采样率
t = 0:1/fs:1; % 时间
x = randn(size(t)); % 高斯白噪声信号
% 设计低通滤波器
fc = 100; % 截止频率
[b, a] = butter(6, fc/(fs/2), 'low'); % 6阶Butterworth滤波器
% 滤波信号
y = filter(b, a, x);
% 绘制结果
figure;
subplot(2,1,1);
plot(t, x);
title('原始信号');
xlabel('时间 (s)');
ylabel('信号幅值');
subplot(2,1,2);
plot(t, y);
title('滤波后信号');
xlabel('时间 (s)');
ylabel('信号幅值');
```
该示例代码使用`randn`函数生成高斯白噪声信号,然后使用`butter`函数设计一个6阶Butterworth滤波器,并将其应用于噪声信号。最后,使用`filter`函数将滤波器应用于信号。结果在两个子图中绘制,一个子图显示原始信号,另一个子图显示滤波后的信号。
阅读全文