How to 'aggregate' a stack of images (picture 1) in matlab as in attached picture 2
조회 수: 1 (최근 30일)
이전 댓글 표시
I tried to use loop as below
for i = 1 : 10
imshow(df(:,:,i)) % Problem because df is the structure, not the 3-D array dff.
end
but it did not work.
댓글 수: 0
채택된 답변
Image Analyst
2022년 8월 7일
편집: Image Analyst
2022년 8월 9일
% Take 10 fields of your structure called "df",
% and put into slices of a new 3-D image array called "dff":
[rows, columns] = size(df.x1);
% Preallocate space for the 3-D array dff
dff = zeros(rows, columns, 10, class(df.x1));
% Get fields of structure and put them into correspondingly-named slices of dff.
dff(:, :, 1) = df.x1; % Put the x1 image into slice1.
dff(:, :, 2) = df.x2; % Put the x2 image into slice2.
dff(:, :, 3) = df.x3; % Put the x3 image into slice3.
dff(:, :, 4) = df.x4; % Put the x4 image into slice4.
dff(:, :, 5) = df.x5; % Put the x5 image into slice5.
dff(:, :, 6) = df.x6; % Put the x6 image into slice6.
dff(:, :, 7) = df.x7; % Put the x7 image into slice7.
dff(:, :, 8) = df.x8; % Put the x8 image into slice8.
dff(:, :, 9) = df.x9; % Put the x9 image into slice9.
dff(:, :, 10) = df.x10; % Put the x10 image into slice10.
댓글 수: 2
Image Analyst
2022년 8월 9일
@Bilal Alsharif, see edits above. I've used your exact variable names (instead of general names) and added a lot more comments.
추가 답변 (1개)
yanqi liu
2022년 8월 9일
yes,sir,may be use eval and for loop to make the structer,such as
for i = 1:10
figure(i);
imshow(eval(sprintf('df.x%d', i)), [])
end
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Image Segmentation and Analysis에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!