Summary
VoCentering |
Process category | Brief description | Computational demand for typical tomography data (low, medium, high) | Comment(s) | Reference(s) | Common alternative process(es) |
---|
filter | To find an optimal value of CoR automatically. | High | - Since the computational cost of this auto-centring process is high, it is normally applied to a small
, - but representative subset of data (this can most conveniently be done
using - with the aid of the preview parameter of this process).
- Any reconstructor process included in a process chain after VoCentering will have its centre_of_rotation parameter automatically set to the value determined by the auto-centring process.
- VoCentering should normally be included after a ring-artefact suppression process (such as, e.g. RemoveAllRings)
. - , but before any low-pass process such as PaganinFilter or FresnelFilter.
| Reliable method for calculating the center of rotation in parallel-beam tomography | VoCenteringIterative |
Parameters
Code Block |
---|
title | Savu Configurator command |
---|
|
>>> disp -avv
-------------------------------------------------------------------------------------
1) VoCentering(savu.plugins.centering.vo_centering)
A plugin to find the center of rotation per frame
1) preview : []
A slice list of required frames (sinograms) to use in the calulation of the
centre of rotation (this will not reduce the data size for subsequent plugins).
2) start_pixel : None
The approximate centre. If value is None, take the value from .nxs file else set
to image centre.
3) search_area : (-50, 50)
Search area from horizontal approximate centre of the image.
4) in_datasets : []
Create a list of the dataset(s) to process.
5) search_radius : 6
Use for fine searching.
6) ratio : 0.5
The ratio between the size of object and FOV of the camera.
7) out_datasets : ['cor_raw', 'cor_fit']
The default names.
8) datasets_to_populate : []
A list of datasets which require this information.
9) row_drop : 20
Drop lines around vertical center of the mask.
10) step : 0.5
Step of fine searching.
-------------------------------------------------------------------------------------
>>> |
For basic information on this process, please use the disp -av (or disp -avv or disp-v[v] <process index>) command in Savu Configurator (see above). The table below is intended to provide some additional notes on a number of selected topics:
Item | Parameter name | Parameter format | Example(s) | Comment(s) |
---|
Parameter value | Effect |
---|
1 | preview
|
|
|
| - Note that the preview parameter has a nested-cumulative behaviour, i. e. if one specifies VoCentering's preview parameter together with NxtomoLoader's preview parameter, then VoCentering will effectively be selecting a subset from NxtomoLoader's own subset (rather than the entire dataset). Note also that
|
, in this situation, the indices to be supplied for selecting slices for VoCentering must be specified relative - VoCentering's subset needs to be specified by indices referring to NxtomoLoader's own subset (rather than the entire dataset). For instance, one must set VoCentering's preview parameter to [:, 0, :] in order to select the
|
first tomographic - initial slice of any dataset previously loaded by NxtomoLoader, which may, for example, be
|
of form - [:, 123:456, :] subset of (456-123=333 slices of) the entire dataset.
- If you use any parameter tuning in one (or more) process(es) preceding VoCentering, then the latter will automatically receive (from the immediately preceding process) a dataset of order higher than 3. In this case, if you leave VoCentering's preview parameter at its default value (i.e. [ ]), then VoCentering will have too process the entire rank-N (N>3) dataset, which is hardly ever desired. To avoid this waste of resources, you should specify VoCentering's preview parameter to be a desired, reasonably-sized rank-3 slice of the incoming rank-N dataset. For instance, if you have generated a dataset of shape (D, img_W, img_L, T) by subjecting the original (D, img_W, img_L) data to a single parameter-tuning operation, then your new, parameter-tuned rank-4 dataset needs to be sliced in the last dimension (corresponding to T), e. g. one can use the [:, mid, :, 0] slice of this rank-4 dataset to select its rank-3 subset containing the middle sinogram that was created with the initial value of the tuning parameter.
|
2 | start_pixel
|
|
|
| An initial estimate for the pixel coordinate of an optimal CoR. |
3 | search_area
|
|
|
| If the value of the search_area parameter is set to the default interval of (-50, 50), then VoCentering |
will attempt attempts to search for an optimal value of CoR in the (start_pixel - 50, start_pixel + 50) interval (if the user-specified value of start_pixel is None, then img_W/2 (or a value found in /entry1/tomo_entry/instrument/detector/x_rotation_axis_pixel_position) is used instead). For some datasets, this default, 100-pixel-wide range of search |
(100 pixel) not sufficiently large to include an optimal value of CoR |
, leading to subsequent sub-optimal reconstruction. Therefore, if the value of CoR determined by VoCentering is found to coincide with one of the search-interval limits (i. e. either start_pixel - 50 or start_pixel + 50), then this value of CoR may not necessarily be optimal, and one should re-run VoCentering with a larger value of the search_area parameter to confirm this result. |
4 | in_datasets |
|
|
|
|
5 | search_radius |
|
|
|
|
6 | ratio |
|
|
|
|
7 | out_datasets |
|
|
|
|
8 | datasets_to_populate
|
|
|
|
|
9 | row_drop |
|
|
|
|
10 | step |
|
|
| Floating-point or integer value in pixel units. |
Usage
TBC.