MATLAB 图像处理:从基础运算到图像去模糊
1. 匿名函数与变量作用域
在 MATLAB 中,函数可以写成匿名函数的形式,它无需存储在文件中,而是在命令行语句里即时定义。例如:
myfunction = @(x,y) (sum(x:y));
x = 10;
y = 15;
z = myfunction(x,y)
在这个例子里,变量 myfunction 的数据类型是 function_handle , @ 运算符创建句柄,紧跟其后的括号 () 包含函数的输入参数。每个语句会返回一个输出,并赋值给调用变量 z 。
若要处理多个输出,可以创建一个元胞数组。示例如下:
f = {
@(x,y) (sum(x:y));
@(x,y) (prod(x:y));
};
x = 10;
y = 15;
f{1}(x,y)
f{2}(x,y)
函数内部定义的变量为局部变量,仅在函数内部存在,在函数外部不存在。执行函数前,MATLAB 会检查当前工作区中是否存在同名变量,若存在则执行该变量而非函数。可以使用 BM 函数 path 列出 MATLAB 用于搜索变量和函数的文件夹, addpath 函数将指定文件夹添加到搜索路径顶
超级会员免费看
订阅专栏 解锁全文
7407

被折叠的 条评论
为什么被折叠?



