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

📄 gaotong.m

📁 用MATLAB语言设计的高通滤波器,是用切比雪夫设计的
💻 M
字号:
clear; close all    %清除工作空间中的变量                              
[y,fs,bits] =wavread('yinyue.wav'); %读取wav文件
sound(y,fs,bits); %播放wav文件
Y=fft(y,32768);   %32768点DFT,用FFT实现
%画出滤波前音频信号的波形及频谱
subplot(221);plot(y);title('滤波前音频信号波形');
subplot(222);plot(abs(Y));title('滤波前音频信号频谱');
%设计一个高通chebyshev2型滤波器
%阻带的截止频率为10Hz,通带的截止频率为30Hz
%在通带内的最大衰减不超过0.1dB,在阻带内的最小衰减不小于40dB
%输入指标
wp=30;ws=10;rp=0.1;rs=40;Fs=100;
wp=10*2*pi;ws=30*2*pi;%通带频率(弧度),阻带频率(弧度)
[n,wn]=cheb2ord(wp/(Fs/2),ws/(Fs/2),rp,rs,'s');  % 求滤波器阶次
[z,p,k]=cheb2ap(n,rs);  %计算n阶切比雪夫2型滤波器的系统函数
wn=wn*Fs/2*2*pi; %计算阻带截止频率wn
[A,B,C,D]=zp2ss(z,p,k);
[AT,BT,CT,DT]=lp2hp(A,B,C,D,wn);%低通滤波器到高通滤波器的变换
[AT1,BT1,CT1,DT1]=bilinear(AT,BT,CT,DT,Fs);
[num,den]=ss2tf(AT1,BT1,CT1,DT1);
[H,W]=freqz(num,den);%求滤波器的频率响应
x=filter(num,den,y);%对音频信号进行滤波
X=fft(x,32768);
%画出滤波后的波形及频谱
subplot(223);plot(x);title('滤波后音频信号波形');
subplot(224);plot(abs(X));title('滤波后音频信号频谱');
sound(x,fs,bits);%回放音频信号

⌨️ 快捷键说明

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