How can I divide image into 3x3 pixels?
Mostrar comentarios más antiguos
I want to divide image into none-overlapping blocks into size of 3x3 pixels
Respuestas (3)
Image Analyst
el 28 de Oct. de 2016
0 votos
See the FAQ: http://matlab.wikia.com/wiki/FAQ#How_do_I_split_an_image_into_non-overlapping_blocks.3F
Depending on what you want to do with the 3x3 subimages, you might also want to look at imfilter(), conv2(), or nlfilter().
Blocks = mat2tiles(yourImage,[3,3]);
3 comentarios
Abdullah
el 28 de Oct. de 2016
Image Analyst
el 29 de Oct. de 2016
What for? What do you want to do once you have the 3x3 window? Maybe you can use conv2(), imfilter(), or nlfilter() without ever directly splitting up the image yourself (like I suggested in my answer).
And what is the difference whether you call them blocks or tiles? Either way, it's a sliding window of a 3-by-3 sub-image (window) of the full image. I don't understand your comment about this.
Matt J
el 30 de Oct. de 2016
@Abdullah,
I'm also not clear on the distinction "3 pixels by 3 pixels not 3x3 blocks". Bear in mind though, that mat2tiles is a general tool for dividing up the image into non-overlapping sub-images. You can divide the image up into blocks of other sizes, if it suits you.
Alex Taylor
el 7 de Nov. de 2016
0 votos
The Image Processing Toolbox function blockproc can be used to execute any generic operation on blocked regions of your image.
I'm not sure what the distinction "3x3 pixels" vs. blocks vs. tiles is, as other users have posted.
1 comentario
Abdullah
el 27 de Nov. de 2016
Categorías
Más información sobre Neighborhood and Block Processing en Centro de ayuda y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!