A vectorisation problem with arrays (or matrices) and structs
3 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
I have a m x n x p array, consisting of 'p' frames of height 'm' and width 'n' from a movie file. I want to assign all of the images in the array to a struct without using a 'for' loop.
i.e. my code is:
videoHeight = size(movieMatrix,1);
videoWidth = size(movieMatrix,2);
totalFrames = size(movieMatrix,3);
movieStructure(totalFrames).cdata = zeros(videoHeight,videoWidth);
movieStructure(1:totalFrames).cdata = movieMatrix(:,:,1:totalFrames);
instead of:
movieStructure(totalFrames).cdata = zeros(videoHeight,videoWidth);
for i = 1:totalFrames
movieStructure(i).cdata = movieMatrix(:,:,i);
end
I have looked at pages on vectorisation, but I can't find any examples that helps me with structs and arrays together. I appreciate help that anyone offers!
0 Commenti
Risposta accettata
Walter Roberson
il 12 Ott 2011
movieStructure = struct('cdata', mat2cell(movieMatrix,videoHeight,videoWidth,ones(1,totalFrames)) );
0 Commenti
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Structures 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!