当在自己的电脑上运行下列评估图像质量的代码,没有问题
# 信息熵
en = skimage.measure.shannon_entropy(img_fu)
# 峰值信噪比
pnsr = skimage.measure.compare_psnr(img1, img_fu, data_range=255)
# 结构相似性
ssim = skimage.measure.compare_ssim(img1, img_fu, data_range=255)
# 均方误差
mse = skimage.measure.compare_mse(img1, img_fu)
# 均方根误差
rmse = math.sqrt(mse)
# 归一化均方根误差
nrmse = skimage.measure.compare_nrmse(img1, img_fu, norm_type='Euclidean')
但是在超算平台运行代码时,出现了下列报错
考虑了一下应该是版本问题,于是通过pip list
查看scikit-image
的版本,在本地电脑是0.15.0
但在超算上面的环境为0.16.2
将调用代码改成
# 信息熵
en = skimage.measure.shannon_entropy(img_fu)
# 峰值信噪比
pnsr = skimage.metrics.peak_signal_noise_ratio(img1, img_fu, data_range=255)
# 结构相似性
ssim = skimage.metrics.structural_similarity(img1, img_fu, data_range=255)
# 均方误差
mse = skimage.metrics.mean_squared_error(img1, img_fu)
# 均方根误差
rmse = math.sqrt(mse)
# 归一化均方根误差
nrmse = skimage.metrics.normalized_root_mse(img1, img_fu)
卸载scikit_image,然后通过pip install scikit_image-0.15.0
下载可以使用原代码的版本