• PUDN用户
    了解作者
  • matlab
    开发工具
  • 336KB
    文件大小
  • rar
    文件格式
  • 0
    收藏次数
  • 1 积分
    下载积分
  • 152
    下载次数
  • 2005-08-28 07:49
    上传日期
用MATLAB实现的信号处理! 低通滤波器高通滤波器可以输出方波!
信号处理中滤波器的实现.rar
  • 信号
  • freqz_m.m
    167B
  • 4.fig
    80.6KB
  • ideal_bp1.m
    111B
  • 1.fig
    69.3KB
  • LPF.m
    2.8KB
  • 3.fig
    140.3KB
  • LPF1.m
    3.3KB
  • BPF.m
    380B
  • ideal_lp.m
    94B
  • untitled.fig
    69.2KB
  • dnrz.m
    494B
  • 2.fig
    178.2KB
  • 5.fig
    141.8KB
  • dnrz1.m
    495B
  • www.pudn.com.txt
    218B
内容介绍
%求幅度响应dB的函数 function [db,mag,pha,w]=freqz_m(b,a); [H,w]=freqz(b,a,1000,'whole'); H=(H(1:1:501))'; w=(w(1:1:501))'; mag=abs(H); db=20*log10((mag+eps)/max(mag)); pha=angle(H); % 求理想低通滤波器的函数 function hd=ideal_lp(wc,N); alpha=(N-1)/2; n=0:1:N-1; m=n-alpha+eps; hd=sin(wc*m)./(pi*m); %求理想带通滤波器的函数 function hd=ideal_bp1(wc1,wc2,N); alpha=(N-1)/2; n=0:1:N-1; m=n-alpha+eps; hd=sin((wc2*m)-(wc1*m))./(pi*m); %主函数 %产生基带信号 figure(1); a=[-1,-1,-1,-1,1,-1,-1,1,-1,-1,-1,-1,1,-1,-1,-1]; t=1:3200; k=1; for j=1:16 for (i=(j-1)*200+1:j*200) y(i)=a(k); end k=k+1; end subplot(2,2,1); plot(t,y); title('基带信号'); axis([0,3200,-1.1,1.1]); subplot(2,2,2); plot(t,abs(fft(y))); title('基带信号频谱'); %低通滤波器设计 fs=2000;fp=100;fr=300; tr_width=(fr-fp)/fs; N=ceil(6.6*pi/(tr_width*2*pi))+1; n=0:1:N-1; wc=(fr+fp)*pi/fs; hd=ideal_lp(wc,N); w_ham=(hamming(N))'; h=hd.*w_ham; [db,mag,pha,w]=freqz_m(h,[1]); subplot(2,2,3); stem(n,h,'.'); title('实际单位脉冲响应h(n)'); axis([0,(N-1),-0.1,0.3]); subplot(2,2,4); plot(w/pi,db); title('幅度响应(dB)'); axis([0,1.2,-150,10]); figure(2); b=conv(y,h); subplot(2,2,1); plot(b); title('低通滤波后信号'); axis([0,3400,-1.2,1.2]); subplot(2,2,2); plot(abs(fft(b))); title('低通滤波后信号频谱'); %调制 t=0:480/(length(b)-1):480; y1=cos(2*pi*1000*t); subplot(2,2,3); plot(t,y1); title('载波'); axis([0,500,-1.1,1.1]); subplot(2,2,4); plot(t,abs(fft(y1))); title('载波频谱'); figure(3); c=y1.*b; subplot(2,2,1); plot(c); title('调制后信号'); axis([0,3200,-1.1,1.2]); subplot(2,2,2); plot(abs(fft(c))); title('调制后信号频谱'); %加噪声 noise=0.1*randn(1,length(c)); d=c+noise; t3=1:length(d); subplot(2,2,3); plot(t3,d); title('加噪声后信号'); axis([0,3200,-1.1,1.2]); subplot(2,2,4); plot(t3,abs(fft(d))); title('加噪声后信号频谱'); %带通滤波器设计 figure(4); fs1=600; fr1=700;fp1=900;fr2=1300;fp2=1100; tr_width=min((fp1-fr1),(fr2-fp2))/(2*fs1); N1=ceil(6.6/(tr_width*2))+1; n=0:1:N1-1; wc1=(fr1+fp1)*pi/fs1; wc2=(fr2+fp2)*pi/fs1; hd1=ideal_bp1(wc1,wc2,N1); w_ham=(hamming(N1))'; h1=hd1.*w_ham; subplot(2,2,1); stem(n,h1,'.'); axis([0,N1,-0.4,1.5]); title('带通滤波器'); subplot(2,2,2); plot(n,abs(fft(h1))); title('带通滤波器频谱'); axis([0,N1,0.8,2.2]); e=conv(d,h1); T=0:length(e)-1; subplot(2,2,3); plot(T,e); title('带通滤波后信号'); axis([0,3200,-3,3]); subplot(2,2,4); plot(T,abs(fft(e))); title('带通滤波后信号频谱'); %解调 T1=0:480/(length(e)-1):480; Z=cos(2*pi*1000*T1); f=e.*Z; figure(5); subplot(2,2,1); T2=0:length(f)-1; plot(T2,f); title('解调后信号'); axis([0,3200,-3,3]); subplot(2,2,2); plot(T2,abs(fft(f))); title('解调后信号频谱'); g=conv(f,h); T3=0:length(g)-1; subplot(2,2,3); plot(T3,g); title('低通滤波后信号'); axis([0,3200,-1.2,1.2]); subplot(2,2,4); plot(T3,abs(fft(g))); title('低通滤波信号频谱'); %抽样判决 for j=1:16 sum=0; for (i=(j-1)*204+1:j*204) sum=sum+g(i); end h(j)=sum./204; if(h(j)>=0.018) h(j)=1; else h(j)=-1; end end k=1; for j=1:16 for (i=(j-1)*200+1:j*200) z(i)=h(k); end k=k+1; end figure(6); subplot(2,2,1); plot(z); axis([0,3200,-1.1,1.1]); subplot(2,2,2); plot(abs(fft(z)));
评论
    相关推荐
    • 中值滤波 matlab
      分别在2幅灰度图像中加入一定量的高斯噪声和椒盐噪声,然后采用3×3的均 值滤波器和3×3中值滤波器分别对噪声...仿效“中值滤波”的方法,对原图像分别进行“极大值滤 波”和“极小值滤波”,对所形成的图像给出说明。
    • 卡尔曼滤波matlab
      卡尔曼滤波matlab程序,有需要的朋友可以参考参考
    • 卡尔曼滤波MATLAB程序
      介绍的卡尔曼滤波matlab程序,简单易懂。
    • 卡尔曼滤波Matlab实现
      matlab对卡尔曼滤波进行仿真,源代码和PPT。
    • 粒子滤波matlab算法
      粒子滤波正在得到重视,越来越的人开始注意,在故障诊断和预测领域里,用来估计状态参数。附件中matlab程序介绍了基本粒子滤波算法
    • 卡尔曼滤波matlab程序
      卡尔曼滤波matlab程序,可以下载参考
    • Matlab语音信号滤波程序
      Matlab语音信号滤波程序.
    • 粒子滤波 matlab
      粒子滤波 matlab
    • 语音信号滤波 matlab
      matlab程序 实现对语音信号进行滤波 里面有低通 高通 滤波器等 对信号进行频频分析等功能
    • 高斯滤波 matlab
      高斯滤波技术,针对图像的光照不均匀的情况,可以对图像进行很好的处理,让你获得理想的结果。