Рассмотрим следующую функцию, которая принимает серое изображение (2D матрица) в качестве входных данных:
function r = fun1(img)
r = sum(sum(img));
Я подумываю использовать arrayfun
для обработки серии изображений (3d матрица), таким образомустраняя необходимость в цикле for
:
arrayfun(@fun1, imgStack);
Но arrayfun
пытается обработать каждый элемент imgStack
как вход для fun1
, результат предыдущей операции также является трехмернымматрица.Как я могу сообщить arrayfun
, что я хочу повторить fun1
только в 3-м измерении imgStack
?
Другой вопрос, arrayfun
вызывает ли fun1
параллельно?