Convert matrix size from 1xmxn to mxn
73 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Kris zenitis
le 2 Juil 2014
Modifié(e) : Erik Kruit
le 13 Oct 2020
I want to compare two matrices. One's size is mxn and the other matrix size 1xmxn. How can I convert 1xmxn to mxn??
0 commentaires
Réponse acceptée
Andrei Bobrov
le 2 Juil 2014
Modifié(e) : Andrei Bobrov
le 2 Juil 2014
Z = randi(250,1,3,4); % your matrix
one way
out = squeeze(Z)';
other
out = permute(Z,[3 2 1]);
or
out = reshape(Z,size(Z,2),[])';
1 commentaire
Erik Kruit
le 13 Oct 2020
Modifié(e) : Erik Kruit
le 13 Oct 2020
Googled really long on this! Thanks!
size(A)=1xMxN matrix. Unable to then imagsc(A(jpos,:,:))
error(using image Color data must be an m-by-n-by-3 or m-by-n matrix.)
Solved by:
Qi=squeeze(A(jpos,:,:));
imagesc(Qi);
% Squeeze used to convert the resulting 1xMxN matrix into a MxN matrix
Plus de réponses (1)
Piyush kant
le 9 Avr 2019
Just adding some context to previous answer by Andrei Bobrov. Basic idea is to convert 1 x m x n matrix into m x n x 1 as matlab omits last dimension if it is 1. Therefore the method i prefer is:
NewMat=sqeeze(Z)';
Whereas other two functions does the same thing.
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!