different between tiff and jpeg format in calculating MSE and PSNR
4 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Nik
am 26 Aug. 2013
Kommentiert: Image Analyst
am 12 Okt. 2013
I got a code to calculate CR,bpp, MSE and PSNR. I works well for *.jpeg image but not for *.tiff. A message
"Error using -
Integers can only be combined with integers of the same class, or scalar doubles.
Error in sphit (line 38)
D = abs(X-Xc).^2;"
I cannot figure why it happen. The full code is:
X= imread ('lena.tif');
[cr,bpp] = wcompress('c',X,'mask.wtc','spiht','maxloop',12)
Xc = wcompress('u','mask.wtc');
delete('mask.wtc')
colormap(pink(255))
subplot(1,2,1); image(X); title('Original image')
axis square
subplot(1,2,2); image(Xc); title('Compressed image')
axis square
% Finally the MSE and the PSNR are computed.
D = abs(X-Xc).^2;
mse = sum(D(:))/numel(X)
psnr = 10*log10(255*255/mse)
0 Kommentare
Akzeptierte Antwort
Image Analyst
am 26 Aug. 2013
When you see that error, it's fixed by converting the integer variable in the equation to a double.
D = abs(double(X) - Xc) .^ 2;
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Denoising and Compression finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!