zoukankan      html  css  js  c++  java
  • 信噪比——信号加噪相关的知识

    信噪比:即Signal noise ratio , 即SNR;

    它的单位为 dB, 公式为: SNR = 10lg(PS / PN), 其中 ps 表示信号的有效功率, pn 表示噪声的有效功率;

    • 何计算一个信号的功率呢?

    假如有一个一维的信号 x ,它的平均功率可以这么算:

    power = sum(x .* x ) / size(x)              

    • 有时候,会用dbW 来描述一个信号的功率,这是什么意思呢?

    dBw 是一个表示功率绝对值的单位(以1 W 功率为基准, dBm 以 1mW为基准)

    计算公式为: image

    • 什么样的噪声为高斯白噪声呢?

    其中的白噪声,指的是:功率谱密度服从均匀分布, 而高斯指的是:噪声的幅度分布服从高斯分布;

    百度百科的两种定义:

    定义一:如果一个噪声,它的瞬时值服从高斯分布,而它的功率谱密度又是均匀分布的,则称它为高斯白噪声。

    定义二:在一般的通信系统的工作频率范围内热噪声的频谱是均匀分布的,好像白光的频谱在可见光的频谱范围内均匀分布那样,所以热噪声又常称为白噪声。由于热噪声是由大量自由电子的运动产生的,其统计特性服从高斯分布,故常将热噪声称为高斯白噪声。

    • 在 matlab中生成高斯白噪声的函数:

     wgn()函数, 用它可以生成高斯白噪声,用法很多,说一下基本的用法:

    y = wgn(m,n,p),    生成 m * n 的高斯白噪声, 其中p 表示生成噪声的功率,单位为dBw;

    • 给一个信号加入高斯白噪声的函数:

    awgn()函数,即 add white gaussian noise to signal;

    用法1:

    y = awgn(x,snr)                 给信号x 加入指定的 SNR 的高斯白噪声,其中默认原信号x 的功率为 0 dBw, 即 1w;

    y = awgn(x,snr,sigpower)        给信号x 加入指定的 SNR 的高斯白噪声,sigpower用于指定原信号x的功率,单位为dBw;
    y = awgn(x,snr,'measured')      给信号x 加入指定的 SNR 的高斯白噪声,它会先测量一个原信号x 的功率;

    所以呢,我们记住第三个方式就可以啦;

  • 相关阅读:
    [图论入门]图的储存
    [五年CSP三年模拟]洛谷2020初赛模拟赛分析
    [五年CSP三年模拟]CSP2020-J冲刺
    [算法入门]KMP算法
    [算法入门]单调队列
    有关递推与递归的回顾
    软工实践个人总结
    第02组 每周小结 (3/3)
    第02组 每周小结 (2/3)
    第02组 每周小结 (1/3)
  • 原文地址:https://www.cnblogs.com/yinheyi/p/7429127.html
Copyright © 2011-2022 走看看