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

1 次查看(过去 30 天)
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

采纳的回答

Ahmet Cecen
Ahmet Cecen 2016-11-11
C = imfilter(A,B);

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by