PSNR

概念
psnr是“Peak Signal to Noise Ratio”的缩写,即峰值信噪比,是一种评价图像的客观标准,它具有局限性,一般是用于最大值信号和背景噪音之间的一个工程项目。
PSNR的单位为dB。值越大,代表失真越少。

用处
用来评定图片的图像质量

PSNR值

高于40dB:说明图像质量极好(即非常接近原始图像),

30—40dB:通常表示图像质量是好的(即失真可以察觉但可以接受),

20—30dB:说明图像质量差;

低于20dB:图像不可接受

计算方法

MSE表示当前图像X和参考图像Y的均方误差(MeanSquare Error),H、W分别为图像的高度和宽度;n为每像素的比特数,一般取8,即像素灰阶数为256。

MATLAB实现

function PSNR = psnr(f1, f2)
%计算两幅图像的峰值信噪比
%f1、f2:两幅图像
k = 8;
%k为图像是表示地个像素点所用的二进制位数,即位深。
fmax = 2.^k - 1;
a = fmax.^2;
MSE =(double(im2uint8(f1)) -double( im2uint8(f2))).^2;
b = mean(mean(MSE));
PSNR = 10*log10(a/b);

MATLAB--数字图像处理 PSNR相关推荐

  1. 《精通Matlab数字图像处理与识别》一6.2 傅立叶变换基础知识

    本节书摘来自异步社区<精通Matlab数字图像处理与识别>一书中的第6章,第6.2节,作者 张铮 , 倪红霞 , 苑春苗 , 杨立红,更多章节内容可以访问云栖社区"异步社区&qu ...

  2. matlab fspeical,MATLAB数字图像处理.doc

    MATLAB数字图像处理 MATLAB常用图像操作 转换图像类型 例1.对一幅图像进行二值化处理,代码及结果如下: load trees BW=im2bw(X,map,0.4); imshow(X,m ...

  3. Matlab数字图像处理——图像处理工具箱Image Processing Toolbox

    Image Processing Toolbox 图像处理工具箱包含的功能: 图像的读取和保存 图像的显示 创建GUI 图像的几何变换 图像滤波器设计及线性滤波 形态学图像处理 图像域变换 图像增强 ...

  4. Matlab数字图像处理——图像文件的读取

    文章目录 一.Matlab中获取图像信息的函数 imfinfo 二.Matlab读取图像文件的函数 imread 三.Matlab保存图像文件的函数 imwrite 完整目录 一.Matlab中获取图 ...

  5. matlab数字图像处理课程设计报告,数字图像处理初步-实验1

    MATLAB数字图像处理初步 通过实验对MatLab软件的基本使用基本的了解,学会使用MatLab软件来读取一个特定格式的图像,并通过相关的命令语句对图像进行格式转换.图像压缩.二值化等的处理,掌握利 ...

  6. matlab对于处理数字图像的优点,学习MATLAB数字图像处理经验谈

    学习MATLAB数字图像处理经验谈 学习数字图像处理经验谈 (赵小川) 一.面向应用:层层分解.抓住要点 我们学习数字图像处理的最终目的还是应用,不管是用它来研制产品还是研发项目抑或是研究课题,都要用 ...

  7. 【基于matlab数字图像处理GUI代码】_数字图像处理考核论文_大作业_项目

    基于matlab数字图像处理GUI代码 代码: function varargout = Image_processing_GUI(varargin) % IMAGE_PROCESSING_GUI M ...

  8. MATLAB说明图像增强,MATLAB数字图像处理(二)图像增强

    1         图像增强 1.1            直方图均衡化 对于灰度图像,可以使用直方图均衡化的方法使得原图像的灰度直方图修正为均匀的直方图. 代码如下: 1 2 3I2=histeq( ...

  9. MATLAB数字图像处理(一)

    了解MATLAB数字图像处理 MATLAB全称是Matrix Laboratory (矩阵实验室) ,数字图像是以数字方式存储的图像.将图像在空间上离散.量化存储每一个离散位置的信息就可以得到简单的数 ...

  10. 实验1 matlab图像处理初步,实验一 MATLAB数字图像处理初步

    实验一 MATLAB数字图像处理初步 一.实验目的 1.熟悉及掌握在MATLAB中能够处理哪些格式图像. 2.熟练掌握在MATLAB中读取图像,并获取图像的大小.颜色.高度.宽度等等相关信息. 3.掌 ...

最新文章

  1. Swift入门篇-基本类型(1)
  2. 2016年秋季个人阅读计划
  3. JS中三目运算符和if else的区别
  4. Python使用@property方法改变方法为参数
  5. fatal error C1189: #error : Building MFC application with /MD[d]
  6. Java程序员如何在编码中减少bug存在
  7. 为何大部分人成不了技术专家?
  8. 支撑百万级并发,Netty如何实现高性能内存管理
  9. 关于javaScript注册事件传递参数的浅析
  10. Nginx源码分析 - 主流程篇 - 多进程的惊群和进程负载均衡处理(15)
  11. CentOS6.4 X86_64 kvm+PXE备忘
  12. devc运行窗口不显示_编写Qt多窗口程序
  13. 扫雷游戏计算机版,扫雷经典版电脑版
  14. CentOS7各个版本镜像下载地址及说明、Everything版
  15. Spring Boot 2.x 基础案例:整合Dubbo 2.7.3 Nacos1.1.3(配置中心)
  16. vlookup函数使用过程
  17. 青龙面板 JDC2.0.0扫码获取cookie教程
  18. OGG REPA进程 Error ORA-01031报错处理
  19. 完美解决丨1. **`SyntaxError: invalid syntax`**
  20. iOS RunLoop基础和应用举例

热门文章

  1. matlab括号不对称,关于matlab的Error: Unbalanced or misused parentheses or brackets.什么意思?...
  2. VVC系列(三)xCompressCTU、xCompressCU和xCheckModeSplit解析
  3. 【CentOS-7.4】Sphinx 安装与简单配置
  4. 从空间、时间和时空动力学角度研究大脑的动态特性
  5. Unity AB加载预设体导致Rotation发生变化
  6. 大道至简(周爱民)第二章-----读后感
  7. 自然语言处理(NLP):08 PyTorch深度学习之LSTM微博评论情感分析
  8. 大学生找工作如何做自我介绍?如何做好自我介绍?
  9. D - Hangar Hurdles(kruskal重构树+树上倍增)
  10. 拟合美国人口matlab编码,预测美国人口 - MATLAB Simulink Example - MathWorks 中国