高光谱图像重构评价指标及其Python实现
高光谱图像重构的评价指标通常有三项。其中部分指标从普通图像变化而来,部分指标只有高光谱图像独有。本文拟从以下两个角度介绍高光谱图像评价指标,并列出基于Python语言的skimage库的对应实现方法。
1)从普通图像重构评价指标到高光谱图像重构评价指标
2)从普通图像重构评价指标代码到高光谱图像重构评价指标代码
一、MSE
MSE计算两组数据的均方误差,是最常用的评价相似度的准则,包括但不限于图像、信号。
Skimage库中对应的函数原型:
skimage.measure.compare_mse
(im1, im2)
Parameters: |
im1, im2 : ndarray Image. Any dimensionality. |
Returns: |
mse : float The mean-squared error (MSE) metric. |
想要测度其他距离,参考compare_nrmse函数
http://scikit-image.org/docs/stable/api/skimage.measure.html#compare-nrmse
二、PSNR与MPSNR
1. PSNR
PSNR全称是Compute the peak signal to noise ratio。用于计算原始图像与重构图像之间的峰值信噪比。在图像超分辨率等任务中尤为常用,如同错误率之于分类任务,PSNR是图像重构任务事实上的基准评价准则。
skimage.measure.compare_psnr(im_true, im_test, data_range=None, dynamic_range =None )
Parameters: |
im_true : ndarray Ground-truth image. im_test : ndarray Test image. data_range : int The data range of the input image (distance between minimum and maximum possible values). By default, this is estimated from the image data-type. |
Returns: |
psnr : float The PSNR metric. |
2. MPSNR
MPSNR用于计算两幅高光谱图像之间的平均峰值信噪比。MPSNR计算方法很简单,只需要分别计算不同波段的PSNR,取均值就可以了。