主要内容

multissim

多尺度结构相似度(MS-SSIM)图像质量指标

描述

例子

分数= multissim (Iref计算多尺度结构相似度(MS-SSIM)指数,分数,用于图像,使用Iref作为参考图像。接近1的值表示图像质量较好,接近0的值表示图像质量较差。

MS-SSIM仅定义为灰度图像。对于二维以上的输入,multissim将每个高维元素视为一个单独的二维灰度图像。

例子

分数= multissim (Iref名称,值使用一个或多个名称-值参数控制计算的各个方面。属性指定刻度数“NumScales”论点。

例子

分数qualityMaps= multissim(___还返回每个缩放版本中每个像素的本地MS-SSIM索引值.的qualitymap的每个缩放版本的映射单元格数组.每个质量图的大小与相应的缩放版本相同

例子

全部折叠

将图像加载到工作区中。

Iref = imread(“pout.tif”);

创建一个图像的噪声版本,用于比较。

I = imnoise(Iref,“盐和胡椒”, 0.05);

显示原始图像和噪声图像。

图;蒙太奇({Iref,我});

图中包含一个轴对象。axis对象包含一个image类型的对象。

计算MS-SSIM指数,该指数衡量输入图像与参考图像相比的质量。

score = multissim(I,Iref)
分数=0.6732

将图像加载到工作区中。

Iref = imread(“pout.tif”);I = Iref;

为图像的局部区域添加噪声。

I(1:100,1:100) = imnoise(Iref(1:100,1:100),“盐和胡椒”, 0.05);

显示原始图像和噪声图像。

图;蒙太奇({Iref,我});

图中包含一个轴对象。axis对象包含一个image类型的对象。

计算噪声图像的局部MS-SSIM索引映射,qualitymaps,以原始图像为参考。返回值,qualitymaps,是一个单元格数组,包含图像的每个缩放版本的质量映射。每张地图的大小都与图像的相应缩放版本相同。

[~, qualitymaps] = multissim(I,Iref);图蒙太奇(qualitymaps,“大小”[1 5])

图中包含一个轴对象。axis对象包含一个image类型的对象。

将图像加载到工作区中。

Iref = imread(“pout.tif”);

创建一个图像的噪声版本,用于比较。

I = imnoise(Iref,“盐和胡椒”, 0.05);

显示原始图像和图像的噪声版本。

图;蒙太奇({Iref,我});

图中包含一个轴对象。axis对象包含一个image类型的对象。

以原始图像为参考,计算噪声图像的MS-SSIM指数。属性指定对每个缩放图像的本地MS-SSIM索引计算进行多少加权“ScaleWeights”论点。该示例使用Wang、Simoncelli和Bovik在文章中定义的权重值。

score = multissim(I,Iref,“ScaleWeights”, (0.0448, 0.2856, 0.3001, 0.2363, 0.1333))
分数=0.6773

将彩色图像读入工作区。

RGB = imread(“kobi.png”);

创建一个添加了盐和胡椒噪声的图像版本。

RGB = imnoise(RGB,“盐和胡椒”);

以蒙太奇的方式显示这两个图像。

蒙太奇({RGB, RGBNoisy})

图中包含一个轴对象。axis对象包含一个image类型的对象。

计算噪声图像各颜色通道的MS-SSIM。

score = multissim(rgbnoise,RGB);分数=挤压(分数)
分数=3x1单列向量0.7084 0.7135 0.7066

将彩色图像读入工作区。

参考资料:“strawberries.jpg”);Ref = im2single(Ref);

通过沿着第四维复制图像来模拟一批六个图像。

refBatch = repmat(ref,[1 1 1 6]);

创建一批图像的副本,添加盐和胡椒噪声。

noisyBatch = imnoise(refBatch,“盐和胡椒”);

创建格式化的dlarray对象用于原始和有噪声的一批图像。格式为“SSCB”,即空间-空间-通道-批处理。

dlrefBatch = darray (refBatch,“SSCB”);dlnoisyBatch = dlarray(噪音批次,“SSCB”);

计算噪声数据相对于原始数据的MS-SSIM评分。

scores = multissim(dlnoisyBatch,dlrefBatch);

删除与空间维度对应的单个维度并显示分数。每个元素是该批图像中一个颜色通道的MS-SSIM评分。

挤压(分数)
ans = 3(C) x 6(B)单美元0.8334 0.8335 0.8348 0.8335 0.8340 0.8349 0.8325 0.8316 0.8309 0.8310 0.8317 0.8326 0.8140 0.8123 0.8166 0.8129 0.8136 0.8123

输入参数

全部折叠

输入图像,指定为任意维度的数字数组或dlarray(深度学习工具箱)对象。格式化dlarray对象不能包含一个以上的通道标签、一个以上的批标签和两个以上的空间标签。

数据类型:||int16|uint8|uint16

引用图像,指定为任意维度的数字数组或dlarray(深度学习工具箱)对象。格式化dlarray对象不能包含一个以上的通道标签、一个以上的批标签和两个以上的空间标签。

数据类型:||int16|uint8|uint16

名称-值参数

指定可选参数对为Name1 = Value1,…,以=家,在那里的名字参数名称和价值对应的值。名称-值参数必须出现在其他参数之后,但对的顺序无关紧要。

在R2021a之前,使用逗号分隔每个名称和值,并将其括起来的名字在报价。

例子:score = multissim(I,Iref,'NumScales',3);

用于计算MS-SSIM索引的刻度数,指定为逗号分隔的对,由“NumScales”一个正整数。设置“NumScales”1相当于使用了ssim使用其函数“指数”名称-值对参数设置为[1 1 1].输入图像的大小限制了尺度的数量。的multissim函数缩放图像(NumScales- 1)次,每缩放一次,对图像进行因子2的采样。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

跨刻度的相对值,指定为逗号分隔的对,由“ScaleWeights”一个正元素的向量。向量的长度等于缩放的数量,因为每个元素对应于原始图像的一个缩放版本。的multissim函数将值归一为1。默认情况下,天平的权重相等fspecial(“高斯”,[1,numScales], 1).的multissim函数使用高斯分布作为默认值,因为人类视觉灵敏度在中频达到峰值,并在两个方向上下降。这是一个设置的例子“ScaleWeights”,请参阅计算指定比例权重的MS-SSIM

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

各向同性高斯函数的标准偏差,用逗号分隔的对表示“σ”一个正数。这个值指定一个像素周围的邻域像素的权重,用于估计局部统计信息。的multissim函数使用加权来避免在估计局部统计信息时阻塞工件。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

输入图像的动态范围,指定为正数。的默认值动态范围这取决于图像的数据类型,计算为diff (getrangefromclass(我)).例如,默认动态范围为255对于数据类型的图像uint8,默认为1对于数据类型的图像像素值范围为[0,1]。

数据类型:||int8|int16|int32|uint8|uint16|uint32

输出参数

全部折叠

用于图像质量的MS-SSIM索引,返回为数值标量、数值数组或dlarray(深度学习工具箱)对象,如表中所示。的价值分数通常在[0,1]范围内。值1表示最高质量,发生在而且Iref是等价的。较小的值对应较差的质量。对于输入和名值对参数的某些组合,分数可以是负的。

输入图像类型 MS-SSIM价值
二维数值矩阵 数值标量与单一MS-SSIM测量。
二维dlarray对象 1×1dlarray对象与单一MS-SSIM测量。
N- d数字数组,N个>2 与输入图像具有相同维数的数字数组。的前两个维度分数是单维度。对于高维上的每个元素都有一个MS-SSIM测量。

无格式的一天dlarray2 . object with N>

dlarray与输入图像具有相同维度的对象。的前两个维度分数是单维度。对于高维上的每个元素都有一个MS-SSIM测量。

格式化的一天dlarray2 . object with N>

dlarray与输入图像具有相同维度的对象。的空间维度分数是单维度。在任何通道或批处理维度上,每个元素都有一个MS-SSIM测量。

每个缩放版本中每个像素的本地MS-SSIM索引值,作为数值数组的单元格数组或的单元格数组返回dlarray(深度学习工具箱)对象。单元格数组的大小为1 × -NumScales.中的每个元素qualityMaps表示对应像素在相应比例因子上的质量。元素的格式使用分数参数,基于输入图像的格式。

算法

结构相似性(SSIM)指数通过量化图像和参考图像之间的SSIM来衡量感知质量ssim).的multissim函数通过组合不同尺度下图像的几个版本的SSIM索引来计算MS-SSIM索引。与SSIM指数相比,MS-SSIM指数在观看条件变化方面更稳健。

multissim函数对类的输入图像使用双精度算法.所有其他类型的输入图像都使用单精度算法。

参考文献

[1]王Z,西蒙切利,e.p., Bovik, A.C.基于多尺度结构相似性的图像质量评价.见:第37届Asilomar信号,系统和计算机会议,2003,1398 - 1402。太平洋格罗夫,CA,美国:IEEE, 2003。https://doi.org/10.1109/ACSSC.2003.1292216。

扩展功能

版本历史

R2020a中引入