对图像均值滤波并计算PSNR,SSIM的 python代码
时间: 2023-09-16 16:09:12 浏览: 258
SSIM和PSNR的python代码
以下是Python中对图像进行均值滤波并计算PSNR和SSIM的示例代码:
```
import cv2
import numpy as np
from skimage.measure import compare_ssim
# 读取图像
img = cv2.imread('image.jpg')
# 进行均值滤波
kernel = np.ones((5, 5), np.float32) / 25
img_smooth = cv2.filter2D(img, -1, kernel)
# 计算PSNR
mse = np.mean((img - img_smooth) ** 2)
psnr = 10 * np.log10(255 ** 2 / mse)
# 计算SSIM
ssim = compare_ssim(cv2.cvtColor(img, cv2.COLOR_BGR2GRAY),
cv2.cvtColor(img_smooth, cv2.COLOR_BGR2GRAY),
gaussian_weights=True,
sigma=1.5,
use_sample_covariance=False)
# 输出结果
print("PSNR:", psnr)
print("SSIM:", ssim)
```
注意,这里的输入图像文件名应该替换为你自己的图像文件名。
阅读全文