How to avoid nested loops when taking portions of a matrix(e.g using every 10x10 matrix in a 100x100 matrix)?

1 visualización (últimos 30 días)
I am interested in running several operations in every 10x10 matrix in a 100x100 matrix. How do I avoid nested loops here? For example,
A = rand(100,100);
B = rand(10,10);
C = zeros(91,91);
for i = 1:91
for j = 1:91
D = B .* A(i:i+9,j:j+9);
C(i,j) = sum(D(:));
end
end

Respuesta aceptada

Ahmet Cecen
Ahmet Cecen el 11 de Nov. de 2016
C = imfilter(A,B);

Más respuestas (0)

Categorías

Más información sobre Loops and Conditional Statements en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by