信号处理领域的信噪比即SNR--Singal to Noise Ration,又称讯噪比,即放大器的输出信号的电压与同时输出的噪声电压的比,常常用分贝数表示。

设备的信噪比越高表明它产生的杂音越少。一般来说,信噪比越大,说明混在信号里的噪声越小,声音回放的音质量越高,否则相反。

       图像的信噪比应该等于信号与噪声的功率谱之比,但通常功率谱难以计算, 有一种方法可以近似估计图像信噪比,即信号与噪声的方差之比。首先计算图像所有象素的局部方差,将局部方差的最大值认为是信号方差,最小值是噪声方差,求出它们的比值,再转成dB数,最后用经验公式修正。


峰值信噪比经常用作 图像压缩等领域中信号重建质量的测量方法,它常简单地通过 均方差MSE)进行定义。两个 m× n单色图像 IK,如果一个为另外一个的噪声近似,那么它们的的 均方差定义为:




图片信噪比 python 图片信噪比低_方差



峰值信噪比定义为:



图片信噪比 python 图片信噪比低_图片信噪比 python_02



其中, MAXI是表示图像点颜色的最大数值,如果每个采样点用 8 位表示,那么就是 255。更为通用的表示是,如果每个采样点用 B 位线性 脉冲编码调制表示,那么 MAXI 就是




图片信噪比 python 图片信噪比低_维纳滤波_03


对于每点有RGB三个值的彩色图像来说峰值信噪比的定义类似,只是均方差是所有方差之和除以图像尺寸再除以 3。


图像压缩中典型的峰值信噪比值在 30 到 40dB 之间,愈高愈好。

%%%%%%%%%%%%%%%%% 
 
  
(I 是原图像,K是滤波后的图像,默认原图无噪声,测试那种滤波效果好)
  

   video=mmreader('che2.AVI'); 
  
  I1=read(video,590);   
 I1=rgb2gray(I1);   
 [m,n]=size(I1);   
 J=imnoise(I1,'gaussian',0,0.002); %加入高斯噪声   
 %进行均值滤波   
 h=fspecial('average',3);    %fspecial函数用于产生预定义滤波器   
 I2=uint8(round(filter2(h,I1)));   %filter2函数用于图像滤波,此处h是滤波参数(均值),I1是要处理的图像   
 %进行中值滤波   
 I3=medfilt2(J,[3,3]);   %medfilt2函数用于图像的中值滤波   
 %进行维纳滤波   
 I4=wiener2(J,[3,3]);%进行一次维纳滤波   
 I5=wiener2(I4,[3,3]);%进行二次维纳滤波   
 subplot(2,3,1),imshow(I1),title('原图象')   
 subplot(2,3,2),imshow(J),title('加噪声图象')   
 subplot(2,3,3),imshow(I2),title('均值滤波后图象')   
 subplot(2,3,4),imshow(I3),title('中值滤波后图象')   
 subplot(2,3,5),imshow(I4),title('维纳滤波后图象')   
 I1=double(I1);   
 I2=double(I2);   
 I3=double(I3);   
 I4=double(I4);   
 I5=double(I5);   
 s2=0;   
 s2=double(s2);   
 s3=0;   
 s3=double(s3);   
 s4=0;   
 s4=double(s4);   
 s5=0;   
 s5=double(s5);   
 for i=1:m   
     for j=1:n    

         s2=s2+(I1(i,j)-I2(i,j))^2; 
  
    s3=s3+(I1(i,j)-I3(i,j))^2;   
    s4=s4+(I1(i,j)-I4(i,j))^2;   
    s5=s5+(I1(i,j)-I5(i,j))^2;   
     end   
 end   
 MSE2=s2/(m*n)   
 MSE3=s3/(m*n)   
 MSE4=s4/(m*n)   
 MSE5=s5/(m*n)   
  PSNR2=10*log10(double(255^2/MSE2))   
   PSNR3=10*log10(double(255^2/MSE3))   
    PSNR4=10*log10(double(255^2/MSE4))   
     PSNR5=10*log10(double(255^2/MSE5))    

   PSNR2 =                   
 
  

      33.6596 
 
  
   
 PSNR3 =    

      32.6051 
 
  
   
 PSNR4 =    

      33.8043 
 
  
   
 PSNR5 =    

      34.3825


一般情况,信噪比越大越好。