Getting high PSNR on 16 bit DICOM MRI. What am i doing wrong?

3 views (last 30 days)
clc;clear all;close all;
info=dicominfo('IMG_000001_original.dcm');
A=dicomread(info);
info=dicominfo('IMG_000001_(im.std =5).dcm');
B=dicomread(info);
[M, N ] = size(A);
ms= sum(sum((double(A)-double(B)).^2));
mse=ms/(N*M);
Y=immse(A,B);
P=10*log10((65535^2)/mse);
K=psnr(A,B);
Result = sprintf('The mean square error = %.2f %.2f',mse, P)
I am denoising MR images. A is the original image. B is the denoised image. Both are 16-bit DICOM images. When I try to find the PSNR between them, im getting very high values, like 90db, 100db ,etc when im varying standard deviation of gaussian noise as 2,10, 50, 100 etc. I read somewhere that 6N+12 db is the maximum PSNR you can have for an N-bit image so for a 16-bit image, that would be 108 dB. But i cant find any research papers with such high values so im probably doing something wrong.
I tried converting the images to png and tiff but got the same results. I also used uint8 to convert the images to 8 bit but there is loss of data. I have attached the workspace variables A and B for reference.
So what am i doing wrong here in calculating PSNR of 16 bit MR images.
  3 Comments
anagha
anagha on 20 Nov 2022
Wait im not quite following. Should i just continue with the values im getting? And is there anything i could change in the code to arrive at a different result?
DGM
DGM on 20 Nov 2022
Edited: DGM on 20 Nov 2022
Like I said, I don't know why you are expecting there to be a lower bound on the noise. Without more information, I can't know if that particular limiting value is correct.
All I know is that your manual calculation of PSNR follows from the same method used by the native psnr() function. That much doesn't answer your question about the process which is governing noise presence.
Maybe you're thinking about the limitations on SNR when capturing images? If so, this is probably best answered by someone who is more familiar with the subject. (Hence the fact that I'm only responding in comments)

Sign in to comment.

Answers (0)

Categories

Find more on DICOM Format in Help Center and File Exchange

Products


Release

R2022b

Community Treasure Hunt

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

Start Hunting!