PYTHON 计算PSNR
PSNR 计算公式
对于一张RGB三通道图像,其计算公式如下:
先计算图像与Ground Truth的均方误差MSE:
再计算PSNR:
python 实现
网上的实现有下面两种:
import imageio
import numpy as np
import mathdef psnr1(img1, img2):mse = np.mean((img1/1.0 - img2/1.0) ** 2 )if mse < 1.0e-10:return 100return 10 * math.log10(255.0**2/mse)def psnr2(img1, img2):mse = np.mean( (img1/255. - img2/255.) ** 2 )if mse < 1.0e-10:return 100PIXEL_MAX = 1return 20 * math.log10(PIXEL_MAX / math.sqrt(mse))gt = imageio.imread('1.jpg')
img= imageio.imread('2.jpg')print(psnr1(gt,img))
print(psnr2(gt,img))
注意点:
使用imageio的原因是在使用scipy.misc.imread()的时候,被提示这个写法将被丢弃,所以大家也可以选择导入这个新的模块来进行图像的读写等操作。
其中psnr1函数中在两个数组相减前除以1.0,是为了将数组的类型从uint类型转化为float类型。
转载:https://blog.csdn.net/u010886794/article/details/84784453
PYTHON 计算PSNR相关推荐
- Python计算PSNR(图像峰值信噪比)
图像信噪比是用于评估两张图像相似度的指标. PSNR=10⋅log10(MAXI2MSE)=20⋅log10(MAXIMSE)P S N R=10 \cdot \log 10\left(\frac ...
- python/c++计算psnr
import cv2 import numpy as np import mathdef psnr(target, ref):#将图像格式转为float64target_data = np.array ...
- (python)计算图像峰值信噪比-PSNR、结构相似度-SSIM
计算峰值信噪比-PSNR和结构相似度-SSIM(python实现) 说明: PSNR(Peak Signal to Noise Ratio),取值范围为:[0,100],PSNR值越大两张图片越相似, ...
- 用Python计算两图像的峰值信噪比PSNR
1.首先计算mse. 对于三通道的RGB图像 计算mse的数学表达式是: 转换成代码来写: 2.得到mse后计算PSNR. 转换为代码来写: 或者将像素归一化: 理论上(数学意义上讲两个式子是相等的) ...
- Python计算Y通道或者RGB通道的PSNR_SSIM
Python计算Y通道或者RGB通道的PSNR_SSIM 一. PSNR与SSIM简介 二.代码实现 三.运行.保存结果展示 一. PSNR与SSIM简介 峰值信噪比(Peak Signal-to-n ...
- 【python】psnr原理简介及代码实现
写在前面 psnr作为图像质量评价指标,在很多图像领域如图像超分辨率.图像压缩.图像去噪等都有广泛的应用. PSNR(峰值信噪比) 简介 Peak signal-to-noise ratio(简称PS ...
- 使用OpenCV和Python计算图像的“彩色度”
使用OpenCV和Python计算图像"彩色度" 1. 效果图 2. 炫彩度量方法是什么? 3. 源代码 参考 你是否尝试过计算每个图像的炫彩值,并根据炫彩值对自己的图像数据集进行 ...
- Python计算训练数据集(测试集)中某个分类变量阴性(阳性)标签样本的不同水平(level)或者分类值的统计个数以及比例
Python计算训练数据集(测试集)中某个分类变量阴性(阳性)标签样本的不同水平(level)或者分类值的统计个数以及比例 目录
- Python计算两个numpy数组的交集(Intersection)实战:两个输入数组的交集并排序、获取交集元素及其索引、如果输入数组不是一维的,它们将被展平(flatten),然后计算交集
Python计算两个numpy数组的交集(Intersection)实战:两个输入数组的交集并排序.获取交集元素及其索引.如果输入数组不是一维的,它们将被展平(flatten),然后计算交集 目录
最新文章
- Centos 6.5 Pxe+kickstart 无人值守安装操作系统
- element input 只能输入数字_Python之input()函数
- Java 读书笔记 (十一) Number Math 类
- learn python app v3_App Store 上的“Learn Python and Scratch”
- 云计算学习资料分享:type查看命令
- flutter英语怎么说_美国人天天说的英语:“你搞反了”英语怎么说?
- java 远程监控文件系统_Java 文件系统监控(WatchService)
- python基础-函数之装饰器、迭代器与生成器
- windows部署tomcat服务自动启动,同时解决服务无法启动的问题
- python协程第一课(实现爬取自己博客)
- android开发我的新浪微博客户端-载入页面UI篇(1.1)
- OpenWrt常用命令总结
- 汇川plc c语言,汇川plc编程软件-汇川plc编程软件autoshop下载 v2.92官方版--pc6下载站...
- 注册github账号详细中文版教程【精选】
- CI521支持读写A卡和B卡,PIN对PIN直接替换CV520和CI520,软硬件兼容
- Python3爬取人人网(校内网)个人照片及朋友照片,并一键下载到本地~~~附源代码...
- S5PV210开发 -- Nand和e-MMC区别以及系统更新
- 5e服务器显示fps被锁定,csgo强制被锁60帧 被锁60fps解决方法
- 人民日报大家谈:少儿编程热,需要冷思考
- JAVA代理模式与动态代理模式
热门文章
- 我的创作纪念日--韦_恩
- Onvif的wsdl文档地址
- Melis3.0系统Quick Start
- 一种针对SOA的消息类型架构
- java redis多线程爬取国美商品信息
- 白平衡,颜色校正,颜色映射When Color Constancy Goes Wrong, brown
- linux网卡灯不亮怎么处理,电脑网卡灯不亮的原因及解决方法
- listview+GridView+侧滑菜单+RadioButton+TabLayout
- python贝叶斯算法的论文_朴素贝叶斯算法从入门到Python实践
- matlab simulink基于BPPID控制的机械臂位置仿真