广告

原创 [蛋疼帖]用Matlab生成HIFI煲机白噪声2

2009-11-9 22:22 2026 0 分类: 工程师职场

之前我们已经能用MATLAB产生频谱均匀的白噪声了。但是在特定的场合,我们需要用一定带宽的噪声来褒机。这里就需要请出滤波器设计工具了。

产生白噪声的过程以前已经有描述,这里不再解释:

wav =randn(1e6,2);

然后进行滤波器设计,这里设计了一个低通FIR滤波器:

f =[0 0.4 0.5 1]; a = [1 1 0 0];

LPF = firpm(100,f,a);

LPF则是设计得到的滤波器。默认情况下firpm设计出来的滤波器通带,阻带等纹波。100为滤波器阶数。由于不是拿去设计实际的实现,所以阶数可以取高点来满足滤波特性。然后我们可以看到滤波器的频谱:

freqz(LPF);

点击看大图

然后利用滤波器对白噪声进行滤波:

wav2 = filter(LPF,1,wav);

然后通过FFT察看滤波后的噪声谱:

点击看大图

最后保存文件:

wavwrite(wav2,44100,'noise_shaped');

打完收工,如果你的播放工具带频谱显示,那就可以看到频谱就是那么回事。。。




广告

文章评论 0条评论)

登录后参与讨论
相关推荐阅读
porcp93_527495905 2009-11-10 12:23
[蛋疼帖]用Matlab生成HIFI煲机粉红噪声
之前已经利用MATLAB工具产生了白噪声和带限白噪声,但是褒机的时候,我们还采用了粉红噪声来褒机。所谓粉红噪声,即功率谱密度与频率成反比的频谱的信号,Npow?~1/f。在粉噪音中,每个倍频程带着一个...
porcp93_527495905 2009-10-29 14:50
[蛋疼帖]用Matlab生成HIFI煲机白噪声
HIFI玩家拿到新的耳机后者音箱之后干的第一件事情就是用白噪声煲机。市面上也有很多煲机的软件。但是,作为一名技术宅而言,以是男人就自己造的信念为信念,完全可以通过Matlab搞定白噪声的产生。在命令行...
我要评论
0
0
广告