Remove All Rings¶
Description¶
Combination of methods working in the sinogram space to remove most types of ring artefacts.
Parameters
in_datasets:
visibility: datasets
dtype: "[list[],list[str]]"
description:
summary: A list of the dataset(s) to process.
verbose: A list of strings, where each string gives the name of a dataset that was either specified by a loader plugin or created as output to a previous plugin. The length of the list is the number of input datasets requested by the plugin. If there is only one dataset and the list is left empty it will default to that dataset.
default: "[]"
out_datasets:
visibility: datasets
dtype: "[list[],list[str]]"
description:
summary: A list of the dataset(s) to create.
verbose: A list of strings, where each string is a name to be assigned to a dataset output by the plugin. If there is only one input dataset and one output dataset and the list is left empty, the output will take the name of the input dataset. The length of the list is the number of output datasets created by the plugin.
default: "[]"
sm_size:
visibility: basic
dtype: int
description: Size of the median filter window to remove small-to-medium stripes.
default: "31"
la_size:
visibility: basic
dtype: int
description: Size of the median filter window to remove large stripes.
default: "71"
snr:
visibility: basic
dtype: float
description: Ratio used to detect locations of stripes. Greater is less sensitive.
default: "3.0"
Key
visibility: The visibility level of the parameter
dtype: The type of data
description: A short explanation of the parameter
default: The default value
options: A list of permitted values
dependency: The name of the parameter and value which this parameter depends upon
range: A guide for the range of the parameter
Citations
Superior techniques for eliminating ring artifacts in X-ray micro-tomography by Vo, Nghia T et al.
Bibtex
@article{vo2018superior,
title = {Superior techniques for eliminating ring artifacts in X-ray micro-tomography},
author={Vo, Nghia T and Atwood, Robert C and Drakopoulos, Michael},
journal={Optics express},
volume={26},
number={22},
pages={28396--28412},
year={2018},
publisher={Optical Society of America}}
Endnote
%0 Journal Article
%T Superior techniques for eliminating ring artifacts in X-ray micro-tomography
%A Vo, Nghia T
%A Atwood, Robert C
%A Drakopoulos, Michael
%J Optics express
%V 26
%N 22
%P 28396-28412
%@ 1094-4087
%D 2018
%I Optical Society of America
API
-
class
RemoveAllRings
[source] -
detect_stripe
(listdata, snr)[source] Algorithm 4 in the paper. To locate stripe positions.
- Parameters
listdata (1D normalized array.) –
snr (Ratio (>1.0) used to detect stripe locations.) –
- Returns
listmask
- Return type
1D binary mask.
-
pre_process
()[source] This method is called immediately after base_pre_process().
-
process_frames
(data)[source] Apply algorithm 6, 5, and 3 in the paper to removal all types of stripes
-
remove_large_stripe
(matindex, sinogram, snr, size)[source] Algorithm 5 in the paper. To remove large stripes.
- Parameters
sinogram (2D array.) –
snr (Ratio (>1.0) used to detect stripe locations.) –
size (Window size of the median filter.) –
- Returns
sinogram
- Return type
stripe-removed sinogram.
-
remove_stripe_based_sorting
(matindex, sinogram, size)[source] Algorithm 3 in the paper. To remove partial and full stripes.
-
remove_unresponsive_and_fluctuating_stripe
(sinogram, snr, size)[source] Algorithm 6 in the paper. To remove unresponsive and fluctuating stripes.
- Parameters
sinogram (2D array.) –
snr (Ratio (>1.0) used to detect stripe locations.) –
size (Window size of the median filter.) –
- Returns
sinogram
- Return type
stripe-removed sinogram.
-
setup
()[source] This method is first to be called after the plugin has been created. It determines input/output datasets and plugin specific dataset information such as the pattern (e.g. sinogram/projection).
-