峰值信噪比

峰值信噪比#

峰值信噪比(Peak Signal-to-Noise Ratio,简写为 PSNR)是一种衡量图像在压缩后质量下降程度的指标。这通常可以通过肉眼观察到,但它会赋予固定的数值。它将原始图像与压缩后的图像进行比较,并将差异表示为比率。

PSNR 值越高,表示压缩后的图像质量越接近原始图像,表明质量损失较少。PSNR值越低,表示可见的降质越多。PSNR通常与MSE一起使用,PSNR提供了一个更易于解释的尺度,数值越高越好。

以下是一些用于测量 PSNR 的 Python 代码:

def calculate_psnr(img1, img2):
    mse = calculate_mse(img1, img2)
        if mse == 0:
            return float('inf')
    max_pixel = 255.0
    return 20 * np.log10(max_pixel / np.sqrt(mse))

psnr = calculate_psnr(original_img, compressed_img)
print(f"PSNR: {psnr:.2f} dB")