我有以下过程。
for x = 1:60
for y = 1:160
% load a 2D 'Image' from a 3d matrix
for a = 0:52
for b = 0:52
imageWin = Image((a*8+1):(a*8+96), (b*8+1):(b*8+96));
for d = 1:5
[glcm(:,:,d),im] = graycomatrix(imageWin,'NumLevels',256,'G',[],'Symmetric', true,'Offset',d);
end
% Calculation which produce 'results' and takes 0.16 seconds
end
end
finalResult(:,:,y) = result;
end
save(strcat('finalResult', num2str(x),'.mat'), 'finalResult');
end
我的3d矩阵是512x512x160x60。因此,一个' Image'将有2809,96x96窗口。
正如你所看到的,这对于一个人来说需要7.5分钟,因此需要19个小时才能完成所有160个而且所有2809x160x60需要更多。
到目前为止,我已经做了很多改进,并且不知道什么可以做得更多。任何想法都将受到高度赞赏。