• 香农定理


香农定理(Shannon Theory)给出了信道信息传送速率的上限(比特每秒)和信道信噪比及带宽的关系。香农定理可以解释现代各种无线制式由于带宽不同,所支持的单载波最大吞吐量的不同。

在有随机热噪声的信道上传输数据信号时,信道容量Rmax与信道带宽W,信噪比S/N关系为: Rmax=W*log2(1+S/N)。注意这里的log2是以2为底的对数。


简介











类比:城市道路上的汽车的车速(业务速率)和什么有关系?

香农定理_第1张图片图1 行车速度的影响



除了和自己车的动力有关之外,主要还受限于道路的宽度(带宽)和车辆多少、红灯疏密等其他干扰因素(信噪比),如图1所示。

俗话说:“有线的资源是无限的,而无线的资源却是有限的。”无线信道并不是可以任意增加传送信息的速率,它受其固有规律的制约,就像城市道路上的车一样不能想开多快就开多快,还受到道路宽度、其他车辆数量等因素影响。这个规律就是香农定理

香农定理是所有通信制式最基本的原理,它描述了有限带宽、有随机热噪声信道的最大传输速率与信道带宽、信号噪声功率比之间的关系。其用公式可表示为:

香农定理_第2张图片

其中:C是信道支持的最大速度或者叫信道容量;B是信道的带宽;S是平均信号功率;N是平均噪声功率;S/N即信噪比。

香农定理给出了信道信息传送速率的上限(比特每秒)和信道信噪比及带宽的关系。香农定理可以解释现代各种无线制式由于带宽不同,所支持的单载波最大吞吐量的不同。

理解香农公式须注意以下几点:

(1)信道容量由带宽及信噪比决定,增大带宽、提高信噪比可以增大信道容量;

(2)在要求的信道容量一定的情况下,提高信噪比可以降低带宽的需求,增加带宽可以降低信噪比的需求;

(3)香农公式给出了信道容量的极限,也就是说,实际无线制式中单信道容量不可能超过该极限,只能尽量接近该极限。在卷积编码条件下,实际信道容量离香农极限还差3dB;在Turbo编码的条件下,接近了香农极限。

(4)LTE中多天线技术没有突破香农公式,而是相当于多个单信道的组合。

香农定理可以变换一下形式成为

香农定理_第3张图片

这个C/B就是单位带宽的容量(业务速率),就是频谱利用率的概念,也就是说香农定理给出了一定信噪比下频率利用率的极限。

在有随机热噪声的信道上传输数据信号时,数据传输率Rmax与信道带宽W,信噪比S/N关系为: Rmax=W*log2(1+S/N)。注意这里的log2是以2为底的对数,下同。


在信号处理和信息理论的相关领域中,通过研究信号在经过一段距离后如何衰减以及一个给定信号能加载多少数据后得到了一个著名的公式,叫做香农(Shannon)定理。它以比特每秒(bps)的形式给出一个链路速度的上限,表示为链路信噪比的一个函数,链路信噪比用分贝(dB)衡量。因此我们可以用香农定理来检测电话线的数据速率。

香农定理由如下的公式给出: C=W*log2*(1+S/N) 其中C是可得到的链路速度,W是链路的带宽,S是平均信号功率,N是平均噪声功率,信噪比(S/N)通常用分贝(dB)表示,分贝数=10×log10(S/N)。

通常音频电话连接支持的频率范围为300Hz到3300Hz,则B=3300Hz-300Hz=3000Hz,而一般链路典型的信噪比是30dB,即S/N=1000,因此我们有C=3000×log2(1+ 1000),近似等于30Kbps,是28.8Kbps调制解调器的极限,因此如果电话网络的信噪比没有改善或不使用压缩方法,调制解调器将达不到更高的速率。


应用



香农定理用来求信道的最大传输速率,即信道容量,当通过信道的信号速率超过香农定理的信道容量时,误码率显著提高,信息质量严重下降。需要指出的是这里的信道容量只是理论上可以达到的极限,实际如何达到,该定理不能说明。


看到很多朋友都在谈论信噪比这个概念,正好前段时间学到了这个,特此拿出来班门弄斧一下。 

  信噪比--SNR(有时写成S/N)是signal-to-noise ratio的缩写,是指有用信号(规定输入电压下的输出信号电压)和噪声信号(输入电压切断时,输出所残留之杂音电压)之间的比值。 

  为了得到的比值显示更为直观,我们往往把S/N写成分贝(decibels)-----缩写成dB 

  S/N = 10 log10(S/N)--------S:有用信号;N:噪声信号。 

  (注意如果信号以功率来表示,就在对数前乘以10,如果以振幅表示(amplitude),就乘以20:S/N = 20 log10(S/N))。 

  所以当S=N时,SNR=0dB,这时得到的信号根本不可用。由此可琩B直越大,S/R的比值就越大,我们得到的有用信号比值就越大,对于声音信号来说,还原的声音信号就越“干净”,比如90dB,那S/N的比值就要达到10的9次方(功率)-----通俗的讲平均出现1W噪声信号,就有1000000000W有用信号,这是一个相当可观的数值了。 

顺便讲一下为什么功率就乘以10,而电压(电流)就乘以20,其实很简单(这里的P表示功率,E表示电压,I表示电流,Z表示阻抗)。 

SNR信噪比是指音箱回放的正常声音信号与无信号时噪声信号(功率)的比值。用dB表示。例如,某音箱的信噪比为80dB,即输出信号功率比噪音功率大80dB。信噪比数值越高,噪音越小。 

    国际电工委员会对信噪比的最低要求是前置放大器大于等于63dB,后级放大器大于等于86dB,合并式放大器大于等于63dB。合并式放大器信噪比的最佳值应大于90dB,CD机的信噪比可达90dB以上,高档的更可达l10dB以上。信噪比低时,小信号输入时噪音严重,整个音域的声音明显感觉是混浊不清,所以信噪比低于80dB的音箱不建议购买,而低音炮70dB的低音炮同样原因不建议购买。

信噪比可以用图像信号和噪声信号的方差(局部方差,3×3或5×5的块)比来估计。可认为图像平坦区域的方差为噪声方差,细节区域的方差为图像方差。具体操作时还需校正,校正公式为:1.04*b-7(b计算处的方差比),该方法适应的信噪比范围为20-50dB。


SNR(Signal to Noise Ratio,信噪比):

   指在规定输入电压下的输出信号电压与输入电压切断时,输出所残留之杂音电压之比,也可看成是最大不失真声音信号强度与同时发出的噪音强度之间的比率,通常以S/N表示。一般用分贝(dB)为单位,信噪比越高表示音频产品越好,常见产品都选择60dB以上。

SNR(信噪比)在不同的应用领域有不同的定义方法,其对应的估计方法也不同。我们这里的任务是对一段采集到的(含噪)信号进行SNR估计,就是说我们面对着一段采集信号x(k)=s(k)+n(k),k=1,2…,N;其中s是有用信号(以下简称信号)部分,n是噪声部分。我们需要合理地估计x的信噪比。

在上述情况下,SNR定义为信号功率与噪声功率之比的对数,即:

SNR = 10*log10(Ps/Pn)(db)   [1]

由此可知,想要合理地估计SNR,首先需要用正确的方法估计Ps和Pn。

 

在对Ps和Pn进行估计的时候,首先需要明确的是在我们的估计问题中,有用信号s是确定信号还是随机信号。这与我们进行SNR估计的目的有关。如果我们的目的只是计算采集来的这一段x的信噪比(而不打算用这个信噪比产生任何其他推论,比如我们试图观察并记录不同时间段的信噪比变化情况),那么我们可以将信号s看作是确定信号,因为这时我们是在对这一段已经客观产生的板上钉钉的没有任何随机性的x进行分析,准确地说,我们这个时候是在进行SNR计算或者SNR测量(而不是SNR估计);如果我们不仅仅要计算这一段x的信噪比,而是要在此基础上推断之后采集的x1,x2….的信噪比的情况(比如我们试图对一个系统的SNR性能进行估计),那么这时我们就要把信号s看作是随机信号,因为我们是要从这段x中提取出对我们之后分析x1,x2…有用的信息,这时才是名副其实的SNR估计。

而对于噪声n,需要明确的是,在绝大多数情况下,从采集到的x中分离出s和n是不现实的。也就是说我们必须在进行本文涉及的SNR分析之前,先采集一段纯噪声信号,通过对该段纯噪声信号的分析得到关于噪声的先验知识,之后将它们应用到本文涉及的SNR分析中。因此,从这个意义上讲,在绝大多数情况下,我们无法将噪声n看作确定信号,只能将其看作随机信号来处理。

 

以下我们分别说明Ps和Pn的估计方法。

1.  对Ps的估计(本部分噪声功率暂时用Pn表示)

(1)    将s看作确定信号

将s看作确定信号,就是说s的所有信息都已确定下来,我们只需要将必要的信息提取出来计算SNR。根据功率(就是平均功率)的定义,

Ps = 1/N*sum(abs(s(k))^2)    [2]

从理论上说,我们应该从x中减去n,只分析s的部分。但是由于实际情况下很难从x中分离出s和n,因此只能将x当作s进行后续计算。这在Ps>>Pn的情况下误差不会很大,即要求x的信噪比不是很低。因此,

Ps= 1/N*sum(abs(x(k))^2)    [3]

根据帕塞瓦尔定理,s的时域能量和频域能量相等(点数问题似乎需要考虑一下),因此将x变换到频域计算1/N*sum(abs(X(f))^2)的结果应该与[3]式相同。可知,将s看作确定信号时x的SNR计算公式为:

SNR = 10*log10(sum(abs(x(k))^2)/(N*Pn))    [4]

这里需要有两点说明。一是有些地方说Ps可以用max(abs(s(k)))^2/N计算,我觉得这种方法只是对[4]式的一种简化;二是根据x=s+n,可知x^2=(s+n)^2!=s^2+n^2,也就是说x、s、n三者不能在能量、功率层面出现任何的加减运算。加减运算只可能出现在幅度层面。而由于噪声n的幅度是不可知的(因为是随机变量所以不可分离),因此在本文所提及的情况中关于加减的想法要坚决摒除。

(2)    将s看作随机信号

在将s看作随机信号的时候,我们需要用某个对随机信号不变的量来估计SNR,因为只有这样才能使估计结果对推断之后的SNR有作用。对于宽平稳随机过程x,其相关函数Rxx只与平移量有关,而功率谱S(f)作为Rxx的Fourier变换,亦是相对固定的量(是么)。因此我们可以首先对随机信号x(同样由于无法分离s和n,只能分析x)进行功率谱估计,得到S(f),之后对S(f)求均值得到平均功率E[S(f)]。若对x进行的是M点的功率谱估计,那么

Ps = 1/M*sum(Ss(f))    [5]

这里要注意单双边的问题。对于随机信号x,每一个x(k)均是随机变量,x的FFT不存在,因此无法利用求FFT的方法来计算功率谱,只能通过其他方法来估计功率谱。 功率谱估计的方法很多,最基本的方法是求得相关函数Rxx后对其进行FFT,另外,ARMA谱估计等现代谱估计方法也是可以的,而且会得到分辨率更高的功率谱。

对于宽平稳随机过程,由于相关函数Rxx只与平移量有关,因此二阶矩(相当于平移量是0)也是不变的量,所以Ps也可以通过

Ps = 1/N*sum(abs(s(k))^2)    [6]

求得。综上可知,将s看作随机信号时,

SNR = 10*log10(sum(Ss(f))/(M*Pn)) = 10*log10(sum(abs(x(k))^2)/(N*Pn))   [7]

 

2.  对Pn的估计

前面已经提到过,n是一定要当作随机变量看待的。因此,根据1(2)中的分析,Pn同样存在两种估计方法:

Pn = 1/M*sum(Sn(f))   [8]

 = 1/N*sum(abs(n(k))^2)  [9]

需要注意的是,对Pn的估计方法要和Ps的估计方法对应,比如Ps采用[5]式,那么Pn要相应地采用[8]式;Ps采用[6]式,Pn要相应地采用[9]式。

 

综上所述,对含噪信号SNR估计方法如下:

对于确定性信号s, SNR = 10*log10(sum(abs(x(k))^2)/ sum(abs(n(k))^2)); [10]

对于随机信号s,SNR = 10*log10(sum(Ss(f))/sum(Ss(f))) = 10*log10(sum(abs(x(k))^2)/ sum(abs(n(k))^2))   [11]

 

2.

 

图象的信噪比应该等于信号与噪声的功率谱之比,但通常功率谱难以计算,有一种方法可以近似估计图象信噪比,即信号与噪声的方差之比。首先计算图象所有象素的局部方差,将局部方差的最大值认为是信号方差,最小值是噪声方差,求出它们的比值,再转成dB数,最后用经验公式修正,具体参数请参看“反卷积与信号复原(邹谋炎)”。

 

信噪比可以用图像信号和噪声信号的方差比来估计。可认为图像平坦区域的方差为噪声方差,细节区域的方差为图像方差。具体操作时还需校正,校正公式为:1.04*b-7(b计算处的方差比),该方法适应的信噪比范围为20-50db。

 

3.(这是MSE,应用于图像处理前后的比较,并非信噪比)

 

信噪比通常用于比较原始图象(一般是幅标准图如LENA图等)  

  然后你对这幅图象进行了各种图象处理如压缩,滤波等  

  这样得到的一幅新图质量上受到了影响  

  信噪比就是可衡量这种质量损失的多少的一种度量  

  其公式为这里不好写  

  用VC实现为  

      double   temp1=0.0;double   temp2=0.0;  

  for(int   i=0;i

    for(int   j=0;j

    {    

          temp1=temp1+OldImage[i][j]*OldImage[i][j];  

          timp2=temp2+(OldImage[i][j]-NewImage[i][j])*(OldImage[i][[j]-NewImage[i][j];  

    }  

  }  

  double   SNR=255*255/Temp2*ROW*COL;  

  SNR=10*log10(SNR);//SNR即为信噪比  

  double   SNR2=temp1/temp2;  

  SNR2=10*log10(SNR2);//SNR2即为峰值信噪比

 

4.

 

利用图象平均值与局域图象的方差的极大值之比来计算信噪比  

   

      SNR=M/LSD(MAX)  

   

  M是图象的平均值,LSD(MAX)为图象块(4*4,8*8,........)的方差的极大值(极大或极小有待商榷,因为极大值在实际中太大,会造成数据非常小).

 

 

文章其中提到如下:这里,我们定义了图像的信噪比SNR:. SNR二人mem/o(2). 式中:尤m。m为信号的平均灰度值:0局部窗口内背景灰度标准差。

地址如下:http://www.ceps.com.tw/cepsdo/10018891-200411-26-6-54-57-a.pdf