Info

This question is closed. Reopen it to edit or answer.

Extracting parts of matrix for sub matrices

1 view (last 30 days)
Akila Udage
Akila Udage on 6 Apr 2020
Closed: MATLAB Answer Bot on 20 Aug 2021
I have 128 by 128 matrix. I want to extract 16 by 16 matrices from seperately.
it sould be like 1-16 colums with 1-16 rows and then 1-16 columns with 17-32 rows and so on for all 128 by 128 matrix. (using a loop)
i was thinking of a loop to get this done
k=15;
for i = 1:16:128
for j= 1:16:128
newsubMat = myMat(i:i+k,j:j+k);
UnifomityCalc = (max(max(newsubMat)))/(min(min(newsubMat))); % calculation for uniformity
newsubMat_UniformityVector(i,j) = UnifomityCalc; %trying to saving it for 8 by 8 matrix
Can you please help me with this?

Answers (1)

James Tursa
James Tursa on 6 Apr 2020
E.g., to put them into a cell array
mat = your matrix
result = mat2cell(mat,repmat(16,8,1),repmat(16,8,1));
  1 Comment
Akila Udage
Akila Udage on 6 Apr 2020
Edited: Akila Udage on 6 Apr 2020
i was thinking of a loop to get this done
for i = 1:16:128
for j= 1:16:128
newsubMat = myMat(i:i+15,j:j+15);
UnifomityCalc = (max(max(newsubMat)))/(min(min(newsubMat))); % calculation for uniformity
newsubMat_UniformityVector(i,j) = UnifomityCalc; %trying to saving it for 8 by 8 matrix
can you pleas explain this ?

This question is closed.

Community Treasure Hunt

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

Start Hunting!