Can u solve this error?
Afficher commentaires plus anciens
n=size(I);
M=n(1);
N=n(2);
MSE = sum(sum((I-II).^2.0))/(M*N);
PSNR = 10*log10(256*256/MSE);
fprintf('\nMSE: %7.2f', MSE);
fprintf('\nPSNR: %9.7f dB', PSNR);
Here i am calculating the PSNR and MSE of I and II but it gives error
Integers can only be combined with integers of the same class, or scalar doubles.
Error in ==> Spatial_thesis at 58
MSE = sum(sum((I-II).^2.0))/(M*N);
I have taken
I=uint8(X);
II = logical(I8)*128+logical(I7)*64+logical(I6)*32+logical(I5)*16+logical(I4)*8+logical(I3)*4+logical(I2)*2+logical(I1);
Réponses (1)
Image Analyst
le 20 Sep 2016
Use the built-in functions psnr() and immse(). Or else see my attached demo, or cast both I and II to double:
I = double(I);
II = double(II);
Catégories
En savoir plus sur Image Quality dans Centre d'aide et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!