Summary
NxtomoLoader | |||||
Process category | Brief description | Computational demand for typical tomography data (low, medium, high) | Comment(s) | Reference(s) | Common alternative process(es) |
---|---|---|---|---|---|
loader | To specify the location of raw dataset(s) to be used as input. | Low |
|
Parameters
Brief description |
---|
>>> disp -avv ------------------------------------------------------------------------------------- 1) NxtomoLoader(savu.plugins.loaders.full_field_loaders.nxtomo_loader) A class for loading standard tomography data in Nexus format. 1) preview : [] A slice list of required frames. 2) image_key_path : entry1/tomo_entry/instrument/detector/image_key Path to the image key entry inside the nxs file. 3) name : tomo The name assigned to the dataset. 4) 3d_to_4d : False Set to true if this reshape is required. 5) flat : [None, None, 1] Optional Path to the flat field data file, nxs path and scale value. 6) data_path : entry1/tomo_entry/data/data Path to the data inside the file. 7) dark : [None, None, 1] Optional path to the dark field data file, nxs path and scale value. 8) angles : None A python statement to be evaluated or a file. 9) ignore_flats : None List of batch numbers of flats (start at 1) to ignore. ------------------------------------------------------------------------------------- >>>
Additional notes |
---|
Item | Parameter name | Parameter format | Example(s) | Comment(s) | |
---|---|---|---|---|---|
Parameter value | Effect | ||||
1 | preview | [ind_0, ind_1,... ind_(n-1)] | [ ] | To load the entire n-dimensional dataset, stored at location specified by the data_path parameter. | Empty Python list, [ ], is the default value of the preview parameter. |
[:, :, :] | To load the entire 3d dataset, stored at location specified by the data_path parameter. | ||||
[:, s, :] | To load from a given 3d dataset (stored at the data_path location) only a subset of data corresponding to the s-th sinogram. | This particular interpretation applies if data are laid out in the (angle_enumeration, image_height, image_width) format. | |||
[p, :, :] | To load from a given 3d dataset (stored at data_path location) only a subset of data corresponding to the p-th projection. | This particular interpretation applies if data are laid out in the (angle_enumeration, image_height, image_width) format. | |||
[:, :, 123:-123] | To load from a given 3d dataset (stored at the data_path location) only a subset of data generated by cropping the width of each projection by 123 pixels on either side. | This particular interpretation applies if data are laid out in the (angle_enumeration, image_height, image_width) format. | |||
[:, mid - 1:mid + 1, :] | To load from a given 3d dataset (stored at the data_path location) only a subset of data corresponding to the middle 2 sinograms. | mid is one of Savu keywords (with an obvious meaning). | |||
[0:end:2, :, :] | To load from a given 3d dataset (stored at the data_path location) only a subset of data corresponding to every other projection. | end is one of Savu keywords (with an obvious meaning). | |||
[:, 0:end:2, :] | To load from a given 3d dataset (stored at the data_path location) only a subset of data corresponding to every other sinogram. | ||||
2 | image_key_path | Mandatory dataset. | |||
3 | name | ||||
4 | 3d_to_4d | ||||
5 | flat | [<path-to-NeXus-file>, <path-to-dataset>, <exposure-time-compensation-factor>] | [/dls/i13/data/2018/cm123-4/raw/5.nxs, entry1/instrument/detector/pco1/data, 1.25] | To load all flats from the flats-only dataset found at entry1/instrument/detector/pco1/data inside a NeXus scan file, located on the file system at /dls/i13/data/2018/cm123-4/raw/5.nxs, and then to multiply their pixel values by 1.25 (to compensate for the flat-field exposure time being 0.8 times shorter than the sample-projection exposure time). |
|
6 | data_path | Mandatory dataset. | |||
7 | dark | [<path-to-NeXus-file>, <path-to-dataset>, <exposure-time-compensation-factor>] | [/dls/i13/data/2018/cm123-4/raw/6.nxs, entry1/instrument/detector/pco1/data, 1] | To load all darks from the darks-only dataset found at entry1/instrument/detector/pco1/data inside a NeXus scan file, located on the file system at /dls/i13/data/2018/cm123-4/raw/6.nxs, and then to multiply their pixel values by 1 (no change to intensities). |
|
8 | angles | None (Python keyword) | If the angles parameter is set to None, then this loader attempts to find them in a default dataset, located at entry1/tomo_entry/data/rotation_angle in the input NeXus scan file. | ||
numpy.linspace(0,180,1801) | array([ 0.00000000e+00, 1.00000000e-01, 2.00000000e-01, ..., 1.79800000e+02, 1.79900000e+02, 1.80000000e+02]) | ||||
9 | ignore_flats | [ind_1, ind_2,... ind_m] | [1, r] | To ignore the initial and the r-th batch in a given series of batches of flats (each containing however many individual flat-field images), stored in the same dataset as darks and sample projections. |
|
Usage
How to load dark- and flat-field data from individual NeXus datasets? |
---|
Any standard tomography NeXus scan file, generated by GDA, stores all the images (i.e. sample projections as well as dark- and flat-field images) in a single 3-dimensional dataset located at entry1/tomo_entry/data/data. This combined image dataset is accompanied by another important dataset which contains the corresponding image-key information, located in the same file at entry1/tomo_entry/instrument/detector/image_key. The default values of NxtomoLoader's parameters have been selected to reflect this standard scenario. However, NxtomoLoader can also be used to load dark- and flat-field data from two individual NeXus datasets, if necessary. This non-standard scenario can be handled by making appropriate modifications to the default settings of the flat and dark parameters (see the table above for more details).