您的位置:首页 > 编程语言 > MATLAB

统计、概率和噪声MATLAB图解

2018-02-04 14:03 393 查看

均值和方差

均值



方差



MATLAB自带的var和std也是如此定义方差和标准差的,注意是除以N-1而不是N!

如下图生成一个1000点的rand数:



其均值和方差分别为0.4954和0.2843。

在信号处理中,均值也叫DC值,标准差叫做AC值。而RMS即均方根既测量了DC分量也测量了AC分量。

均方根RMS



上图中的RMS=0.5711。

一般随机数的峰峰值等于其标准差的6~8倍,从上图中可以验证此种关系。



柱状图,概率质量函数和概率密度函数

下图是8bit ADC结果,共取得了256000个点的信号。第一个图是其中128个sample的图示,其直方图在第二个图中显示。





直方图显示了每个值出现的次数。直方图中所有值的和等于输入数据sample的点数。上图不够平滑,当所有256000个点都用于计算直方图时如下所示:



直方图根据获取的信号得到的,而概率质量函数pmf是直方图潜在蕴含的过程表示。直方图一般都由有限数据获取,而pmf可能有无限信号得到,pmf可以由直方图来估计或者数学技巧推导而来。

pmf的纵轴与直方图不同的是其为分数表示。即出现次数除以总次数。因此代表某个值出现的概率。直方图和pmf都是用于离散信号的表示,作为对应的是,pdf即概率密度函数用来对模拟信号进行表示。



需要注意的是概率密度,其概率的计算是某一范围的,例如120~121之间概率密度为0.03,则其概率为(121-120)*0.03=0.03。如果在某范围内不是恒定值,那这个过程就是积分。从-∞到+∞概率密度的积分为1。

下图给出了几个常见的波形的概率密度函数曲线:



当信号可能取的值远大于信号点数时计算直方图会有问题,这种情况很容易在浮点表示时发生。例如,整数表示可能取值3或4,而浮点表示在3和4之间可能有数以百万计的数存在。

解决这一问题的方法是binning。即随机选取直方图的长度。例如选为1000点,这些选取的点叫做bins。这些bin代表的是某个范围内的数据。选择bins个数是在横轴和纵轴分辨率之间做折中。



正态分布



均值为0,方差为1的正态分布:



由于pdf的积分信号在某个范围的概率。而正太分布pdf的积分叫做累计分布函数cdf。

数字噪声的产生

数字噪声产生的核心是随机数的产生。

10000000点随机数用ksdensity概率密度估计来计算概率密度然后画出如下。0~1均匀分布。



两个10000000点随机数相加,三角分布。



12个10000000点随机数相加,正态分布。



以上算法的数学基础是中心极限定理。其简单描述是很多随机数相加变为正态分布,无论这些随机数服从什么分布。中心极限定理也说明了为何正态分布如此广泛。
另一种生成正态分布的方法:



随机数的产生都是由一个种子seed开始,先产生一个0~1之间的数,然后经过定点化算法,产生另外一个0~1之间的数,新的数就是随机数并且存在内部作为下一次随机数的产生。



你可以将最初的seed设置为相同,这样每次产生相同的随机数,这样一般用在程序debug中。如果要产生真正的随机数一般将根据时间产生。随机数一般叫伪随机因为产生的随机数都是根据之前的数。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: