help with standard deviation 3d matrix
4 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I have a 3D matrix of size (600 x 800 x 322) unit 16.
I would like to take the standard deviation of each 600 x 800 matrix -- I am trying to get a result matrix size 1 x 1 x 322 containing the standard deviation of each matrix in this "stack".
I have tried using the std and std2 function, but haven't been able to get this to work.
Please help :)
0 commentaires
Réponse acceptée
Walter Roberson
le 11 Juin 2017
stack_std = reshape(std( reshape( double(YourMatrix), [], size(YourMatrix,3) ) ), 1, 1, []);
Plus de réponses (1)
the cyclist
le 11 Juin 2017
Reshape the matrix before taking the standard deviation, then reshape back:
M = rand(600,800,322);
M_r = reshape(M,480000,322);
sd_r = std(M_r);
sd = reshape(sd_r,[1 1 322]);
Voir également
Catégories
En savoir plus sur Resizing and Reshaping Matrices dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!