不幸的是,针对所有阻力,我再次被迫使用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 ++图像处理库。谢谢你的帮助。
答案 0 :(得分:2)
许可证文件中INCREMENT for Image Processing Toolbox之后的短名称是:
Image_Toolbox
<强>更新:强>
或者,也许这可以帮助您:How do I convert my RGB image to grayscale without using the Image Processing Toolbox?