how to split and store it into one arrray?
Info
Diese Frage ist geschlossen. Öffnen Sie sie erneut, um sie zu bearbeiten oder zu beantworten.
Ältere Kommentare anzeigen
hello.. i'm trying to split image into block 8x8, then extract the pixel values from each block. i want to move position of blocks. then store it back into 1 array..how do i get it?sorry, i am newbie thanks
Antworten (1)
David Sanchez
am 15 Jul. 2013
I = your_image;
[rows,cols] = size(I); % dimensions of your image
M = cell(8,8);
for k=1:8
for l = 1:8
M{k,l} = I( (rows*(k-1)/8 + 1):(rows*k/8) , (cols*(l-1)/8 +1):(cols*l/8) );
M{k,l} = reshape8M{k,l},(rows*cols/64),1); % reshape into single column
end
end
2 Kommentare
David Sanchez
am 15 Jul. 2013
here with the typo in the 7th line corrected:
I = your_image;
[rows,cols] = size(I); % dimensions of your image
for k=1:8
for l = 1:8
M{k,l} = I( (rows*(k-1)/8 + 1):(rows*k/8) , (cols*(l-1)/8 +1):(cols*l/8) );
M{k,l} = reshape(M{k,l},(rows*cols/64),1); % reshape into single column
end
end
Jan
am 15 Jul. 2013
@David: You can edit your question instead of adding a comment with a corrected version.
Diese Frage ist geschlossen.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!