Data Structure#

Ewokstomo tasks do not rely on a specific file structure. The entry point of an ewokstomo workflow is either an HDF5 file (for insitute specific tasks), or more commonly an .nx file (NXtomo). From this path, the workflow will save the results in specific folder following this structure:

.
├── parent/
│   ├── <dataset>.nx              # NXtomo file produced by H5ToNx
│   └── gallery/                  # Projection thumbnails (200x200 + *_large) + projections GIF
├── references/
│   ├── <dataset>_darks.hdf5      # Reduced darks from ReduceDarkFlat
│   └── <dataset>_flats.hdf5      # Reduced flats from ReduceDarkFlat
└── slices/
    ├── <prefix>/<prefix>_<idx>.hdf5  # Single-slice reconstruction from ReconstructSlice
    └── gallery/                      # Slice thumbnails (200x200 + *_large)

Several things can be noted:

  • <prefix> is built from the NX filename and technique (e.g. TestEwoksTomo_0010_absorption_xy_00008).

  • Gallery tasks always emit a full-size _large image plus a 200x200 resized version.

  • Parents are created automatically; you can point nx_path or process_folder_path to any writable location that fits the structure above.

Here is where here each tasks writes:

  • (ESRF-only) H5ToNx creates projections/<dataset>.nx.

  • ReduceDarkFlat writes reduced references into references/<dataset>_{darks,flats}.hdf5.

  • BuildProjectionsGallery stores projection thumbnails under projections/gallery/ and writes <dataset>_projections.gif (200x200, 32 colors).

  • ReconstructSlice writes a single slice under slices/ and sets the Nabu output directory to that folder.

  • BuildSlicesGallery places slice thumbnails under slices/gallery/.

  • (ESRF-only) DataPortalUpload accepts either the processed dataset root or one of its projections/ or slices/ subfolders; it extracts metadata (beamline, proposal, sample, dataset) from the path when using the ESRF scheme.

Note

ESRF-specific paths:

At ESRF the file structure is specific. The raw data (from the acquisition) is stored as:

RAW_DATA/<sample>/<dataset>/
├── <dataset>.h5                  # Main acquisition (e.g. Bliss HDF5)
└── scan000X/*.h5                 # Folders containing lima files

Acquisition files live under RAW_DATA/<sample>/<dataset>/ while workflow outputs live under PROCESSED_DATA/<sample>/<dataset>/.

The processed dataset mirrors the raw dataset name and groups the artifacts produced by ewokstomo tasks:

PROCESSED_DATA/<sample>/<dataset>/
├── projections/
│   ├── <dataset>.nx
│   └── gallery/                  # Thumbnails + <dataset>_projections.gif
├── references/
│   ├── <dataset>_darks.hdf5
│   └── <dataset>_flats.hdf5
└── slices/
    ├── <prefix>/<prefix>_<idx>.hdf5
    └── gallery/