计算一幅图像的信噪比

简介: 计算一幅图像的信噪比

大家好,这是我两年前写的一篇博客修正版本,本来打算删掉了,但是阅读量很多,可能对大家会有一点小小的帮助,就重新放上来吧。

适用情况

本文适用于原始图像(即不含噪声的图像)存在的情况下。

计算步骤

  1. 使用待计算SNR图像(记为A)与原始图像(记为B)做相减运算,得到一幅图像(记为C);
  2. 我们将B视为A的信息部分,将C视为A的噪声部分;
  3. 分别计算B、C的方差;
  4. 计算上述两项之比,得到SNR的值。
  5. 对SNR的值对数化,得到以dB为单位的SNR值。



附matlab代码

A=imread('xx.jpg');
B=imread('original.jpg'); 
C=imsubtract(A,B);
avg1=mean2(C);  %求图像均值
[m,n]=size(C);
s1=0;
for x=1:m
    for y=1:n
    s1=s1+(C(x,y)-avg1)^2; %求得所有像素与均值的平方和。
    end
end
C1=s1/(m*n); %利用方差公式求得
avg2=mean2(B);  %求图像均值
[m,n]=size(B);
s2=0;
for x=1:m
    for y=1:n
    s2=s2+(B(x,y)-avg2)^2; %求得所有像素与均值的平方和。
    end
end
B1=s2/(m*n); %利用方差公式求得
D1=B1/C1;
D1=10*log10(D1);


example


计算结果

SNR=10.1861dB

计算峰值信噪比

如何计算两幅图像之间的PSNR呢?请看另一篇博客,代码简洁、可读性高。

目录
相关文章
|
算法 C++ 计算机视觉
OpenCV-图像像素遍历操作的三种方法对比(程序提速)
OpenCV-图像像素遍历操作的三种方法对比(程序提速)
360 0
|
存储 算法 数据库
一起聊聊图像质量和美学评估的数据集
图像质量和美学评估是计算机视觉领域中热点的研究问题,并且极具应用前景,可与众多实际应用深度结合。评价一张图片,主要从两个方向,一个是图像的质量,如像素、清晰度、有无噪声等,一个是图像的感觉,也就是美学,如构图、颜色、内容主体等。通过这两个方面就可以评价一张图片的好坏,通过计算机视觉算法,可以为图片自动评分,得分高的图片被认为较好,可以用于推荐和搜索等应用场景。本文主要聊聊一些关于图像质量和美学评估
13129 1
|
11月前
|
PyTorch 算法框架/工具
Pytorch学习笔记(三):nn.BatchNorm2d()函数详解
本文介绍了PyTorch中的BatchNorm2d模块,它用于卷积层后的数据归一化处理,以稳定网络性能,并讨论了其参数如num_features、eps和momentum,以及affine参数对权重和偏置的影响。
1219 0
Pytorch学习笔记(三):nn.BatchNorm2d()函数详解
|
11月前
|
机器学习/深度学习 人工智能 文字识别
ultralytics YOLO11 全新发布!(原理介绍+代码详见+结构框图)
本文详细介绍YOLO11,包括其全新特性、代码实现及结构框图,并提供如何使用NEU-DET数据集进行训练的指南。YOLO11在前代基础上引入了新功能和改进,如C3k2、C2PSA模块和更轻量级的分类检测头,显著提升了模型的性能和灵活性。文中还对比了YOLO11与YOLOv8的区别,并展示了训练过程和结果的可视化
17773 0
|
机器学习/深度学习 文字识别 算法
[Halcon&图像] 缺陷检测的一些思路、常规检测算法
[Halcon&图像] 缺陷检测的一些思路、常规检测算法
5378 1
|
并行计算 PyTorch Linux
大概率(5重方法)解决RuntimeError: CUDA out of memory. Tried to allocate ... MiB
大概率(5重方法)解决RuntimeError: CUDA out of memory. Tried to allocate ... MiB
8941 0
|
计算机视觉
OpenCV-矩形边框cv::boundingRect
OpenCV-矩形边框cv::boundingRect
242 0
|
机器学习/深度学习 计算机视觉 文件存储
【轻量化网络系列(3)】MobileNetV3论文超详细解读(翻译 +学习笔记+代码实现)
【轻量化网络系列(3)】MobileNetV3论文超详细解读(翻译 +学习笔记+代码实现)
5793 0
【轻量化网络系列(3)】MobileNetV3论文超详细解读(翻译 +学习笔记+代码实现)
|
算法 计算机视觉
图像处理之计算二值连通区域的质心
图像处理之计算二值连通区域的质心
131 0
|
机器学习/深度学习 数据可视化 Python
No module named 'pytorch_wavelets'问题如何解决
【6月更文挑战第21天】No module named 'pytorch_wavelets'问题如何解决
1576 0