How do I split my 200 pixel image up into 8 by 8?

3 visualizaciones (últimos 30 días)
tash7827
tash7827 el 29 de Jul. de 2015
Respondida: Image Analyst el 30 de Jul. de 2015
I have a 200 pixel image (lena) that i need to split into patches, each one 25 x 25. Is there a way I can do this without manually doing the following?
lena11 = lena(1:25,1:25);
lena12 = lena(1:25,25:49);
lena21 = lena(25:49,1:25);

Respuestas (3)

Azzi Abdelmalek
Azzi Abdelmalek el 29 de Jul. de 2015
A=rand(200)
p=1:25:200
[ii,jj]=ndgrid(p,p)
out=arrayfun(@(x,y) A(x:x+24,y:y+24),ii,jj,'un',0)

Walter Roberson
Walter Roberson el 29 de Jul. de 2015
lenacell = mat2cell(lena, 25 * ones(1,8), 25 * ones(1,8), size(lena,3));

Image Analyst
Image Analyst el 30 de Jul. de 2015
It shows 2 ways - the mat2cell() way, and the indexing way like you showed.

Categorías

Más información sobre Image Filtering and Enhancement 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