Я ищу любые хорошие учебники по векторизации (циклам) в MATLAB.Введение в векторизация в MATLAB - любые хорошие уроки?
У меня довольно простой алгоритм, но он использует две петли for
. Я знаю, что это должно быть просто для векторизации, и я хотел бы узнать, как это сделать, а не просить вас о решении.
Но чтобы вы знали, что проблема у меня есть, так что вы могли бы предложить лучшие учебники, которые показывают, как решать подобные проблемы, вот план моей проблемы:
B = zeros(size(A)); % //A is a given matrix.
for i=1:size(A,1)
for j=1:size(A,2)
H = ... %// take some surrounding elements of the element at position (i,j) (i.e. using mask 3x3 elements)
B(i,j) = computeSth(H); %// compute something on selected elements and place it in B
end
end
Итак, я m НЕ запрашивать решение. Я прошу хорошие учебные пособия, примеры векторизации циклов в MATLAB. Я хотел бы узнать, как это сделать и сделать это самостоятельно.
Я бы категорически возражал против использования blockproc, если вы можете его избежать - он очень медленный (также он подвергся несовместимому изменению с 2009a по 2009 год). Если у вас достаточно ОЗУ, всегда желательно запускать 'im2col' и применять функцию за один раз. – Jonas
@ Джонас: Приятно знать. Я фактически не использую BLOCKPROC достаточно часто, чтобы столкнуться с этими проблемами. Я просто перечислял его как один из нескольких вариантов, которые OP мог бы рассмотреть. – gnovice