我的函数文件以function drawline(point1,point2,color,img)
开头。最后,我应该返回一张图片。我如何编码返回线?
我在其他Stack Overflow问题中发布了代码 Color issue in MATLAB 。
答案 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图像处理的帮助,请查看以下内容: