psnr

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

Описание

пример

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

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

[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 

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

свернуть все

Отобразите, чтобы анализироваться в виде числового массива любой размерности.

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

Ссылочное изображение в виде числового массива, одного размера и тип данных как изображение A.

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

Пиковый уровень сигнала в виде неотрицательного номера. Если не заданный, значение по умолчанию для peakval зависит от класса A и ref.

  • Если изображения имеют тип данных double или singleто psnr принимает, что данные изображения находятся в области значений [0, 1]. Значение по умолчанию peakval 1.

  • Если изображения имеют целочисленные типы данных, то значение по умолчанию peakval самое большое значение, позволенное областью значений класса. Для uint8 данные, значение по умолчанию peakval 255. Для uint16 или int16, значением по умолчанию является 65535.

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

свернуть все

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

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

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

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

Алгоритмы

psnr функционируйте реализует это уравнение, чтобы вычислить PSNR:

PSNR=10log10(peakval2/MSE)

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

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

Генерация кода графического процессора
Сгенерируйте код CUDA® для NVIDIA® графические процессоры с помощью GPU Coder™.

Введенный в R2014a