📅  最后修改于: 2023-12-03 15:34:19.631000             🧑  作者: Mango
峰值信噪比(PSNR)是衡量图像/视频质量的一种常用指标。它是由信号最大可能值和图像中的噪音影响引起的均方误差之比而得到的对数测量单位。
在Python中,我们可以使用NumPy和OpenCV库来计算图像的PSNR值。下面是一个简单的示例。
import cv2
import numpy as np
def PSNR(original, compressed):
mse = np.mean((original - compressed) ** 2)
if mse == 0:
return 100
max_pixel = 255.0
psnr = 20 * np.log10(max_pixel / np.sqrt(mse))
return psnr
# 加载图像
original = cv2.imread('original_image.png')
compressed = cv2.imread('compressed_image.png', 1)
# 计算PSNR值
value = PSNR(original, compressed)
print(f"PSNR值为:{value} dB")
在处理图像/视频时,PSNR是一种很有用的指标,它可以帮助我们评价压缩算法的质量,并且也被广泛应用于图像/视频的还原和纠错等领域。在Python中,我们可以使用NumPy和OpenCV库来计算图像的PSNR值,从而更好地评估和处理图像/视频。