2014-11-04 100 views
0

我有一些问题。我尝试按照从Mathworks的一些编码:SSIM编码错误

I = imread('cameraman.tif'); 
ssimValues = zeros(1,10); 
qualityFactor = 10:10:100; 
for i = 1:10 
    imwrite(I,'compressedImage.jpg','jpg','quality',qualityFactor(i)); 
    ssimValues(i) = ssim(imread('compressedImage.jpg'),I); 
end 

我只是改变了图像文件,该文件是a.jpgb.jpg,但我从MATLAB得到这个错误:

Undefined function 'ssim' for input arguments of type 'uint8' 
Error in SSIMTesting (line 6) 
ssimValues(i) = ssim(imread('logohalal1.jpg'),i); 

这是为什么?有人可以帮我解释代码和错误吗?对不起,因为我是MATLAB新手。

谢谢。

+1

你有图像处理工具箱吗? – excaza 2014-11-04 13:02:25

+0

是的,我有。为什么它不起作用? – 2014-11-05 16:12:57

回答

0

MATLAB release notes图像处理工具箱显示该功能是R2014a的新功能。如果你有一个老版本的MATLAB,或者你没有那个工具箱,你没有它。这种问题可以通过仅使用MATLAB本地安装帮助中找到的示例来避免,而不是联机帮助。

要检查您的MATLAB版本和已安装的工具箱,请在命令行键入ver
要检查一个函数是否可以在你的MATLAB路径中找到,你可以使用which,例如, which ssim

+0

我正在使用2013b版本。这个版本不支持代码?或者我只需要找到图像处理工具箱? – 2014-11-05 13:22:08

+1

您拥有的版本没有该功能。 MATLAB始终引入新的功能,并且获得它们的唯一(合法的)方式是升级。 – nkjt 2014-11-05 14:35:03