⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 yuyinquzao.m

📁 matlab下实现降噪
💻 M
字号:
%程序中设定采样点数为256个,采样频率为10000hz,
%输入信号为随机噪声和两个正弦的合成信号
%设定的滤波器的截止频率为3500hz
%通过挈比雪肤滤波器,运行程序,比较滤波前后的频域波形
%滤波去除了高频信号
clear all;%寄存器值
clf;%清屏
N=256;%数据点数
fs=10000;%采样频率
dt=1/fs;%采样时间间隔
tt=0:dt:(dt*(N-1));
dis=(rand(size(tt)));%随机噪声
for k=1:N;
    f1=3000;%信号1频率
    f2=1000;%信号2频率
    y(k)=sin(2*pi*f1*k*dt)+sin(2*pi*f2*k*dt)+dis;%产生合成信号
end
lp=3500;%截止频率
wn1=2*lp/fs;%函数的参数
[z1,p1,k1]=CHEBY1(3,0.5,wn1);%滤波器的极零点表示
[b1,a1]=CHEBY1(3,0.5,wn1);%滤波器的传递函数图
b1=b1/(8*1.0711);%将参数按比例缩小
a1=a1/(8*1.0711);%为dsp做准备

yy1=filter(b1,a1,y);%滤波

y=fft(y,N);%将原始信号做FFT变换
pyy=y.*conj(y);%做功率谱分析
f=(1:(N/2-1));

for i=1:N/2-1;
    f(i)=f(i)*fs/N;
end
figure(1);

plot(f,pyy(2:N/2));%输出原始信号频谱

y=fft(yy1,N);%将滤波后数据做功率谱分析
pyy=y.*conj(y);
f=(1:(N/2-1));
for i=1:N/2-1;
    f(i)=f(i)*fs/N;
end
figure(2);
plot(f,pyy(2:N/2));%画出滤波后信号的频谱图

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -