Python 计算彩色图像信噪比

Python下图像信噪比PSNR计算,主要有两种方法,方法一是使用skimage.measure库里的compare_psnr方法;方法二是根据公式自己定义psnr函数。

            公式
本代码块基于python3.5

from PIL import Image
import math
import numpy as np
import cv2
from skimage.measure import compare_psnr
#导入你要测试的图像
im1 = np.array (Image.open ('198.jpg'),'f')#将图像1数据转换为float型
im2 = np.array (Image.open ('198_result.bmp'),'f')#将图像2数据转换为float型
im2_2 = im2[:,:,0]
#im2_2 = im2im1_2 = cv2.resize(im1,None,fx=2,fy=2,interpolation=cv2.INTER_CUBIC)
im1_2_2 = cv2.resize(im1_2,None,fx=0.5,fy=0.5,interpolation=cv2.INTER_CUBIC)
im2_2_2 = cv2.resize(im2_2,None,fx=0.5,fy=0.5,interpolation=cv2.INTER_CUBIC)
##############Method I
def psnr(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)
##############Method II
p1 = compare_psnr(im1_2, im2_2,255)
p2 = compare_psnr(im1, im1_2_2,255)print(psnr(im1_2,im2_2))
print(psnr(im1,im1_2_2))
print(psnr(im1,im2_2_2))
print(p1,p2)

文末附 https://blog.csdn.net/iliangwei0/article/details/78853586博客里Python 计算彩色图像信噪比的方法。

Python 计算彩色图像信噪比相关推荐

  1. (python)计算图像峰值信噪比-PSNR、结构相似度-SSIM

    计算峰值信噪比-PSNR和结构相似度-SSIM(python实现) 说明: PSNR(Peak Signal to Noise Ratio),取值范围为:[0,100],PSNR值越大两张图片越相似, ...

  2. python opencv 峰值信噪比

    用Python计算两图像的峰值信噪比PSNR 图像信噪比是用于评估图像超分结果的指标 def psnr(img1, img2):mse = np.mean( (img1/255. - img2/255 ...

  3. Python计算Y通道或者RGB通道的PSNR_SSIM

    Python计算Y通道或者RGB通道的PSNR_SSIM 一. PSNR与SSIM简介 二.代码实现 三.运行.保存结果展示 一. PSNR与SSIM简介 峰值信噪比(Peak Signal-to-n ...

  4. 使用OpenCV和Python计算图像的“彩色度”

    使用OpenCV和Python计算图像"彩色度" 1. 效果图 2. 炫彩度量方法是什么? 3. 源代码 参考 你是否尝试过计算每个图像的炫彩值,并根据炫彩值对自己的图像数据集进行 ...

  5. Python计算训练数据集(测试集)中某个分类变量阴性(阳性)标签样本的不同水平(level)或者分类值的统计个数以及比例

    Python计算训练数据集(测试集)中某个分类变量阴性(阳性)标签样本的不同水平(level)或者分类值的统计个数以及比例 目录

  6. Python计算两个numpy数组的交集(Intersection)实战:两个输入数组的交集并排序、获取交集元素及其索引、如果输入数组不是一维的,它们将被展平(flatten),然后计算交集

    Python计算两个numpy数组的交集(Intersection)实战:两个输入数组的交集并排序.获取交集元素及其索引.如果输入数组不是一维的,它们将被展平(flatten),然后计算交集 目录

  7. Python使用datetime中的timedelta模块实现时间增减:python计算100天后是哪年那月那日?

    Python使用datetime中的timedelta模块实现时间增减:python计算100天后是哪年那月那日? 目录

  8. python计算特征的统计值并文本输出

    python计算特征的统计值并文本输出 # 输出统计分位数 df.describe(percentiles=[0.05, 0.25, 0.5, 0.75, 0.95]) featname:A => ...

  9. python计算特征与目标的相关性并可视化

    python计算特征与目标的相关性并可视化 pandas计算相关性 # 相关性 tips.corr() Out[2]: total_bill tip size total_bill 1.000000 ...

  10. python计算时间差

    python计算时间差 # 使用datetime 和 timedelta import datetime old_time = datetime.datetime.now() print(old_ti ...

最新文章

  1. 基础篇:7.Content provider与Content Resolver实现数据共享
  2. redis 原码安装
  3. 聚焦一切关联需求-企业数字化转型:外部驱动力之客户篇
  4. Python函数式编程简介(二)返回函数
  5. 学习笔记(37):Python实战编程-yield实现生成器
  6. java vector 输出_5.7(java学习笔记)Vector、Enumeration
  7. ssh报错解决:Permission denied, please try again
  8. 图标字体化浅谈[转]
  9. 线性代数及其应用(第三版)1.1节习题解答
  10. STM32程序的烧录方式 与 ISP一键下载
  11. 火狐插件 xpi打包_将Firefox扩展程序打包为XPI
  12. scrapy框架使用教程
  13. 锅炉正反平衡计算热效率
  14. 启发式算法(heuristic algorithm)中的启发式(heuristic)到底是什么意思?
  15. 互联网金融保弘实业理财投资|白领理财有哪些窍门
  16. 第十一章 AWT编程
  17. 涂鸦智能市值累计蒸发600亿元:高瓴等亏损严重,盈利能力遭质疑
  18. Apache ShardingSphere 毕业成为 Apache 顶级项目,系业界首个 Apache 分布式数据库中间件项目
  19. 图神经网络(GCN)与超图神经网络(HGN):区别与联系
  20. java实现单链表就地逆置,单链表的就地逆置讲解

热门文章

  1. PLC(S7-200)通过自由通讯口方式与变频器通讯(VLT)
  2. matlab 电磁场与电磁波,MATLAB在电磁场与电磁波课程教学中的应用
  3. 扫描转换html,HTML5/CSS3 3D雷达扫描动画
  4. xp系统打开计算机配置文件,XP系统启动Windows零配置(WZC)服务教程(图文)
  5. php分页类函数,php分页类的使用方法
  6. 无线蹭网工具奶瓶Beini使用教程
  7. 003-电脑软件系统保护
  8. 数据分类分级指南分级方法
  9. mi5splus android9,小米5s plus和华为mate9买哪个好 小米5sPlus和华为mate9区别对比评测...
  10. 国内外各大网站镜像源