Hi Everybody, I have three for loops and their processing is very slow, I need to speed up the process. For that purpose we need to convert it to vectors . Any help will be strongly encouraged. Below is the code:
for k = 1:size_glcm_3 glcm_sum(k) = sum(sum(glcm(:,:,k))); glcm(:,:,k) = glcm(:,:,k)./glcm_sum(k); % Normalize each glcm
glcm_mean(k) = mean2(glcm(:,:,k)); % compute mean after norm
glcm_var(k) = (std2(glcm(:,:,k)))^2; for i = 1:size_glcm_1 for j = 1:size_glcm_2 p_x(i,k) = p_x(i,k) + glcm(i,j,k); p_y(i,k) = p_y(i,k) + glcm(j,i,k); % taking i for j and j for i
p_xplusy((i+j)-1,k) = p_xplusy((i+j)-1,k) + glcm(i,j,k); p_xminusy((abs(i-j))+1,k) = p_xminusy((abs(i-j))+1,k) +... glcm(i,j,k); end endend
All arrays are pre-allocated, size of size_glcm_1 and size_glcm_2 is 512 and size of size_glcm_3 is 1 .
Best Answer