error_psnr_calculation.m

来自「it is used to find traffic」· M 代码 · 共 70 行

M
70
字号
% % % function  [Error_Location,Error,Square_Error,RMS_Error,PSNR,PSNR_Infinity] = Error_PSNR_Calculation(Input_Image,Input_Image_IDWT);
% % % 
% % % Input_Image = double(Input_Image);
% % % [Image_Height Image_Width] = size(Input_Image);
% % % k = 1;
% % % for i = 1 : 128
% % %     for j = 1 : 128
% % %         if(Input_Image(i,j) ~= Input_Image_IDWT(i,j))
% % %             Error_Location(k,:) = [i j];
% % %             Error(k)            = Input_Image(i,j) - Input_Image_IDWT(i,j);
% % %             k = k+1;
% % %         end
% % %     end
% % % end
% % % 
% % % Square_Error = 0;
% % % if(k > 1)
% % %     for L = 1 : k - 1
% % %         Square_Error    = Square_Error + (Error(L) * Error(L));
% % %     end
% % % end
% % % 
% % % RMS_Error       = sqrt(Square_Error);
% % % if(Square_Error ~= 0)
% % %     PSNR            = (255*255)/Square_Error;
% % %     PSNR_Infinity   = logical(0);
% % % else
% % %     PSNR            = 0;
% % %     PSNR_Infinity   = logical(1);
% % % end
% % % 
% % %      
% % % 
function  [Error_Location,Error,Error_Value_Max,Square_Error,RMS_Error,PSNR,PSNR_Infinity] = Error_PSNR_Calculation(Input_Image,watermarked_image);

Input_Image = double(Input_Image);
[Image_Height Image_Width] = size(Input_Image);
k = 1;
for i = 1 : Image_Height
    for j = 1 : Image_Width
        if(Input_Image(i,j) ~= watermarked_image(i,j))
            Error_Location(k,:) = [i j];
            Error_Value(k)      = Input_Image(i,j) - watermarked_image(i,j);
            k = k+1;
        end
    end
end
Error   = [Error_Location,Error_Value'];        

Square_Error = 0;
if(k > 1)
    for L = 1 : k - 1
        Square_Error    = Square_Error + (Error_Value(L) * Error_Value(L));
    end
end

RMS_Error       = sqrt(Square_Error);
if(Square_Error ~= 0)
    PSNR            = (Image_Height*Image_Width*255*255)/Square_Error;
    PSNR_Infinity   = logical(0);
else
    PSNR            = 0;
    PSNR_Infinity   = logical(1);
end
Error_Value_Max = max(Error_Value);

     


⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?