主要内容

psnr值

峰值信噪比

描述

例子

peaksnr= psnr (一个裁判计算图像峰值信噪比(PSNR)一个,附图像裁判作为参考。PSNR值越大,图像质量越好。

peaksnr= psnr (一个裁判peakval计算图像的PSNR一个利用峰值信号值peakval

例子

peaksnr= psnr (___“DataFormat”,dataFormat还指定了尺寸标签,dataFormat的未格式化图像数据。使用此语法可沿批处理维度为每个元素返回单独的PSNR。

例子

peaksnr信噪比= psnr(___还返回简单信噪比,信噪比

例子

全部折叠

读取图像并创建一个添加噪声的副本。原始图像为参考图像。

参考资料:“pout.tif”);A = imnoise(ref,“盐和胡椒”, 0.02);

计算PSNR。

[peaksnr, snr] = psnr(A, ref);流(峰值信噪比为%0.4f, peaksnr);
峰值信噪比为22.6437
流(信噪比为%0.4f \n信噪比);
信噪比为15.5524

将图像读入工作区,然后创建一个未格式化的图像dlarray对象的图像数据。

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

添加盐和胡椒噪声的图像,然后创建一个未格式化dlarray对象与有噪声的图像数据。

噪声= imnoise(ref,“盐和胡椒”);dlnoise = dlarray(嘈杂);

计算有噪声数据相对于原始数据的峰值信噪比和信噪比。

[peaksnr,snr] = psnr(dlnoise,dlref)
Peaksnr = 1x1单dlarray 17.5941
信噪比= 1x1单元阵列11.1265

将参考图像读入工作区。

参考资料:“office_1.jpg”);

预分配两个数组,存储与参考图像大小相同的6张图像序列。

numFrames = 6;imsorigoriginal = 0 ([size(ref) numFrames],class(ref));imsNoisy = 0 ([size(ref) numFrames],class(ref));

读取图像并将其添加到预分配的数组中。一个数组存储原始图像数据。第二个数组存储添加了椒盐噪声的图像数据。

p = 1:numFrames filename = strcat(“office_”num2str (p),“jpg”);Im = imread(文件名);imsorigoriginal (:,:,:,p) = im;imsNoisy(:,:,:,p) = imnoise(im,“盐和胡椒”);结束

以蒙太奇的方式显示图像序列。第一行显示了原始图像数据的序列。第二行显示了含有噪声图像数据的序列。

蒙太奇(cat (4 imsOriginal imsNoisy),“大小”[2 numFrames])

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

通过指定输入数组的数据格式为“SSCB”(spatial, spatial, channel, batch),计算每个噪声图像相对于相应原始图像的PSNR。

peak_psnrs = psnr(imsNoisy, imsorigoriginal,“DataFormat”“SSCB”);Peak_psnrs = squeeze(Peak_psnrs)
peak_psnrs =6×116.3560 16.9698 17.8079 18.1843 18.0656 17.1682

输入参数

全部折叠

要分析的图像,指定为任意维度的数字数组或dlarray(深度学习工具箱)对象。

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

引用图像,指定为数值数组或dlarray(深度学习工具箱)对象。参考图像具有与图像相同的大小和数据类型一个

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

峰值信号电平,指定为非负数。如果未指定,则为peakval这取决于的类别一个而且裁判

  • 如果图像为数据类型,然后psnr值假设图像数据在[0,1]范围内。的默认值peakval1

  • 如果图像是整数数据类型,则默认值peakval类范围允许的最大值。为uint8Data,默认值peakval255.为uint16int16,默认为65535

输入图像的尺寸标签一个而且裁判,指定为字符串标量或字符向量。中的每个字符dataFormat必须是以下标签之一:

  • 年代——空间

  • C——频道

  • B-批量观察

格式中不能包含多个通道标签或批标签。不要指定'dataFormat当输入图像被格式化时,参数dlarray对象。

例子:SSC的表示阵列具有两个空间维度和一个通道维度,适用于二维RGB图像数据。

例子:“SSCB”表示该阵列具有两个空间维度,一个通道维度和一个批处理维度,适用于二维RGB图像数据序列。

输出参数

全部折叠

PSNR(以分贝为单位),作为这些值之一返回。

输入图像类型 PSNR值

  • 非格式化数字数组

  • 没有批处理的格式化数字数组(“B”)维

数值标量与单一PSNR测量。
  • 无格式dlarray(深度学习工具箱)对象

1×1dlarray单一PSNR测量对象。
  • 属性指定批处理维度的数值数组dataFormat论点

与输入图像具有相同维数的数字数组。的空间和通道维度peaksnr是单维度。沿着批维,每个元素都有一个PSNR测量。
  • 格式化dlarray具有批处理维度的对象

  • 无格式dlarray属性指定批处理维度的对象dataFormat论点

dlarray与输入图像具有相同维度的对象。的空间和通道维度peaksnr是单维度。沿着批维,每个元素都有一个PSNR测量。

如果一个而且裁判有数据类型,然后peaksnr具有数据类型.否则,peaksnr具有数据类型

信噪比(以分贝为单位),作为这些值之一返回。

输入图像类型 PSNR值

  • 非格式化数字数组

  • 没有批处理的格式化数字数组(“B”)维

数值标量与单一信噪比测量。
  • 无格式dlarray(深度学习工具箱)对象

1×1dlarray目标与单一信噪比测量。
  • 属性指定批处理维度的数值数组dataFormat论点

与输入图像具有相同维数的数字数组。的空间和通道维度信噪比是单维度。在批处理维度上,每个元素都有一个信噪比测量。
  • 格式化dlarray具有批处理维度的对象

  • 无格式dlarray属性指定批处理维度的对象dataFormat论点

dlarray与输入图像具有相同维度的对象。的空间和通道维度peaksnr是单维度。在批处理维度上,每个元素都有一个信噪比测量。

如果一个而且裁判有数据类型,然后信噪比具有数据类型.否则,信噪比具有数据类型

算法

psnr值函数实现了这个方程来计算PSNR:

P 年代 N R 10 日志 10 p e 一个 k v 一个 l 2 / 年代 E

peakval由用户指定或从图像数据类型的范围中获取。例如,对于数据类型的图像uint8,peakval255均方误差均方误差是一个而且裁判

扩展功能

GPU代码生成
使用GPU Coder™为NVIDIA®GPU生成CUDA®代码。

版本历史

在R2014a中引入

全部展开