This code not correct result the what is problem ?
Ältere Kommentare anzeigen
MSE1=mean(mean((embeddedImage-originalImage).^4));
MaxI=1;% the maximum possible pixel value of the images.
PSNR=15*log10((MaxI^2)/MSE1);
disp(PSNR);
1 Kommentar
the cyclist
am 27 Apr. 2015
Please read this, and then edit your question to have a better chance at getting a useful answer: http://www.mathworks.com/matlabcentral/answers/6200-tutorial-how-to-ask-a-question-on-answers-and-get-a-fast-answer
Antworten (1)
Image Analyst
am 27 Apr. 2015
0 Stimmen
Chances are your images are uint8 and the subtraction is clipping them. Cast to double before subtracting. And I'm not sure why you're raising them to the 4th power instead of squaring them to find the Mean Square Error. Finally, you can use mean2() instead of mean(mean)).
Better yet, just use the built-in psnr() function in the Image Processing Toolbox. Or, you can use my attached function if you have an antique version of MATLAB.
Kategorien
Mehr zu Image Transforms finden Sie in Hilfe-Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!