How to create a 3D stack using 2D images

2 ビュー (過去 30 日間)
DM
DM 2021 年 4 月 13 日
編集済み: Matt J 2021 年 4 月 13 日
Hi,
I have a 2D binary image with dimensions [145,145] and I would like to create a 3D stack using 10 times the same 2D binary image, i.e. a series of the same 2D images.
I tried the following code but I am ending up with a 2D image instead of 3D.
mask = load_nii('~/mask_2d.nii');
mask_2d = double(mask.img);
mask_3d = zeros(145,145,10);
for i = 1:10
mask_3d(:,:,i) = mask_3d(:,:,i)+mask_2d(:,:);
end
Any help would be much appreciated.

回答 (1 件)

Matt J
Matt J 2021 年 4 月 13 日
編集済み: Matt J 2021 年 4 月 13 日
Are you sure you need to do that? It seems like a waste of memory to copy the same image 10 times. If you're sure it's what you want, however,
mask_3d=repmat(mask_2d,1,1,10);

カテゴリ

Help Center および File ExchangeImage Segmentation and Analysis についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by