psnr和ssim的代码实现,基于numpy

版权声明:转发使用请写明文章来源 https://blog.csdn.net/weixin_33278772/article/details/85839049
def PSNRLossnp(y_true,y_pred):
		return 10* np.log(255*2 / (np.mean(np.square(y_pred - y_true))))


def SSIMnp(y_true , y_pred):
    u_true = np.mean(y_true)
    u_pred = np.mean(y_pred)
    var_true = np.var(y_true)
    var_pred = np.var(y_pred)
    std_true = np.sqrt(var_true)
    std_pred = np.sqrt(var_pred)
    c1 = np.square(0.01*7)
    c2 = np.square(0.03*7)
    ssim = (2 * u_true * u_pred + c1) * (2 * std_pred * std_true + c2)
    denom = (u_true ** 2 + u_pred ** 2 + c1) * (var_pred + var_true + c2)
    return ssim / denom

猜你喜欢

转载自blog.csdn.net/weixin_33278772/article/details/85839049