基于MATLAB中GUI的随机信号处理实验及相关函数代码

2018-12-22 23:01

实验二 随机信号处理的工程编程实现

一、实验目的

1,熟悉各种随机信号分析及处理方法。

2,掌握运用MATLAB中的统计工具包和信号处理工具对信号进行相关函数的处理 3,学会如何对用函数处理后的信号进行分析 二、实验原理 1,声称白噪声

白噪声是指功率谱密度在整个频域内均匀分布的噪声。 所有频率具有相同能量的随机噪声称为白噪声。白噪声或白杂讯,是一种功率频谱密度为常数的随机信号或随机过程。换句话说,此信号在各个频段上的功率是一样的,由于白光是由各种频率(颜色)的单色光混合而成,因而此信号的这种具有平坦功率谱的性质被称作是“白色的”,此信号也因此被称作白噪声。 2,白噪声的检测与分析

白噪声信号是的功率谱密度在整个频域内时间均匀分布的,所有的频率具有相同的能量。它是一个均值为零的随机过程,任一时刻是均值为零的随机变量。而服从高斯分布的白噪声即称为高斯白噪声。 3,声音信号

声音信号是指人能够听得到的声音,在实验中我们可以用MATLAB中的wavrecord()函数来录取一段音频信号或者将其他的音频信号导入到MATLAB工程中进行分析。注意,音频文件要转换为*.wav格式,因为其他的格式MATLAB软件不识别。声音信号如图1

y = wavread('filename') [y,Fs,bits] = wavread('filename') [...] = wavread('filename',N) [...] = wavread('filename',[N1 N2]) [...]

=

wavread('filename','size'

图1 原声音信号 4,声音信号的分析与处理

我们在实际生产生活中接触到的各种信号,如耳朵听到的声音信号、电话机送出的语音电流信号、摄像机输出的图像信号、车间控制室记录下的压力、流量、转速、温度、湿度等等信号都是模拟信号。由于它在时间或取值上往往是连续的,即在一定的时间间隔或取值幅度内有无限多个值,或者说它们的取值是连续的时间函数,因此,模拟信号通常又称为连续信号。 5,对声音信号加入白噪声后进行分析与处理

在声音信号中加噪声后对声音信号进行频域变换,然后对其进行滤波还原,将还原的信号和和原信号对比,看处理效果和理论值的差别。加躁之后的图形如图2 = rand(n) Y = rand(m,n) Y = rand([m n]) Y = rand(m,n,p,...) Y = rand([m n p...]) Y = rand(size(A)) rand

s = rand('state')

图2加躁后的声音信号 6,IIR滤波器的原理与设计

利用双线性变换设计IIR滤波器(只介绍巴椭圆字滤波器的设计),首先要设计出满足指标要求的模拟滤波器的传递函数Ha(s),然后由Ha(s)通过双线性变换可得所要设计的IIR滤波器的系统函数H(z)。 7、 概率密度估计

概率密度估计有两个函数,一个是 ksdensity(),另一个是 hist()。ksdensity()函数直接估计随机序列概率密度,它的用法是:

[f,xi] = ksdensity(x)

它的功能是估计用矢量 x 表示的随机序列在 xi 处的概率密度 f。也可以指定 xi,估计对应点的概率密度值,用法为:

f = ksdensity(x,xi)

8,最大似然函数估计

当被估计量为未知常量时,不能采用贝叶斯方法,这时可以采用比较简单的最大似然估计。最大似然估计可以简便地实现复杂估计问题的求解,而且,当观测数据足够多时,其性能也是非常好的。因此,最大似然估计在实际中得到了广泛采用。 设观测矢量的参数θ

作为对θ

,把

称为似然函数,使似然函数最大所对应

,即

的估计,称为最大似然估计,记为

9,信号的互相关

互相关函数是两个随机过程联合统计特性中重要的数字特征,它的定义为

三,实验内容 1,声称白噪声

在这里,我们用MATLAB仿真软件中的rand(m,n)函数来产生白噪声,将产生的白噪声的图形进行分析图形结果如图3

图3

在MATLAB中的仿真结果如上图1,上图中我们用函数rand(1,200)来产生200个随机点,然后将产生的点在图像中反映出来,从图中我们看到,虽然用生成的是同一个点,但是画出的三个图形走向完全独立,相互之间没有联系。说明,生成的白噪声是一个随机信号,其产生的过程是一个随即过程。 2,白噪声的检测与分析

可以根据随机信号的功率谱、均值、和随机信号的分布来判断白噪声。如图2

图4

图2中,我们用生成了一个1000点的高斯白噪声,要确认所产生的随机信号是不是高斯白噪声,我们对产生的信号进行概率密度、功率谱密度、均值分析,从分析得到结果图我们可以看出,高斯白噪声的概率密

度服从正态分布,功率谱密度在所有频域内是常数,能量相等,而均值在整个区间内为零。与理论分析的结果一致。

3,对声音信号的处理与分析 ⑴,FFT变换 原声音信号如图5

图5

图6

图7

Y = fft(X) Y = fft(X,n) Y = fft(X,[],dim) Y = fft(X,n,dim)

上图中,图6和图7是对元音频信号图5进行的FFT变换观察信号在频域中的特性,图6取的100个点进行分析,图7取的1000个点进行分析。从上面的分析结果可以看出,取100个点时,图形稀疏,但是能够完全显示出时域到频域的所有信息,但是此时的幅值只有2左右。但是取1000个点的时候,频域图形很密集,而幅值达到了200,可以看出虽然取的点数的多少不影响频域中的信息,但是影响频域中的幅值。

⑵功率谱分析

对信号的功率谱的分析有很多中方法,下面为其中的3种常见的方法。如下图8,9

图8 图9

在图8和图9中我们分别用,哈明窗周期谱、汉宁窗周期谱和韦尔奇功率谱分别对音频信号的功率谱在频域中的分布进行分析。图8中,在频域中取的100个点进行分析,在图9中我们取的1000个点对功率谱进行分析,从图像中我们看到,点数越多他的幅值就越大,点数少其幅值就比较小。因此,功率谱的幅值也与取样的点数有关。同时,对功率谱的分析发现,幅值较大的信号放大得厉害,幅值小的信号反而更加小。因此功率谱对随机信号有欺负小信号的特性。

⑶概率密度估计

随机数据的概率密度函数:表示瞬时幅值落在某指定范围内的概率,因此是幅值的函数。它随所取范围的幅值而变化。而概率密度估计是对随机信号的概率密度进行估计来描绘出估计的图形,描绘的结果如图10。

[f,xi] = ksdensity(x) f = ksdensity(x,xi) [f,xi,u] = ksdensity(...) [...] = ksdensity(...,'param

图10

上面的图形是调用MATLAB中的ksdensity()函数来仿真出来的。在软件中,我们将音频信号录入到函数中,

然后对他进行截断分别取前100个点、1000个点、30000个点进行分析。当点数比较少的时候,其概率密度的估计范围很宽,幅值很小,估计的值不是很准确。将点取多之后概率密度估计的范围就边的很窄,幅值很大,确定的值比较精确,但是当取的点进一步增多的时候,发现其概率密度估计图图形基本上不变。说明,虽然对信号的概率密度估计的点数越多,其估计的值越精确,但是在实际中,我们只要取合适的点就能使估计的值变得很精确。 ⑷最大似然函数估计

当被估计量为未知常量时,不能采用贝叶斯方法,这时可以采用比较简单的最大似然估计。最大似然估计可以简便地实现复杂估计问题的求解,而且,当观测数据足够多时,其性能也是非常好的。因此,最大似然估计在实际中得到了广泛采用。

图11

如图所示为对原始声音信号去不同点数求其最大似然估计的图形。从图中可以看出在前100个点中从1到2之间的数据出现的概率都要比在前1024个点中出现的概率大。如在前100个点中1.8出现的概率是0.11而在前1024个点出现的概率是0.08。而在整个声音信号中,1到2中的点出现的概率又要比前100个点中出现的概率大。

4,对加躁的声音信号的处理与分析

⑴混合噪声自相关

加了噪声后会对原始音频信号很多的参数发生改变,下面为加躁之后的有关数字特征。

图12

由图10知,混合噪声自相关与内部叠加的白噪声的自相关函数变化趋势几乎相同,说明叠加了白噪声的混合噪声在任意两个时刻的状态也是不相关的。

⑵原信号和混合噪声功率谱

如图11

如图11,原信号功率谱和加躁之后的功率谱在10~90之间基本上重合,但是在这个区间之外两者的功率谱图形有明显的区别,因此,在10~90的区间白噪声对原始信号的干扰作用不明显,在这个区间之外,白噪声对原始信号的干扰就比较明显了。 ⑶原信号和加躁信号的互相关

图12

如图12中对原始音频信号和加躁之后的音频信号求互相关,然后对生成的图形进行分析。在0到600之间和1400到2000之间两者的相关系数很小,几乎为0 。然而在600到1400之间两者相关系数较大,其相

关性幅值在-15到15之间波动,其中在1000附近原始声音信号和加躁的声音信号相关性最大。 ⑷IIR滤波处理

①椭圆低通滤波器

利用IIR滤波器的原理设计了一个椭圆滤波器,然后对加入噪声的音频信号进行滤波处理。

图13 图15

图14 图16 [b,a,tau] = iirgrpdelay(8, [0 0.1 1], [0 1], [2 3 1],... [1 1 1], 0.99);

[G,F] = grpdelay(b,a, 0:0.001:1, 2);

plot(F, G); hold on; plot([0 0.1 1], [2 3 1]+tau, 'r'); hold off;

如上面的仿真结果,图13为加躁声的音频信号,图14为归一化频率wp=1000,ws=1500的椭圆低通滤波器,我们用这个低通滤波器对加了噪声的音频信号进行滤波处理,处理后的结果,如图15和图16。其中,图15是滤波后的音频信号,从这个图形中我们看到,用低通滤波器进行滤波之后大部分高频信号成分已经被滤掉了,剩下的是低频成分,图16为滤波之后的频域图形,从这个图形中我们可以看到分析的结果。

②椭圆带通滤波器

图17 图19

图18 图20

如上面的仿真结果,图17为加躁声的音频信号,图18为归一化频率wp=[1000,7000],ws=[700,8000]的椭圆带通滤波器,我们用这个低通滤波器对加了噪声的音频信号进行滤波处理,处理后的结果,如图19和图20。其中,图19是滤波后的音频信号,从这个图形中我们看到,用带通滤波器进行滤波之后大部分高频和低频信号成分已经被滤掉了,剩下的是中频成分,图20为滤波之后的频域图形,从这个图形中我们可以看到分析的结果。

③椭圆高通滤波器

图21 图23

图22 图24

如上面的仿真结果,图21为加躁声的音频信号,图22为归一化频率wp=7000,ws=6000的椭圆高通通滤波器,我们用这个高通滤波器对加了噪声的音频信号进行滤波处理,处理后的结果,如图23和图24。其中,

图23是滤波后的音频信号,从这个图形中我们看到,用高通滤波器进行滤波之后大部分低频信号成分已经被滤掉了,剩下的是高频成分,图24为滤波之后的频域图形,从这个图形中我们可以看到分析的结果。 ④椭圆带阻滤波器

图25 图27

图26 图28

如上面的仿真结果,图25为加躁声的音频信号,图26为归一化频率wp=[1000,7000],ws=[1500,6000]的椭圆带阻滤波器,我们用这个带阻滤波器对加了噪声的音频信号进行滤波处理,处理后的结果,如图27和图28。其中,图27是滤波后的音频信号,从这个图形中我们看到,用带阻滤波器进行滤波之后大部分中频信号信号成分已经被滤掉了,剩下的是低频和高频成分,图28为滤波之后的频域图形,从这个图形中我们可以看到分析的结果。 四,实验心得

通过对MATLAB的学习,通过对随机信号的了解,通过用MATLAB方法对随机信号的分析和处理,结合随机信号的分析处理和MATLAB的使用方法和处理信号的原理,让我在这次试验中理解和掌握了随机信号的相关知识和处理原理。这些理解过程使我们在书本上和课堂中无法获得的。另外,在这个实验中我们还学会了如何用MATLAB来创建GUI,在GUI中创建模块和GUI的创建过程。


基于MATLAB中GUI的随机信号处理实验及相关函数代码.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:专题24 比热容、热机、能量的转化与守恒

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: