Docs/comments on how to access the now recommended data_xyztc structure?

Quick question (note I ran out of time to do a full search of PYME issues/commits/code, so may well have overlooked this).

What is the recommended way to access the respective dimensions of the data_xyztc structure?

I was confused by, for example:

image.data_xyztc.shape
(282, 276, 6073, 1, 1)

which I would have interpreted as z-dimension=6073 where I am almost certain this is time in this data set. Are there some access guidance notes how to properly handle questions like this?

Use case: I am trying to make a GUI interface for the SOFI code and need to interpret the dimensionality of the data correctly for calling into those.

Quick reply as I’m on the bus:

  • if dimensionality of input is unknown/unspecified we assume z for the extra dimension. This is subject to change and might be replaced by some heuristics on, e.g. series length and/or file type.
  • dimensionality of a loaded image can be changed using processing->redimension from the menu. (not sure if this is merged yet)

Just confirmed that the redimension functionality is in. Current recommended approach is as follows (using your data as an example):

  1. load image
  2. choose processing->redimension and set the t size to 6073 and the z size to 1 (note: this is currently missing any form of checking - it’s on the user to select new dimensions which are compatible with the old ones, enforcing this is on the TODO list)
  3. This opens a new (lightweight) copy of the image with the dimensions indexable as expected.

Medium term, look at
a) ensuring the image generation includes dimension info
b) that we read any dimension info present properly

Great, thanks, exactly the guidance I was looking for.