psnr

Пиковое отношение сигнал-шум (PSNR)

Синтаксис

peaksnr = psnr(A,ref)
peaksnr = psnr(A,ref,peakval)
[peaksnr,snr] = psnr(___)

Описание

пример

peaksnr = psnr(A,ref) вычисляет пиковое отношение сигнал-шум для изображения A, с изображением ref как ссылка. A и ref должны быть одного размера и класс.

peaksnr = psnr(A,ref,peakval) использование peakval как пиковое значение сигналов для вычисления пикового отношения сигнал-шум для изображения A.

[peaksnr,snr] = psnr(___) возвращает простое отношение сигнал-шум, snr, в дополнение к пиковому отношению сигнал-шум.

Примеры

свернуть все

Считайте изображение и создайте копию с добавленным шумом. Оригинальное изображение является ссылочным изображением.

ref = imread('pout.tif');
A = imnoise(ref,'salt & pepper', 0.02);

Вычислите PSNR.

[peaksnr, snr] = psnr(A, ref);
  
fprintf('\n The Peak-SNR value is %0.4f', peaksnr);
 The Peak-SNR value is 22.6437
fprintf('\n The SNR value is %0.4f \n', snr);
 The SNR value is 15.5524 

Входные параметры

свернуть все

Отобразите, чтобы анализироваться, задаваться как числовая матрица N-D.

Типы данных: single | double | int16 | uint8 | uint16

Ссылочное изображение, заданное как числовая матрица N-D.

Типы данных: single | double | int16 | uint8 | uint16

Пиковый уровень сигнала, заданный как скаляр любого числового класса. Если не заданный, значение по умолчанию для peakval зависит от класса A и ref. Если изображения имеют типы с плавающей точкой, peakval является 1, принимая, что данные находятся в области значений [0 1]. Если изображения имеют целочисленные типы данных, peakval является самым большим значением, позволенным областью значений класса. Для uint8 значением по умолчанию является 255. Для uint16 или int16, значением по умолчанию является 65535.

Типы данных: single | double | int16 | uint8 | uint16

Выходные аргументы

свернуть все

Пиковое отношение сигнал-шум в децибелах, возвращенных как скаляр типа double, кроме того, если A и ref имеют класс single, в этом случае peaksnr, имеет класс single.

Типы данных: single | double

Отношение сигнал-шум в децибелах, возвращенных как скаляр типа double, кроме того, если A и ref имеют класс single, в этом случае peaksnr, имеет класс single.

Типы данных: single | double

Алгоритмы

Функция psnr реализует следующее уравнение, чтобы вычислить Пиковое отношение сигнал-шум (PSNR):

PSNR=10журнал10(peakval2/MSE)

где peakval или задан пользователем или взят из области значений типа данных image (например, для изображения uint8 это - 255). MSE является среднеквадратичной погрешностью, т.е. MSE между A и ref.

Расширенные возможности

Введенный в R2014a