How can I get different 2D Matrices from a 3D matrix?
2 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Jose Andrés
il 23 Gen 2015
Risposto: Jose Andrés
il 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 Commenti
Risposta accettata
Matz Johansson Bergström
il 23 Gen 2015
Modificato: Matz Johansson Bergström
il 23 Gen 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 Commenti
Più risposte (2)
Roger Stafford
il 23 Gen 2015
Use matlab's 'squeeze' function to eliminate the singleton dimension(s).
0 Commenti
Vedere anche
Categorie
Scopri di più su Logical in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!