色噪声原理及matlab代码实现_精品文档Word格式文档下载.doc
《色噪声原理及matlab代码实现_精品文档Word格式文档下载.doc》由会员分享,可在线阅读,更多相关《色噪声原理及matlab代码实现_精品文档Word格式文档下载.doc(7页珍藏版)》请在冰豆网上搜索。
⑶橙色噪声。
该类噪声是准静态噪声,在整个连续频谱范围内,功率谱有限且零功率窄带信号数量也有限。
这些零功率的窄带信号集中于任意相关音符系统的音符频率中心上。
由于消除了所有的合音,这些剩余频谱就称为橙色音符。
⑷蓝噪声。
在有限频率范围内,功率密度随频率的增加每倍频增长3dB(密度正比于频率)。
对于高频信号来说,它属于良性噪声。
⑸紫噪声。
在有限频率范围内,功率密度随频率的增加每倍频增长6dB(密度正比于频率的平方值)。
⑹灰色噪声。
该噪声在给定频率范围内,类似于心理声学上的等响度曲线(如反向的A-加权曲线),因此在所有频率点的噪声电平相同。
⑺棕色噪声。
在不包含直流成分的有限频率范围内,功率密度随频率的增加每倍频下降6dB(密度与频率的平方成反比)。
该噪声实际上是布朗运动产生的噪声,它也称为随机飘移噪声或醉鬼噪声。
⑻黑噪声(静止噪声)包括:
①有源噪声控制系统在消除了一个现有噪声后的输出信号。
②在20kHz以上的有限频率范围内,功率密度为常数的噪声,一定程度上它类似于超声波白噪声。
这种黑噪声就像“黑光”一样,由于频率太高而使人们无法感知,但它对你和你周围的环境仍然有影响。
3、实验内容:
⑴用matlab或c/c++语言编写和仿真程序。
⑵产生粉红色噪声和高斯色噪声:
让高斯白噪声通过低通、带通、高通滤波器中的任意一个就可以产生高斯色噪声。
让高斯白噪声通过每倍频程衰减3dB的衰减滤波器的滤波器就可以产生粉红噪声。
⑶对粉红色噪声和高斯色噪声进行相关分析和谱分析。
计算粉红色噪声、高斯色噪声的均值、均方值、方差、相关函数、概率密度、频谱及功率谱密度、相关函数。
⑷所有结果均用图示法来表示,能读出具体值。
4、实验中产生的各种波形:
白噪声及其各种波
白噪声是随机的,所以它的均值为零,频谱在所有频率上都有分量。
功率谱密度近似均匀分布。
因为它不具有相关性,所以自相关函数趋近于零。
白噪声有波动所以方差不为零。
低通滤波器
试验中采用白噪声通过低通滤波器的方法来产生高斯色噪声,滤波器通带截止频率为30Hz,阻带截止频率为40Hz。
高斯色噪声及其各种波
色噪声的功率谱不是均匀分布的,它的均值不为零,具有一定的波动所以方差也不为零。
它的前后时刻是相关的,所以自相关函数不为零。
倍频程衰减滤波器
倍频程衰减3dB滤波器的设计参考《DSPgenerationofPink(1/f)Noise》
作者RobertBristow-Johnson。
粉红噪声及其各种波
5、Matlab程序:
试验程序如下:
%产生高斯白噪声
clf;
y=wgn(1,1024,0);
t=0:
1023;
y1=mean(y);
%均值01
y2=var(y);
%方差
y3=y2+y1.*y1;
%均方值
[y4,lag]=xcorr(y,'
unbiased'
);
%自相关函数
[f1,y5]=ksdensity(y);
%概率密度
f=(0:
length(y)-1)'
/length(y)*1024;
Y=fft(y);
y6=abs(Y);
%频谱
y7=Y.*conj(Y)/1024;
%功率谱密度
figure
(1);
subplot(2,4,1);
plot(t,y);
title('
高斯白噪声'
axis([01024-55]);
subplot(2,4,2);
plot(t,y1);
高斯白噪声均值'
axis([01024-22]);
subplot(2,4,3);
plot(t,y2);
高斯白噪声方差'
subplot(2,4,4);
plot(t,y3);
高斯白噪声均方值'
subplot(2,4,5);
plot(lag,y4);
高斯白噪声自相关函数'
axis([-10241024-11]);
subplot(2,4,6);
plot(y5,f1);
概率密度'
subplot(2,4,7);
plot(f,y6);
高斯白噪声频谱'
axis([01024080]);
subplot(2,4,8);
plot(f,y7);
高斯白噪声功率谱密度'
axis([0102408]);
%低通滤波器
Wp=2*pi*30;
Ws=2*pi*40;
Rp=0.5;
Rs=40;
fs=100;
W=2*pi*fs;
[N,Wn]=buttord(2*Wp/W,2*Ws/W,Rp,Rs);
[b,a]=butter(N,Wn);
[h,f]=freqz(b,a,1000,fs);
figure
(2);
plot(f,abs(h));
xlabel('
f/Hz'
ylabel('
|H(jf)|'
axis([010001.2]);
gridon;
低通滤波器幅频响应'
%生成高斯色噪声
gss=filter(b,a,y);
%滤波产生高斯色噪声
gss1=mean(gss);
%均值
gss2=var(gss);
gss3=gss2+gss1.*gss1;
[gss4,lag]=xcorr(gss,'
[f1,gss5]=ksdensity(gss);
length(gss)-1)/length(gss)*1024;
GSS=fft(gss);
gss6=abs(GSS);
gss7=GSS.*conj(GSS)/1024;
figure(3);
plot(t,gss);
高斯色噪声'
plot(t,gss1);
高斯色噪声均值'
axis([01024-11]);
plot(t,gss2);
高斯色噪声方差'
axis([01024-0.51.5]);
plot(t,gss3);
高斯色噪声均方值'
plot(lag,gss4);
高斯色噪声自相关函数'
axis([-10241024-0.51]);
plot(gss5,f1);
高斯色噪声概率密度'
plot(f,gss6);
高斯色噪声频谱'
axis([010240100]);
plot(f,gss7);
高斯色噪声功率谱密度'
%倍频程衰减3dB滤波器
%倍频程衰减3dB滤波器的设计参考
%《DSPgenerationofPink(1/f)Noise》
%作者RobertBristow-Johnson
a=[0.984436040.833923340.07568359];
b=[0.995727540.947906490.53567505];
Hz=zpk(a,b,1,1/44100);
Hz2=get(tf(Hz))
num=cell2mat(Hz2.num());
den=cell2mat(Hz2.den
(1));
[HF]=freqs(den,num);
figure(4);
semilogx(F,20*log(abs(H)));
xlabel('
F/Hz'
|H(jf)|/dB'
倍频程衰减滤波器幅频响应'
%产生粉红噪声
pn=filter(num,den,y);
%滤波产生粉红色噪声
pn1=mean(pn);
%粉红噪声均值
pn2=var(pn);
%粉红噪声方差
pn3=pn2+pn1.*pn1;
%粉红噪声均方值
[pn4,lag]=xcorr(pn,'
%粉红噪声自相关函数
[f1,pn5]=ksdensity(pn);
%粉红噪声概率密度
length(pn)-1)/length(pn)*1024;
PN=fft(pn);
pn6=abs(PN);
%粉红噪声频谱
pn7=PN.*conj(PN)/1024;
%粉红噪声功率谱密度
figure(5);
plot(t,pn);
粉红噪声'
axis([01024-88]);
plot(t,pn1);
粉红噪声均值'
plot(t,pn2);
粉红噪声方差'
axis([0102405]);
plot(t,pn3);
粉红噪声均方值'
plot(lag,pn4);
粉红噪声自相关函数'
axis([-10241024-12]);
plot(pn5,f1);
粉红噪声概率密度'
plot(f,pn6);
粉红噪声频谱'
axis([-501080