tomwer axis#

Purpose#

The tomwer axis command is provided to launch the application allowing to compute the center of rotation from either a scan (–scan-path) or a couple of file (–file1, –file2). In the future should be replace by urls.

Warning

tomwer is displaying the value of the cor in \([- \frac{framewidth}{2}, \frac{framewidth}{2}]\). But nabu is taking cor value in \([0, framewidth]\). So if you want to take this value and pass it to nabu or pyshst you should add \(\frac{framewidth}{2}\) to this value.

../_images/axis_radios.png

Usage#

tomwer axis [-h] [[--scan-path scan_path --file1 --file2 --use-sinogram]]

Options#

scan-path             Path to the acquisition folder that we want to observe. Should be the preferable way to launch axis

file1                 Path to the file containing the first radio or sinogram to use as input. Fabio should be able to open it.

file2                 Path to the file containing the first radio or sinogram to use as input. Fabio should be able to open it.

use-sinogram          Do we want to use the sinogram to compute the center of rotation

-h, --help            show this help message and exit

Examples of usage#

tomwer axis –scan-path path_to_my_scan/ tomwer axis –scan-path path_to_my_scan/ –use-sinogram

Center of rotation from radio#

The interface for computing center of rotation from axis is the following:

../_images/axis_radios.png

The options to center of rotation calculation is divided in three parts:

  • calculation which should be used to define the algorithm to use and some mandatory parameters (like near position) for the near algorithm

../_images/axis_options_calculation.png

You will find at the bottom of the page the description of the different algorithms. But know that:

  • read: allow you to read a center of rotation from a text or tomwer.h5 file

  • manual: allow you to enter manually a value

  • options, used to define some ‘advance’ control for the algorithm. The available options are dependant of the selected algorithm.

../_images/axis_options_options.png
  • input, used to define the projection to use for the center of rotation calculation. ‘0-180’ and ‘90-270’ angle mode will try to deduce the closest projection to 0 and 180 degrees or 90 and 270 degrees and select those for calculation. The third option allows you to pick manually the projections to use.

../_images/axis_options_input.png

Center of rotation from sinogram#

The interface for computing center of rotation from sinograms is the following:

../_images/axis_sinograms.png

For sinogram you should first select the type of sinogram (emission or transmission). Because the algorithm requires to compute log values in the case of transmission. Then you can pick a radio line and when you select ‘compute’ it will: * extract the sinogram for the selected line * compute center of rotation for this line

You can also select the subsampling value. As dataset can be huge, we can take only one each ‘subsampling’

../_images/axis_sinograms_options.png

Algorithms#

centered#

a fast and simple auto-CoR method. It only works when the CoR is not far from the middle of the detector. It does not work for half-tomography.

displacement of motor = (L1 / L2 * ps) * v

global#

a slow but robust auto-CoR.

sliding-window#

semi-automatically find the CoR with a sliding window. You have to specify on which side the CoR is (left, center, right). Please see the ‘cor_options’ parameter.

growing-window#

automatically find the CoR with a sliding-and-growing window. You can tune the option with the parameter ‘cor_options’.

sino-coarse-to-fine#

Estimate CoR from sinogram. Only works for 360 degrees scans.

composite-coarse-to-fine#

Estimate CoR from composite multi-angle images. Only works for 360 degrees scans.

How-to videos#

axis widget