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

6 次查看(过去 30 天)
i want to divide an 512*512 image into 8*8 blocks using matlab can u please help me

回答(3 个)

Mihir Daptardar
Mihir Daptardar 2014-1-22
编辑:Mihir Daptardar 2014-1-22
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 2014-1-22
Using MAT2TILES,
mat2tiles(yourImage,[8,8]);

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

类别

Help CenterFile Exchange 中查找有关 Image Processing Toolbox 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by