光谱图像客观评价指标
新版本imgvision-1.7.3 已经更新!此次更新将新增相关性指标CC,以及RMSE放入Evaluation()中,并支持获取通过get_Evaluation()获取[PSNR,SAM,ERGAS,SSIM,RMSE]的列表形式。此外ERGAS的计算中,默认融合因子scale由 1.6.5版本中的6 更改为 1.7.3版本中的 16.
===
请查看使用imgvision最新版本!
SAM光谱角制图、PSNR峰值信噪比、MSE均方误差、SSIM结构相似性以及ERGAS相对全局无量纲误差是用于评价光谱图像压缩,融合等技术的客观评价指标。本文旨在通过最简单的方式对两张光谱图像或RGB图像进行快速评价。
imgvision库用于进行图像处理与质量评价。该库仅基于Numpy库进行编写,通过矩阵的方式对图像进行快速处理,包括不限于光谱图像的不同光源下颜色空间转换、RGB图像不同光源下的色空间转换、光谱图像余弦距离的监督聚类、图像的质量评价等。
安装imgvision 1.6.5
imgvision在1.6.1版本后支持图像的质量评价。通过pycharm的Terminal或配置的虚拟环境进行安装:
pip install imgvision==1.6.5
图像客观质量评价
import numpy as np
import imgvision as iv
#导入高光谱图像以及重建图像
Hyperspectral_Image = np.load('HSI.npy')
Reconstruction = np.load('Re_HSI.npy')
# Image Shape [Height, Weight, Channel]
#创建评价器
#图像范围 0~1 时, 默认l=1,不需填入参数
Metric = iv.spectra_metric(Hyperspectral_Image,Reconstruction)
#图像范围 0~255 时, l=255
Metric = iv.spectra_metric(Hyperspectral_Image,Reconstruction,l=255)
#对于ERGAS指标,创建评价器时传入融合缩放因子scale(scale=8 为8倍缩放因数)
# ERGAS 是评价图像融合一种指标,scale表示重建图像与待重建图像之间的缩放比例
Metric = iv.spectra_metric(Hyperspectral_Image,Reconstruction,scale=8)
#评价SAM:
SAM = Metric.SAM()
#评价PSNR:
PSNR = Metric.PSNR()
#评价SSIM:
SSIM = Metric.SSIM()
#评价ERGAS:
ERGAS = Metric.ERGAS()
#评价PSNR, SAM, ERGAS, SSIM
Metric.Evaluation()
mat模式
在SAM, MSE指标中,mat模式用于获取图像每个像素的指标值。
在PSNR, SSIM指标中,mat模式用于获取图像每个波段的指标值。
想获取每个像素的SAM、MSE值?
想获取每个波段的PSNR、SSIM值?
'mat’帮助你更好的分析图像全局视觉质量。
import numpy as np
import imgvision as iv
#导入高光谱图像以及重建图像
Hyperspectral_Image = np.load('HSI.npy')
Reconstruction = np.load('Re_HSI')
#创建评价器
Metric = iv.spectra_metric(Hyperspectral_Image,Reconstruction)
#评价SAM:
SAM = Metric.SAM(mode='mat')
#SAM.shape = [Hyperspectral_Image.shape[0]*Hyperspectral_Image.shape[1],]
#评价MSE:
MSE = Metric.MSE(mode='mat')
#MSE.shape = [Hyperspectral_Image.shape[0]*Hyperspectral_Image.shape[1],]
#评价PSNR:
PSNR = Metric.PSNR(mode='mat')
#PSNR.shape = [Hyperspectral_Image.shape[-1],]
#评价SSIM:
SSIM = Metric.SSIM(mode='mat') #图像像素范围的最大值为1时
#SSIM.shape = [Hyperspectral_Image.shape[-1],]