Kae*_*ure 5 arrays matlab return-value
我有一个函数,它将一个图像作为参数,并生成一个标签和一个分数作为结果.我偶尔想要快速测试一个(单元格)图像数组,而我所知道的最方便的方法就是使用它arrayfun.这适用于获取我的函数生成的标签,但我真的希望输出是一个[label score]单元格列表.
我可以在我的函数周围编写一个包装器,它捕获两个值并将它们作为单元格矩阵返回,然后在其中调用该包装器arrayfun,但似乎这是一个常见的习惯用法,应该有一种方法来处理多个返回值更多方便.在那儿?(也许已经存在一个可以做到这一点的标准便利功能?类似于deal... 的反面)
您可以使用内置语法将输出作为两个矩阵:
[A, B, ...] = arrayfun(fun, S, ...);
Run Code Online (Sandbox Code Playgroud)
例如:
function [y,z]=foo(x)
y= x*x;
z = x + 10;
end
Run Code Online (Sandbox Code Playgroud)
然后运行该功能:
[A,B] = arrayfun( @foo, magic(5))
Run Code Online (Sandbox Code Playgroud)