How to downsample the 3D matrix in matlab??

23 views (last 30 days)
Due to computational limitations, I need to downsample the 3D (1500x1500x1700) matrix by a factor of 2. The binning process should merg the 2x2x2 voxels and assign the mean intensity value of the group to the corresponding voxel in the reduced image.

Accepted Answer

Jan
Jan on 24 Jul 2022
X = rand(1500, 1500, 1700); % 28.5 GB - does not run in the forum!
Y = reshape(X, 2, 750, 2, 750, 2, 850);
Z = squeeze(sum(Y, [1,3,5])) / 8;
size(Z)
  4 Comments
Rizwan Khan
Rizwan Khan on 25 Jul 2022
Yes, I omitted the last vector before downsampling.
thanks Jan

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!