Speed up nested for loops
Afficher commentaires plus anciens
I am trying to speed up the code below. Are there any suggestions on how I could make it faster? Thanks!
%A=ones(192,64); %example matrix
%B=ones(192,64); %example matrix
Bpad=padarray(B,[11 11],0,'both');
c=zeros(1,529);
jcount=1;
for i=-11:11
for j=-11:11
c(jcount)=sum(sum(A.*conj(Bpad(12+i:end-11+i,12+j:end-11+j))));
jcount=jcount+1;
end
end
Réponses (1)
Andrei Bobrov
le 13 Avr 2012
c0 = conv2(B,A);
c = reshape(c0(2:end-1,2:end-1)',1,[]);
OR
c0 = conv2(Bpad,A,'valid');
c = reshape(c0',1,[]);
Catégories
En savoir plus sur Loops and Conditional Statements dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!