如何在随机值脉冲噪声的情况下计算PSNR值?

时间:2015-12-06 11:38:59

标签: matlab image-processing

我的图像被随机脉冲噪声破坏了。我使用标准中值滤波器进行过滤并获得滤波图像。我有原始和过滤的图像。现在我想计算图像的PSNR。我尝试如下,但得到错误图像。请看看,告诉我我做错了什么?

ip1=imread(a,'bmp');                  
I = im2double(ip1); 
p = 0.1;    
Ir = (I + p*rand(size(I)))/(1+p);
I1=im2uint8(Ir);  
ip=medfilt2(I1);
imshow(ip);
[peaksnr, snr] = psnr(ip, ip1);

它提供过滤后的图像,但在计算PSNR时有错误 错误:> ???未定义的功能或方法' psnr'输入参数类型' uint8'。
错误==> [peaksnr,snr] = psnr(ip,ip1);
我做错了什么?

0 个答案:

没有答案