How can I get different 2D Matrices from a 3D matrix?
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Jose Andrés
le 23 Jan 2015
Réponse apportée : Jose Andrés
le 31 Mar 2015
Hi everyone, I have looked for someone with my same question but I haven't found nothing so specific.
I have a 3D matrix ( m x n x z ) and I want to get from that Matrix, the 2D matrices m x z and n x z. I am working with 3D medical images and I need different views of my patient, and I haven´t any problem to get the m x n matrix with this code:
for z=1:length(z)
figure;
imshow (A (:,:,z))
end
but if I do the same with the other variables, my resultant matrix is still a 3D matrix and I can't show it with the "imshow" function.
Please, could you help me?
Thank you so much.
0 commentaires
Réponse acceptée
Matz Johansson Bergström
le 23 Jan 2015
Modifié(e) : Matz Johansson Bergström
le 23 Jan 2015
The size of the A(1,:,:) will be a 1-by-n-by-z matrix, so you have to temporarily store it in a 2d matrix
tmp(:,:) = A(1,:,:);
size(tmp)
0 commentaires
Plus de réponses (2)
Roger Stafford
le 23 Jan 2015
Use matlab's 'squeeze' function to eliminate the singleton dimension(s).
0 commentaires
Voir également
Catégories
En savoir plus sur Logical dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!