用wavread,audioread,wavwrite,audiowrite之类的命令就可以了。
对于不同滤波器而言,每个频率的信号的强弱程度不同。当使用在音频应用时,它有时被称为高频剪切滤波器, 或高音消除滤波器。
低通滤波器概念有许多不同的形式,其中包括电子线路(如音频设备中使用的hiss 滤波器)、平滑数据的数字算法、音障(acoustic barriers)、图像模糊处理等等,这两个工具都通过剔除短期波动、保留长期发展趋势提供了信号的平滑形式。
低通滤波器在信号处理中的作用等同于其它领域如金融领域中移动平均数(moving average)所起的作用;低通滤波器有很多种,其中,最通用的就是巴特沃斯滤波器和切比雪夫滤波器。
%滤波前数据
t = 0:001:10;
f=5sin(2pi20t)+5sin(2pi60t);
%滤波器设计
Fpass = 1; % Passband Frequency
Fstop = 50; % Stopband Frequency
Apass = 1; % Passband Ripple (dB)
Astop = 60; % Stopband Attenuation (dB)
Fs = 2000; % Sampling Frequency
h = fdesignlowpass('fp,fst,ap,ast', Fpass, Fstop, Apass, Astop, Fs);
Hd = design(h, 'equiripple',
'MinOrder', 'any',
'StopbandShape', 'flat');
%f2滤波后的数据
f2 = filter(Hd,f);
%对比图
plot(t,f,'b',t,f2,'r');
给你些资料,希望对你有帮助~~~
模拟原型法
采用经典低通滤波器作为连续域上的设计模型,通过频域变换得到IIR数字滤波器,最后还要进行离散化处理。Matlab提供的低通模拟滤波器原型函数包括:besselap,buttap,cheb1lp,cheb2ap,ellipap;频域变换函数包括:lp2bp,lp2bs,lp2hp,lp2lp;离散化处理函数有bilinear和impinvar。
完全设计法
Matlab信号处理工具箱提供了几个直接设计IIR数字滤波器的函数,直接调用就可以设计滤波器,这为设计通用滤波器提供了方便。
设计Butterworth滤波器用函数butter(),可以设计低通、高通、带通和带阻的数字和模拟滤波器,其特性是通带内的幅度响应最大限度的平滑,但损失了截止频率处的下降斜度。
设计Chebyshev I型滤波器用函数chebyl()。可以设计低通、高通、带通和带阻的数字和模拟ChebyshevI型滤披器,其通带内为等波纹,阻带内为单调。Chebyshev I型滤波器的下降斜度比II型大,但其代价是通带内波纹较大。
设计Chebyshev II型滤波器用函数cheby2()。可以设计低通、高通、带通和带阻的数字和模拟Chebyshev II型滤波器,其通带内为单调,阻带内等波纹。Chebyshev II型滤波器的下降斜度比I型小,但其阻带内波纹较大。
设计椭圆滤波器用函数ellip(),与cheby1,cheby2类似,可以设计低通、高通、带通和带阻的数字和模拟滤波器。与Butterworth和chebyshev滤波器相比,ellip函数可以得到下降斜度更大的滤波器,得到通带和阻带均为等波纹。一般情况下,椭圆滤波器能以最低的阶实现指定的性能指标。
直接设计法
直接设计方法的思想是基于给定的滤波器参数直接在离散域上寻找合适的数字滤波器,他不限于常规的滤波器类型,如低通、高通、带通和带阻等。这种方法甚至可以设计多带的频率响应,Matlab提供yulewalk函数用于辅助设计。
通用Butterworth设计方法
使用这种方法设计的Butterworth数字滤波器可以有不同数目的零点和极点,Matlab提供的maxflat函数实现了这一功能。这个函数与butter函数很相似,但他可以指定两个阶参数,其中归一化和非归一化各一个。如果这两个参数的值相同,那么他与butter函数的结果就是相同的。
参数建模法
寻找接近于所需要设计的滤波器的通用模型,时域上的建模函数为lpc,prony,Stmcb;频域上的建模函数有invfreqs和invfreqz
以上就是关于matlab用低通滤波器处理wav文件全部的内容,包括:matlab用低通滤波器处理wav文件、MATLAB一阶低通滤波器的设计、请帮我用matlab在时域和频域上分别设计低通和高通滤波器程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)