This code not correct result the what is problem ?
古いコメントを表示
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 件のコメント
the cyclist
2015 年 4 月 27 日
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
回答 (1 件)
Image Analyst
2015 年 4 月 27 日
0 投票
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.
カテゴリ
ヘルプ センター および File Exchange で Image Quality についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!