how to display multiple images?
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
if true
A = rand(361,285);
B = reshape(A,19,19,19,15);
end
I want to display each 19*19 into an image into 19*15 subplots under one figure.
1 commentaire
José-Luis
le 12 Sep 2017
285 subplots in one figure? That ain't gonna be pretty.
What part of the subplot() documentation did you not understand when you read it?
Réponse acceptée
KSSV
le 12 Sep 2017
Modifié(e) : KSSV
le 12 Sep 2017
Optioin 1: Using subplot
A = rand(361,285);
B = reshape(A,19,19,19,15);
%%Save each 19*19 matrix into image
for i = 1:19
for j = 1:15
idx = sub2ind([15,19],j,i) ;
subplot(19,15,idx) ;
imshow(B(:,:,i,j))
drawnow
end
end
Option 2: Using montage
A = rand(361,285);
B = reshape(A,19,19,19,15);
%%Save each 19*19 matrix into image
fnames = cell(1,19*15) ;
for i = 1:19
for j = 1:15
idx = sub2ind([15,19],j,i) ;
fnames{idx} = strcat(num2str(idx),'.jpeg') ;
imwrite(B(:,:,i,j),fnames{idx}) ;
end
end
montage(fnames, 'Size', [19, 15]);
Plus de réponses (0)
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!