Borrar filtros
Borrar filtros

How to calcualte psnr of images of two different size?

4 visualizaciones (últimos 30 días)
anu
anu el 3 de Abr. de 2017
Comentada: Ozan Can Sahin el 26 de Oct. de 2020
I am having one image 0f 500 * 500 size. I have resized it to 250 * 250. How to calculate psnr between two images?

Respuestas (1)

Image Analyst
Image Analyst el 3 de Abr. de 2017
Call
p = psnr(image1, image2);
If they're different sizes, then resize one of them.
image2Resized = imresize(image2, size(image1), 'nearest');
p = psnr(image1, image2Resized );
  7 comentarios
Image Analyst
Image Analyst el 25 de Oct. de 2020
Each method will give a slightly different PSNR. Bicubic should be fine. Use others and compare them if you want.
Ozan Can Sahin
Ozan Can Sahin el 26 de Oct. de 2020
I tried both PSNR and SSIM, it worked without errors but I've seen something that doesn't make sense. I've tried comparing Bicubic Interpolation and Nearest Neighbour Interpolation to see if PSNR and SSIM works properly, however I got better results for NN compared to bicubic which doesn't make sense. And this is valid for not only one single image but I've tried it with a few different images. You can see those in the screenshot attached, the code is on the left and the values are on the right. Any ideas why am I getting such results like this?

Iniciar sesión para comentar.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by