数字信号处理_使用经典滤波器从噪声中提取信号

该博客展示了如何使用经典remez算法设计高通和低通滤波器,以从含有噪声的信号中提取纯净信号。首先创建了一个混合信号,然后通过remezord函数确定滤波器参数,设计滤波器并展示其幅频特性。最后,应用滤波器去除噪声,观察滤波后信号的波形和频谱。
摘要由CSDN通过智能技术生成
%用经典滤波器从噪声中提取信号
clear all;close all;clc
N=2000;T=0.001;Tp=N*T;
t=0:T:(N-1)*T;
k=0:N-1;
f=k/Tp;     %%%f=k/N*fs
fsa=1/T;fc=fsa/10;f0=fc/10;
mt=cos(2*pi*f0*t);  
ct=cos(2*pi*fc*t);  
xt=mt.*ct;          
nt=2*rand(1,N)-1;   
figure;
plot(linspace(0,fsa,N),abs(fft(xt)))
%===============================
fp=150; fs=300; 		% 输入给定指标
Rp=1;As=60;Fs=fsa;
fb=[fp,fs];m=[0,1]; 		% 计算remezord函数所需参数f,m,dev,m=[0,1]为设计高通滤波器
dev=[10^(-As/20),(10^(Rp/20)-1)/(10^(Rp/20)+1)];
[n,fo,mo,W]=remezord(fb,m,dev,Fs);	% 确定remez函数所需参数
hn=remez(n,fo,mo,W);	% 调用remez函数进行设计
figure;
plot(linspace(0,2*pi,1000),abs(fft(hn,1000)))
title('高通滤波器幅频特性')
xlabel('数字角频率')
ylabel('幅度')
xlim([0,2*pi])
set(gca,'XTick',[0:pi:2*pi])
set(gca,'xtickLabel',{'0','π','2π'})
grid on
%================================
yt=filter(hn,1,10*nt);      %产生高通噪声
%============================
st=xt+yt;           %噪声加信号
fst=fft(st,N);
figure;
subplot(2,1,1)
plot(t,st);grid;xlabel('t/s');ylabel('x(t)');
axis([0,Tp/8,min(st),max(st)]);title('(a) 信号加噪声波形')
subplot(2,1,2)
plot(f,abs(fst)/max(abs(fst)));grid;title('(b) 信号加噪声的频谱')
axis([0,Fs/2,0,1.2]);
xlabel('f/Hz');ylabel('幅度')
%==============================
fp=150; fs=200; 		% 输入给定指标
Rp=0.2;As=60;Fs=fsa;
fb=[fp,fs];m=[1,0]; 		% 计算remezord函数所需参数f,m,dev,m=[1,0]为设计低通滤波器
dev=[(10^(Rp/20)-1)/(10^(Rp/20)+1),10^(-As/20)];
[n,fo,mo,W]=remezord(fb,m,dev,Fs);	% 确定remez函数所需参数
hn=remez(n,fo,mo,W);	% 调用remez函数进行设计
fhw=fft(hn,N);		% 求设计出的滤波器频率特性
figure
subplot(2,1,1)
plot(f,abs(fhw));grid;title('(c) 低通滤波器幅频特性')
axis([0,Fs/2,0,max(abs(fhw))+0.5]);
xlabel('f/Hz');ylabel('幅度')
%===============================
zt=filter(hn,1,st);
subplot(2,1,2)
plot(t,zt);grid;
axis([0,Tp/8,-1,1]);xlabel('t/s');ylabel('s(t)');
title('(d) 滤除噪声后的信号波形')

在这里插入图片描述

在这里插入图片描述

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SmallC1oud

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值