How do i split an array in to quarters?

17 views (last 30 days)
mark
mark on 17 Nov 2013
Answered: Image Analyst on 17 Nov 2013
I need to:
Read the image file into Matlab. Split the array into quarters along the longer (628) axis. For the first quarter, generate a one-dimensional array containing the sum of the brightness of all the pixels in the now- quartered dimension, computed at each position in the shorter (470) dimension. This array should have 470 elements. Repeat this for the other three quarters.
I don't know how to split the array or the following steps
Help please

Answers (2)

Walter Roberson
Walter Roberson on 17 Nov 2013
Edited: Walter Roberson on 17 Nov 2013
Q{1} = YourImage(1:end/2, 1:end/2);
Q{2} = YourImage(end/2+1:end, 1:end/2);
Likewise for the other two quarters.

Image Analyst
Image Analyst on 17 Nov 2013
You forgot to tag it as homework, so I did it for you.
I'll assume the longer dimension is the x or columns dimension and it's a grayscale image. Then here's some hints
[rows, columns, numberOfColorChannels] = size(theImage);
% Get the middle 3 columns to divide the array at.
dividingCols = round([1,2,3] .* columns / 4)
% Do the third quarter. All rows in the third quarter lengthwise.
quarter3 = theImage(:, dividingCols(2):end);
theSum = sum(quarter3(:))

Categories

Find more on Cell Arrays 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!