Matlab rgb2gray()未定义的函数错误

时间:2013-02-14 20:11:08

标签: matlab licensing

不幸的是,针对所有阻力,我再次被迫使用Matlab。我尝试使用一些我认识的代码,几个月前发布了这个代码。

这是我的代码:

colour_image = imread(filename);
grey_image = rgb2gray(colour_image); 

这是我的错误:

Undefined function 'rgb2gray' for input arguments of type 'uint8'.

以下是rgb2gray的文档:

% If the input is an RGB image, it can be uint8, uint16, double, or
% single.

因此该函数允许使用uint8参数,但在给出uint8参数时给出错误。为什么呢?

我用Google搜索并被引导到这个链接:

http://www.mathworks.com/support/solutions/en/data/1-4B6E5E/

好吧,让我们确保我有正确的工具箱(即使我知道它在那里)

我输入了:ver

Image Processing Toolbox                              Version 8.0        (R2012a)

好的,我有正确的工具箱,许可和所有。

我输入了:-all rgb2gray

C:\Program Files\MATLAB\R2012a\toolbox\images\images\rgb2gray.m  % Has no license available

好的,即使我拥有正确的许可工具箱,这个特定功能也没有获得许可....嗯好吗?

所以,试试这个"许可证结帐"事情,但首先我必须找到我的许可证密钥名称。要查找许可证密钥名称,我需要查看许可证文件中的INCREMENT行...很好。

所以我去了:

http://www.mathworks.com/support/solutions/en/data/1-63ZIR6/index.html

嗯,因为这是通过网络而我在客户端机器上我有一个" network.lic",我打开它找到我的INCREMENT行,当然它不存在!

If your license.dat file has no INCREMENT lines, refer to your license administrator for these INCREMENT lines.

有人可以让我摆脱痛苦吗?

编辑:所以在运行许可证检查后,我得到:

License checkout failed.
License Manager Error -101

根据网站:

This error message indicates that the license administrator has reserved all the licenses of the product you are trying to use for other users.

由于我的管理员休假,我将尝试说服我的主管让我切换到使用C / C ++图像处理库。谢谢你的帮助。

1 个答案:

答案 0 :(得分:2)

许可证文件中INCREMENT for Image Processing Toolbox之后的短名称是:

  

Image_Toolbox

<强>更新:

或者,也许这可以帮助您:How do I convert my RGB image to grayscale without using the Image Processing Toolbox?