PSNR,峰值信噪比,通常用来评价一幅图像压缩后和原图像相比质量的好坏,当然,压缩后图像一定会比原图像质量差的,所以就用这样一个评价指标来规定标准了。PSNR越高,压缩后失真越小。这里主要定义了两个值,一个是均方差MSE,另一个是峰值信噪比PSNR,公式如下:
这里的MAX通常是图像的灰度级,一般就是255了。
#coding:utf-8 import numpy def psnr(im1,im2): diff = numpy.abs(im1 - im2) rmse = numpy.sqrt(diff).sum() psnr = 20*numpy.log10(255/rmse) return psnr x = numpy.array([[1,2],[3,4]]) print x y = numpy.array([[5,6],[7,8]]) print y psnr = psnr(x,y) print psnr
时间: 2024-09-30 19:42:13