关于matlab用IIR低通滤波器对信号进行滤波去噪问题
-
我从网上搜的程序老师说滤波前后的频谱前后段对称、还有什么横轴要是什么坐标(完全听我也不懂) 求大神看我这个程序怎么把频谱的后半对称部分去掉 程序和图片在下面Ft=8000;Fp=1000;Fs=1200;wp=2*pi*Fp/Ft;ws=2*pi*Fs/Ft;fp=2*Ft*tan(wp/2);fs=2*Fs*tan(wp/... 我从网上搜的程序老师说滤波前后的频谱前后段对称、还有什么横轴要是什么坐标(完全听我也不懂) 求大神看我这个程序怎么把频谱的后半对称部分去掉 程序和图片在下面Ft=8000;Fp=1000;Fs=1200;wp=2*pi*Fp/Ft;ws=2*pi*Fs/Ft;fp=2*Ft*tan(wp/2);fs=2*Fs*tan(wp/2);[n11,wn11]=buttord(wp,ws,1,50,'s');%求低通滤波器的阶数和截止频率[b11,a11]=butter(n11,wn11,'s');%求S域的频率响应的参数[num11,den11]=bilinear(b11,a11,0.5);%双线性变换实现S域到Z域的变换[h,w]=freqz(num11,den11);%根据参数求出频率响应plot(w*8000*0.5/pi,abs(h));legend('用butter设计');grid;[y,fs,nbits]=wavread ('qzp1.wav');n=length (y);%求出语音信号的长度noise=0.01*randn(n,2);%随机函数产生噪声s=y+noise;%语音信号加入噪声S=fft(s);%傅里叶变换z11=filter(num11,den11,s);sound(z11);m11=fft(z11);%求滤波后的信号 subplot(2,2,1);plot(abs(S),'g');title('滤波前信号的频谱');grid;subplot(2,2,2);plot(abs(m11),'r');title('滤波后信号的频谱');grid;subplot(2,2,3);plot(s);title('滤波前信号的波形');grid;subplot(2,2,4);plot(z11);title('滤波后的信号波形'); 展开
全部评论(1条)
-
- 我昱云南的人民 2017-06-28 00:00:00
- 这个我刚好做过一个滤波器,事实上对时域信号做FFT,截取一定点数再做逆FFT相当于理想滤波。设计滤波器代码如下: f1=100;f2=200;%待滤波正弦信号频率 fs=2000;%采样频率 m=(0.3*f1)/(fs/2);%定义过度带宽 M=round(8/m);%定义窗函数的长度 N=M-1;%定义滤波器的阶数 b=fir1(N,f2/fs);%使用fir1函数设计滤波器 %输入的参数分别是滤波器的阶数和截止频率 figure(1) [h,f]=freqz(b,1,512);%滤波器的幅频特性图 %[H,W]=freqz(B,A,N)当N是一个整数时函数返回N点的频率向量和幅频响应向量 plot(f*fs/(2*pi),20*log10(abs(h)))%参数分别是频率与幅值 xlabel('频率/赫兹');ylabel('增益/分贝');title('滤波器的增益响应'); figure(2) subplot(211) t=0:1/fs:0.5;%定义时间范围和步长 s=sin(2*pi*f1*t)+sin(2*pi*f2*t);%滤波前信号 plot(t,s);%滤波前的信号图像 xlabel('时间/秒');ylabel('幅度');title('信号滤波前时域图'); subplot(212) Fs=fft(s,512);%将信号变换到频域 AFs=abs(Fs);%信号频域图的幅值 f=(0:255)*fs/512;%频率采样 plot(f,AFs(1:256));%滤波前的信号频域图 xlabel('频率/赫兹');ylabel('幅度');title('信号滤波前频域图'); figure(3) sf=filter(b,1,s);%使用filter函数对信号进行滤波 %参数分别为滤波器系统函数的分子和分母多项式系数向量和待滤波信号输入 subplot(211) plot(t,sf)%滤波后的信号图像 xlabel('时间/秒');ylabel('幅度');title('信号滤波后时域图'); axis([0.2 0.5 -2 2]);%限定图像坐标范围 subplot(212) Fsf=fft(sf,512);%滤波后的信号频域图 AFsf=abs(Fsf);%信号频域图的幅值 f=(0:255)*fs/512;%频率采样 plot(f,AFsf(1:256))%滤波后的信号频域图 xlabel('频率/赫兹');ylabel('幅度');title('信号滤波后频域图');
-
赞(12)
回复(0)
热门问答
- 关于matlab用IIR低通滤波器对信号进行滤波去噪问题
- 我从网上搜的程序老师说滤波前后的频谱前后段对称、还有什么横轴要是什么坐标(完全听我也不懂) 求大神看我这个程序怎么把频谱的后半对称部分去掉 程序和图片在下面Ft=8000;Fp=1000;Fs=1200;wp=2*pi*Fp/Ft;ws=2*pi*Fs/Ft;fp=2*Ft*tan(wp/2);fs=2*Fs*tan(wp/... 我从网上搜的程序老师说滤波前后的频谱前后段对称、还有什么横轴要是什么坐标(完全听我也不懂) 求大神看我这个程序怎么把频谱的后半对称部分去掉 程序和图片在下面Ft=8000;Fp=1000;Fs=1200;wp=2*pi*Fp/Ft;ws=2*pi*Fs/Ft;fp=2*Ft*tan(wp/2);fs=2*Fs*tan(wp/2);[n11,wn11]=buttord(wp,ws,1,50,'s');%求低通滤波器的阶数和截止频率[b11,a11]=butter(n11,wn11,'s');%求S域的频率响应的参数[num11,den11]=bilinear(b11,a11,0.5);%双线性变换实现S域到Z域的变换[h,w]=freqz(num11,den11);%根据参数求出频率响应plot(w*8000*0.5/pi,abs(h));legend('用butter设计');grid;[y,fs,nbits]=wavread ('qzp1.wav');n=length (y);%求出语音信号的长度noise=0.01*randn(n,2);%随机函数产生噪声s=y+noise;%语音信号加入噪声S=fft(s);%傅里叶变换z11=filter(num11,den11,s);sound(z11);m11=fft(z11);%求滤波后的信号 subplot(2,2,1);plot(abs(S),'g');title('滤波前信号的频谱');grid;subplot(2,2,2);plot(abs(m11),'r');title('滤波后信号的频谱');grid;subplot(2,2,3);plot(s);title('滤波前信号的波形');grid;subplot(2,2,4);plot(z11);title('滤波后的信号波形'); 展开
- 关于用MATLAB设计对信号进行频谱分析和滤波处理的程序
- 基本要求: 设计出一套完整的系统,对信号进行频谱分析和滤波处理; 1.产生一个连续信号,包含低频,中频,高频分量,对其进行采样,进行频谱分析,分别设计三种高通,低通,带通滤波器对信号进行滤波处理,观察滤波后信号的频谱。 2.采集一段含有噪音... 基本要求: 设计出一套完整的系统,对信号进行频谱分析和滤波处理; 1.产生一个连续信号,包含低频,中频,高频分量,对其进行采样,进行频谱分析,分别设计三种高通,低通,带通滤波器对信号进行滤波处理,观察滤波后信号的频谱。 2.采集一段含有噪音的语音信号(可以录制含有噪音的信号,或者录制语音后再加进噪音信号),对其进行采样和频谱分析,根据分析结果设计出一合适的滤波器滤除噪音信号。 只要有程序就可以了,谢谢各位了,提供点帮助喽!!没学过MATLAB,自学的,要做很难的这个就有点困难啦!!这两个题目随便哪个都可以.先谢谢啦!!好的答案会追加分的,目前我只有这么多了! 展开
- 用matlab编程设计一个巴特沃斯滤波器,对声音进行去噪
- 首先读取wav文件,画出原始声音的时域图和频谱图,再加噪声(正余弦或者随机都可以),再画出加噪声后的时域和频谱图。然后通过设计的巴特沃斯滤波器,画出滤波后的声音的时域和频谱图。 请大侠帮忙,Z好能加个qq诚心请教!
- 用MATLAB设计对信号进行频谱分析和滤波处理的程序
- 设计出一套完整的系统,对信号进行频谱分析和滤波处理; 1.产生一个连续信号,包含低频,中频,高频分量,对其进行采样,进行频谱分析,分别设计三种高通,低通,带通滤波器对信号进行滤波处理,观察滤波后信号的频谱。
- 关于用MATLAB设计确定信号的频谱分析和滤波
- 刚学的MATLAB,自己还不会设计程序,希望懂的大虾帮忙下。(也可QQ联系)具体的步骤要求如下,如果所给程序符合,,还会给予附加分数。 (1)确定信号的频谱分析 用MATLAB生成信号x(t)=e-t并进行FFT分析,显示|X(k)|和Ф(k),并显示信号的离散幅频图和相... 刚学的MATLAB,自己还不会设计程序,希望懂的大虾帮忙下。(也可QQ联系)具体的步骤要求如下,如果所给程序符合,,还会给予附加分数。 (1)确定信号的频谱分析 用MATLAB生成信号x(t)=e-t并进行FFT分析,显示|X(k)|和Ф(k),并显示信号的离散幅频图和相频图。假设频率分辨率要求F<=4Hz,信号的Z高频率fh限制为60Hz。 (2)正弦信号生成与抽样 对任意两个不同频率的正弦信号进行叠加,生成信号取样作出时域波形图并存入文件。 [思考]取样周期如何确定?取多少点? (3)信号叠加 生成方波和三角波信号,叠加两个信号,作出时域波形图及频谱特性图。 (4)设计数字滤波器并画出频率响应 根据方波和三角波信号的频谱特点得到性能指标,由性能指标设计两个数字滤波器。在MATLAB中,可以利用函数fir1设计FIR滤波器,利用函数butte、cheby1和ellip设计IIR滤波器;Z后,利用MATLAB中的函数freqz画出各滤波器的频率响应。 (5)用滤波器对信号进行滤波 用自己设计的滤波器对(3)中叠加的信号进行滤波。在MATLAB中,FIR滤波器利用函数fftfilt对信号进行滤波,IIR滤波器利用函数filter对信号进行滤波。 (6)分析得到信号的频谱 对滤波后的信号进行fft快速傅里叶变换,得到信号的频谱特性,与原始信号进行比较,并画出信号的时域波形和频谱。 展开
- Matlab 正弦周期信号 低通滤波器
- 题目:设计不同的低通、高通滤波器,获取周期信号sin(n)的高频和低频谐波,分析其频谱 希望各位大神帮我用Matlab做做这题,把代码给我。 或者详细说说低通高通滤波器怎么搞。很着急,网上很多介绍滤波器的乱七八糟,看不懂。 谢谢各位了
- 用remez设计FIR低通滤波器问题。matlab
- 那位高手会设计这个滤波器,滤波器阶数P=50.通带[0,0.4pi].阻带[0.5pi,pi].通带Z大偏差delta1=0.01.阻带Z大偏差0.001.在[0,0.4pi]U[0.5pi,pi]间隔中等间隔采样N=200个点。谢谢!
- 求助关于matlab滤波功能
- 现有一组拉索振动的实验数据,每隔0.002s在拉索中间点出测量位移值,得到txt文件,其中一部分数据如下: 0.0000000(时间) 6.0159998(位移值) 0.0020000 5.8280001 0.0040000 5.6399999 0.0060000 5.3920002 ... 现有一组拉索振动的实验数据,每隔0.002s在拉索中间点出测量位移值,得到txt文件,其中一部分数据如下: 0.0000000(时间) 6.0159998(位移值) 0.0020000 5.8280001 0.0040000 5.6399999 0.0060000 5.3920002 0.0080000 5.0939999 0.0100000 4.8660002 0.0120000 4.5679998 0.0140000 4.2519999 0.0160000 3.9200001 0.0180000 3.5139999 0.0200000 3.1500001 0.0220000 2.7460001 0.0240000 2.3239999 0.0260000 1.9040000 0.0280000 1.3900000 0.0300000 0.9140000 0.0320000 0.4040000 0.0340000 0.0000000 0.0360000 -0.4720000 0.0380000 -0.9740000 0.0400000 -1.3099999 为了消除其他频率波或者噪音的影响,现在希望通过滤波将杂质除去,小弟以前没有用过matlab滤波功能,请问高手具体如何操作啊?感激不尽 展开
- matlab怎样对时域信号进行频谱分析
- 用MATLAB对正弦信号频谱分析和滤波处理
- 题目:正弦信号的频谱分析与切比雪夫滤波 1.设计内容 a.基本理论知识介绍 b.设计任务 设计一套完整的系统,对信号进行频谱分析和滤波处理。输入信号为一系列频率成分的正弦信号之和,加入噪声信号,对其进行采样和频谱分析,根据分析结果设计出一... 题目:正弦信号的频谱分析与切比雪夫滤波 1.设计内容 a.基本理论知识介绍 b.设计任务 设计一套完整的系统,对信号进行频谱分析和滤波处理。输入信号为一系列频率成分的正弦信号之和,加入噪声信号,对其进行采样和频谱分析,根据分析结果设计出一个合适的滤波器滤除噪音信号。 2.设计要求 完成完整的分析系统,包括完整的程序代码和分析结果 不限于切比雪夫 其他巴特沃斯 圆通都可以 请将程序发到我邮箱owenxiejunrl@163.com 满意的话 我会继续追分的 谢谢 不过要在6月23号以前哦 展开
- 用MATLAB设计一个低通滤波器
- Z好解释一下各种参数怎么设置 都是怎么计算出来的
- 请问小波去噪和滤波 到底有啥区别
- 请问小波去噪和滤波 到底有啥区别
- 用MATLAB对信号并进行频谱分析
- 1)查阅相关资料; (2)采用MATLAB产生的信号(三种以上频率,两种不同的采样间隔); (3)对上述信号并进行频谱分析,并分析采样间隔、频率分辨率对频谱的影响; (4)在同一采样间隔下,将不同频率的信号求和,通过频谱分析,分别设计高通、低通、带通... 1)查阅相关资料; (2)采用MATLAB产生的信号(三种以上频率,两种不同的采样间隔); (3)对上述信号并进行频谱分析,并分析采样间隔、频率分辨率对频谱的影响; (4)在同一采样间隔下,将不同频率的信号求和,通过频谱分析,分别设计高通、低通、带通、帯阻滤波器对信号进行滤波处理,实现某一频率信号的提取或滤除; 展开
- 请问一下关于红外光谱用matlab进行小波函数变换的问题
- 请问我是做红外光谱的,想要把我的一大推样品数据进行小波变换,我每一排是一个样品400-2500波长的检测数据,我想请问一下如果我要把他进行变换,应该怎么排列?运用什么函数?我用了[cA,cD]=dwt(y,'wname') 它显示了 ??? Error using ==> wavemngr at 250... 请问我是做红外光谱的,想要把我的一大推样品数据进行小波变换,我每一排是一个样品400-2500波长的检测数据,我想请问一下如果我要把他进行变换,应该怎么排列?运用什么函数?我用了[cA,cD]=dwt(y,'wname') 它显示了 ??? Error using ==> wavemngr at 250 *** Invalid wavelet name : wname *** Error in ==> wavemngr at 321 case 'wn' , i_fam = wavemngr('indw',arg); Error in ==> wfilters at 58 [wtype,fname] = wavemngr('fields',wname,'type','file'); Error in ==> dwt at 47 [Lo_D,Hi_D] = wfilters(varargin{1},'d'); next = 2; 请问什么意思呢? 展开
- 使用matlab中fdatool导出的高通butterworth IIR滤波器系数如何在程序中进行滤波
- 导出的系数为 const int NL = 10; const real64_T NUM[10] = { 0.8558457777315, -7.702611999584, 30.81044799834, -71.89104532945, 107.8365679942, -107.8365679942, 71.89104532945, -30.81044799834, 7.702611999584, ...
导出的系数为
const int NL = 10;
const real64_T NUM[10] = {
0.8558457777315, -7.702611999584, 30.81044799834, -71.89104532945,
107.8365679942, -107.8365679942, 71.89104532945, -30.81044799834,
7.702611999584, -0.8558457777315
};
const int DL = 10;
const real64_T DEN[10] = {
1, -8.688722481439, 33.55806880257, -75.61737954546,
109.553642522, -105.8293351142, 68.16455775223, -28.22860996292,
6.820250022448, -0.7324719952609
};
在程序中进行差分计算得到滤波结果,如下:
pWave为输入波形,pFilter的内容也复制为输入波形
for(i=16; i
32768) { float_Value = 32768; } if (float_Value<-32768) { float_Value = -32768; } *(pFilter+i) = (float)(float_Value);//滤波 } 得到的结果波形不对。 请教问题在哪里? 展开
- matlab怎么用以设计好滤波器进行滤波
- matlab编的有关EMD去噪的程序,处理的是核磁共振测井信号,急求
- 为什么平滑滤波相当于低通滤波器
- 用C语言编程对离散信号进行FFT变换,进行频谱分析并和Matlab频谱分析对比
- 用C语言编程对离散信号进行FFT变换,进行频谱分析并和Matlab频谱分析对比,各位谁会的帮帮忙吧,这个实在是不会了,网上找的程序都不能用~~
- 用DFT对连续信号进行谱分析会遇到的问题?
5月突出贡献榜
推荐主页
最新话题
-
- #DeepSeek如何看待仪器#
- 干体炉技术发展与应用研究
- 从-70℃到150℃:一台试验箱如何终结智能...从-70℃到150℃:一台试验箱如何终结智能调光膜失效风险?解决方案:SMC-210PF-FPC温湿度折弯试验箱的五大核心价值1. 多维度环境模拟,覆盖全生命周期测试需求超宽温域:支持-70℃至+150℃的极限温度模拟(可选配),复现材料在极寒、高温、冷热冲击下的性能表现;控湿:湿度范围20%~98%RH(精度±3%RH),模拟热带雨林、沙漠干燥等复杂工况,暴露材料吸湿膨胀、分层缺陷;动态折弯:0°~180°连续可调折弯角度,支持R1~R20弯曲半径设定,模拟实际装配中的微小应力,提前预警裂纹、断裂风险。
参与评论
登录后参与评论