exponenta event banner

Сравнение качества изображения с помощью PSNR

В этом примере показано, как сравнить качество шумного и денозированного изображения из значения PSNR, вычисленного с помощью PSNR блок.

Считывание изображения в рабочую область MATLAB.

I = imread('cameraman.tif');

Считайте соответствующее шумное изображение в рабочую область MATLAB.

noisyI =  imread('noisyCameraman.tif');

Пример модели

Откройте модель Simulink. Модель считывает оригинал и шумные изображения из рабочего пространства MATLAB и помехоустойчивое изображение с помощью Median Filter блок.

modelname='ex_blkpsnr.slx';
open_system(modelname);

Модель вычисляет значение PSNR для шумного и обозначенного изображения относительно исходного изображения и выводит в виде переменных с именем psnr_noisy и psnr_denoised соответственно. Денонсированное изображение и вычисленные значения PSNR экспортируются в рабочую область MATLAB.

Моделирование и просмотр результатов

Моделирование модели.

out = sim(modelname);

Отображение шумного изображения и соответствующего значения PSNR

imshow(noisyI,[]);
title(['PSNR = ', num2str(out.psnr_noisy)]);

Выведите на экран обесцененное изображение и соответствующее значение PSNR. Обесцененное изображение имеет лучшее качество восприятия, чем шумное изображение, и, следовательно, имеет сравнительно высокое значение PSNR.

imshow(out.denoisedImage,[]);
title(['PSNR = ', num2str(out.psnr_denoised)]);