У меня есть часть кода, которая находит углы Харриса в последовательности изображений. Мне нужно сделать это для 92 изображений, но это довольно медленно. Поэтому я бы хотел запустить код параллельно. В приведенном ниже коде есть ошибка, связанная с переменной "corners"
%% Harris corners
max_pts = 900;
corners = zeros(max_pts,2,size(images,3));
parfor i = 1:size(images,3)
I = images(:,:,i);
[y x] = get_corners(I,max_pts);
corners(1:length(y),:,i) = [y x];
end
, в которой говорится:
MATLAB запускает циклы в функциях parfor, разделяя итерации цикла на группы, а затем отправляя их рабочим MATLAB, где они работают параллельно . Чтобы MATLAB делал это повторяемым и надежным способом, он должен уметь классифицировать все переменные, используемые в цикле. Предлагаемое действие Исправьте использование указанной переменной. Для получения дополнительной информации о классификации переменных и других ограничениях на итерацию цикла parfor см. «Классификация переменных» в документации Parallel Computing Toolbox.
Есть идеи, как это исправить?
Спасибо!