如何在M文件中返回图像? (MATLAB)

时间:2011-10-03 07:54:41

标签: image function matlab

我的函数文件以function drawline(point1,point2,color,img)开头。最后,我应该返回一张图片。我如何编码返回线?

我在其他Stack Overflow问题中发布了代码 Color issue in MATLAB

2 个答案:

答案 0 :(得分:1)

在您的代码中,您应该返回img变量,因为那是您正在修改的变量,而不是image变量,它不存在。

此外,由于MATLAB中的所有基本类型(有效地)都是通过值而不是引用传递的,因此需要分配输出参数以便返回任何内容。使用以下函数调用:

[img] = drawline(p1,p2,color,img);

编辑:您的功能应如下所示:

function img = drawline(p1,p2,color,img)
...
% code that updates IMG.
...

然后在命令窗口中你必须写

[img] = drawline(p1,p2,color,img);

可在此处找到MATLAB函数的介绍:http://www.mathworks.co.uk/help/techdoc/learn_matlab/f4-2525.html

答案 1 :(得分:0)

您不需要对返回行进行编码,只需定义函数以便返回图像:

function [ Image ] = drawline( point1,point2,color,img )
    ...
    function_instructions
    ...
end

重要的是你将图像存储在Image变量中。

在调用函数drawline的脚本中,您应该使用这种语句:

 [ Image ] = drawline( point1,point2,color,img ); 

如果您需要有关matlab图像处理的帮助,请查看以下内容: