Я не совсем понимаю, что мы имеем в виду с помощью вектора мышления, в основном из-за простых примеров, приведенных в документации, и я надеюсь, что кто-то может помочь мне понять это немного лучше.Векторизация кода
Итак, я пытаюсь выполнить выборку NxN из матрицы ncols x nrows x ielements и вычислить среднее значение для каждого элемента и сохранить максимум средних значений. Использование для петель, код будет выглядеть следующим образом:
for x = 1+margin : nrows-margin
for y = 1+margin : ncols-margin
for i=1:ielem
% take a NxN sample
sample = input_matrix(y-margin:y+margin,x-margin:x+margin,i)
% compute the average of all elements
result(i) = mean2(sample);
end %for i
% store the max of the computed averages
output_matrix(y,x)=max(result);
end %for y
end %for x
может кто-нибудь сделать хорошую векторизации этого примера ситуации? T
Возможно, вам стоит посмотреть на функции 'conv2' или' filter2'. –
Я буду, но есть ли другой способ векторизовать этот тип кода с помощью функций, подобных conv2 или filter2, и делать это, используя большее числовое индексирование? – VisLab