Clear Filters
Clear Filters

divide image into block of size 1*2

1 view (last 30 days)
I have a 512*512 image and I want to divide into blocks each having 1x2 pixels.So I will get total 131072 blocks.Now I want to process each blocks.
i am doing in matlab code.. Any idea?

Accepted Answer

Walter Roberson
Walter Roberson on 12 Oct 2016
image_blocks = num2cell(TheImage);
Now image_blocks{J,K} will be the 1 x 1 block corresponding to the pixel at TheImage{J,K}
I cannot think of any advantage of dividing into 1 x 1 blocks, unless perhaps it is for convenience in holding the bit equivalent as a unit ? But if that is the situation then
bit_cells = arrayfun(@(V) dec2bin(V,8), TheImage, 'Uniform', 0);
  2 Comments
aditya kumar sahu
aditya kumar sahu on 12 Oct 2016
Edited: aditya kumar sahu on 12 Oct 2016
Thank you Mr. Walter Roberson ..you are right..no use of 1*1..BUT IF I WANT TO DO 1*2 PIXELS IN A BLOCK..THEN HOW CAN I
Walter Roberson
Walter Roberson on 12 Oct 2016
image_blocks = mat2cell(TheImage, ones(1,size(TheImage,1), 2 * ones(1, size(TheImage,2)/2) );

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!