Cuáles son todas las formas posibles y eficientes de memoria para almacenar múltiples imágenes de tamaño fijo y tipos de datos en Matlab?

stoy tratando de comprender las formas más eficientes de memoria para almacenar múltiples imágenes del mismo tamaño en Matlab.

Todo lo que escribo aquí se basa en mi poco conocimiento y puede no ser exacto.

asta ahora, sé que podemos leer imágenes en conjuntos de celdas, conjuntos multidimensionales, estructuras.

num_imgs = 100;
nrow = 512;
ncol = 512;
cellArray = cell(1,num_imgs);
cellArray(1,:) = {zeros(nrow,ncol,'logical')};
threeDArray = zeros(nrow,ncol,num_imgs,'logical');
structArray(1:num_imgs ) = struct('Image', zeros(nrow,ncol,'logical'));

whos

Name               Size                    Bytes  Class      Attributes

  cellArray          1x100                26225600  cell                 
  ncol               1x1                         8  double               
  nrow               1x1                         8  double               
  num_imgs           1x1                         8  double               
  structArray        1x100                26225664  struct               
  threeDArray      512x512x100            26214400  logical       

De estothreeDArray es mejor ya que no necesita ningún puntero para matrices consecutivas.

mientras que,cellArray es el segundo mejor, ya que solo necesita punteros para cada conjunto de 8 bytes adicionales (es decir, 100 * 8 bytes más).

Finalmente, creo que las estructuras necesitan un poco más dependiendo de la etiqueta de cada campo.

Ahora

¿Hay alguna otra forma posible de hacer esto?

Cuál es la forma más eficiente de memoria para leer, escribir y otros parámetros importantes que afectan el rendimiento de su código?

Entiendo que las celdas tienen punteros, por lo que cada elemento encellArray no tiene que almacenarse contiguamente en la memoria, mientras quethreeDArray necesita memoria contigua.

¿Alguien puede explicar este tipo de factores que afectan el rendimiento en detalle?

Respuestas a la pregunta(1)

Su respuesta a la pregunta