博客
关于我
图像质量评价(二):VSI
阅读量:539 次
发布时间:2019-03-09

本文共 1478 字,大约阅读时间需要 4 分钟。

图像质量评价(二):Visual Saliency-Induced Index (VSI)

Visual Saliency-Induced Index(VSI)是一种基于图像显著性特征的全参考(FR)图像质量评价标准。与基于几何/相互洁度失真(GSM/SSIM)方法不同,VSI主要关注图像失真对视觉显著性(Visual Saliency, VS)的影响。

研究表明,图像质量的失真会显著影响视觉显著性特征图(VS map),且这种影响与失真程度有着强烈的相关性。为了验证这一假设,我们对TID2013数据集的VS maps进行了分析。该数据集包含25个参考图像,24种不同类型的失真,5个失真水平。每种失真类型和水平对应25个失真图像。首先,使用GBVS模型对数据集中所有图像计算VS maps。然后,对每个失真图像计算其与对应参考图像的VS maps的均方误差(MSE)。对同一类型同一水平失真的MSE求均值,结果显示出显著的相关性。

实验结果表明,大多数失真类型的VS maps中MSE值越大,对应的主观质量评分越低。如上图所示,c和e两种不同类型的失真,主观质量评分分别为5.05和2.40,对应的MSE值分别为4.49和198.36。结果显示,颜色饱和度改变(CCS)类型失真在VS maps中表现较差,这是由于VS计算过程中的归一化操作导致的。例如,对比度改(Contrast Change, CTC)类型失真因归一化操作影响了VS值的表现,使得VS maps无法准确反映对比度失真。

为应对这种问题,研究采用了梯度模流量(Gradient Modulus, GM)来补充VS的不足。例如,使用Scharr operator计算图像的水平和垂直梯度。如上图所示,ab两个图像的VS maps分别为cd和ef。通过对比Prosecutor检验结果表明,f相较于e有更明显的失真,说明GM map能够较为准确地反映对比度失真。

此外,由于颜色失真(如色度改变)无法通过单通道梯度值得以准确度量,研究进一步引入了M/N通道的信息,结合RGB空间变换。通过实验验证,这种方法能够有效补充颜色失真检测。

基于上述特征,VSI可以通过以下公式定义:

MS-x(x, y) = α * VS_s(x, y)/max(VS_i) + β * GM_map(x, y)/max(GM_j) + γ * M_map(x, y)/max(M_k) + δ * N_map(x, y)/max(N_l)

其中,α, β, γ, δ均为正权重常数。最终,图像的VSI值计算为各个像素的加权平均,具体公式如下:

VSI = avg( VS_map × VS_squared + GM_map × GM_squared + M_map × M_squared + N_map × N_squared )

通过实验验证,VSI与多个标准数据库(如TID2013,TID2008,CSIQ,LIVE)得出的指标表现优异。如下表所示:

数据集 SROCC KROCC PLCC RMSE
TID2013 0.8965 0.7183 0.9000 0.5404
TID2008 0.8979 0.7123 0.8762 0.6466
CSIQ 0.9423 0.7857 0.9279 0.0979
LIV 0.9524 0.8058 0.9482 8.6816
加权平均值 0.9100 0.7366 0.9033

这表明VSI在多个标准下均展现出良好的性能,具有广泛的应用价值。

转载地址:http://sgaiz.baihongyu.com/

你可能感兴趣的文章
Python furl库:一键搞定复杂URL操作
查看>>
Python GC 也会关闭文件吗?
查看>>
python gen_key.py 报错 提示找不到OpenSSL lib
查看>>
python getattrribute_Python学习——面向对象高级之反射
查看>>
Python进阶语法:字典推导式
查看>>
python gil_Python中GIL的使用详解
查看>>
python glob.glob使用
查看>>
python glob的安装和使用
查看>>
Python google drive API 下载,文件在哪里?
查看>>
Python GPS 模块:读取最新的 GPS 数据
查看>>
python grpc入门
查看>>
python gRPC测试helloworld
查看>>
python join split
查看>>
python list,str的拼接与转换
查看>>
python mac地址_python中MAC地址打包问题
查看>>
Python Matplotlib Box并排绘制两个数据集
查看>>
python matplotlib简单使用
查看>>
Python Multiprocessing - 将类方法应用于对象列表
查看>>
python nltk nltk_data 离线安装,chatterbot
查看>>
python numba 转灰度图_使用NumPy、Numba的简单使用(二)
查看>>