function [M_SE PSNR] = MetricsMeasurement(Orig_Image,Esti_Image)
% This function MetricMeasurement calculates Peak Signal-to-Noise Ratio and
% Mean-Square Error
%
% INPUTS: Orig_Image = Original Image
% Esti_Image = Estimation of the original image obtained from a
% noisy image after filtering it.
% OUTPUT:
% Mean-Square Error (M_SE)
% Peak Signal-to-Noise Ratio (PSNR)%---Checking Input Arguments
if nargin<1||isempty(Esti_Image), error('Input Argument: Estiamted Image Missing');end%---Implentation starts here
if (size(Orig_Image)~= size(Esti_Image)) %---Check images size
error('Input images should be of same size');
else
%---Mean-Square Error(MSE) Calculation
Orig_Image = im2double(Orig_Image);%---Convert image to double class
Esti_Image = im2double(Esti_Image);%---Convert image to double class
[M N] = size(Orig_Image);%---Size of Original Image
diff = Orig_Image - Esti_Image;%---Difference between two images
M_SE = (sum(sum(diff .* diff)))/(M * N); %---Peak Signal-to-Noise Ratio(PSNR) Calculation
if(M_SE > 0)
PSNR = 10*log10(255*255/M_SE);
else
PSNR = 99;
end
end
MetricMeasurement calculates Peak Signal-to-Noise Ratio
原创fpga和matlab 博主文章分类:MATLAB ©著作权
©著作权归作者所有:来自51CTO博客作者fpga和matlab的原创作品,请联系作者获取转载授权,否则将追究法律责任
下一篇:DFT波束形成
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
SNR(Signal to Noise Ratio,信噪比)信噪比 数据 模数转换器 采样频率 有效位
-
python scipy signal 生成 Gaussian noise
如何让你的python程序,在未来某个时间去做一件事情如何让你的程序在未来某个时间去做一件事情呢,注意,这不是简单的闹钟,简单的闹钟就像我们起床,时间设置到每天的早上7点,这是在24小时内的定时,而现在要做到更大的范围,超过24小时,扩大到月,甚至年,那么该如何做呢? 其实一旦实现了年,那么还有哪个时间不能定时呢?也许有人说,上到年,下能到毫秒吗?其实毫秒跟24小时内的定时一样,用的是dateti
python信号signal python如何实现闹钟 python如何实现定时功能 python如何定时 python datetime