how to divide an 512*512 image into 8*8 blocks??

6 views (last 30 days)
priya
priya on 22 Jan 2014
Edited: Mihir Daptardar on 22 Jan 2014
i want to divide an 512*512 image into 8*8 blocks using matlab can u please help me

Answers (3)

Mihir Daptardar
Mihir Daptardar on 22 Jan 2014
Edited: Mihir Daptardar on 22 Jan 2014
You can use the mat2cell command to subdivide the matrix. For this particular case, please refer to the following code snippet. Please make sure that your inputSqMat is exactly divisible into the subDivisions
function out = cropping(inputSqMat, subDivisions)
lengthSqMat = size(inputSqMat,1);
subDivisionVect = subDivisions*ones(1, lengthSqMat/subDivisions);
out = mat2cell(inputSqMat, subDivisionVect, subDivisionVect);
To access a particular element, you can index into the variable. For example:
out{1,1}

Matt J
Matt J on 22 Jan 2014
Using MAT2TILES,
mat2tiles(yourImage,[8,8]);

Image Analyst
Image Analyst on 22 Jan 2014
See the FAQ for two ways to do it, one using cell arrays, and one not.

Categories

Find more on Image Processing Toolbox in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!