mantidimaging.core.operations.flat_fielding.flat_fielding module¶
- class mantidimaging.core.operations.flat_fielding.flat_fielding.FlatFieldFilter[source]¶
Bases:
mantidimaging.core.operations.base_filter.BaseFilter
Uses the flat (open beam) and dark images to normalise a stack of images (radiograms, projections), and to correct for a beam profile, scintillator imperfections and/or detector inhomogeneities. This operation produces images of transmission values.
In practice, several open beam and dark images are averaged in the flat-fielding process.
Intended to be used on: Projections
When: As one of the first pre-processing steps
Caution: Make sure the correct stacks are selected for flat and dark.
Caution: Check that the flat and dark images don’t have any very bright pixels, or this will introduce additional noise in the sample. Remove outliers before flat-fielding.
- static execute_wrapper(flat_before_widget: mantidimaging.gui.widgets.dataset_selector.view.DatasetSelectorWidgetView, flat_after_widget: mantidimaging.gui.widgets.dataset_selector.view.DatasetSelectorWidgetView, dark_before_widget: mantidimaging.gui.widgets.dataset_selector.view.DatasetSelectorWidgetView, dark_after_widget: mantidimaging.gui.widgets.dataset_selector.view.DatasetSelectorWidgetView, selected_flat_fielding_widget: PyQt5.QtWidgets.QComboBox, use_dark_widget: PyQt5.QtWidgets.QCheckBox) functools.partial [source]¶
Should construct a partial call to _filter_func using values taken from the widgets passed to this function as kwargs. :param kwargs: widgets which contain values required for _filter_func. :return: a partial call to _filter_func using parameters taken from the input widgets.
- static filter_func(images: mantidimaging.core.data.images.Images, flat_before: Optional[mantidimaging.core.data.images.Images] = None, flat_after: Optional[mantidimaging.core.data.images.Images] = None, dark_before: Optional[mantidimaging.core.data.images.Images] = None, dark_after: Optional[mantidimaging.core.data.images.Images] = None, selected_flat_fielding: Optional[str] = None, use_dark: bool = True, cores=None, chunksize=None, progress=None) mantidimaging.core.data.images.Images [source]¶
Do background correction with flat and dark images.
- Parameters
images – Sample data which is to be processed. Expected in radiograms
flat_before – Flat (open beam) image to use in normalization, collected before the sample was imaged
flat_after – Flat (open beam) image to use in normalization, collected after the sample was imaged
dark_before – Dark image to use in normalization, collected before the sample was imaged
dark_after – Dark image to use in normalization, collected after the sample was imaged
selected_flat_fielding – Select which of the flat fielding methods to use, just Before stacks, just After stacks or combined.
use_dark – Whether to use dark frame subtraction
cores – The number of cores that will be used to process the data.
chunksize – The number of chunks that each worker will receive.
- Returns
Filtered data (stack of images)
- filter_name = 'Flat-fielding'¶
- static group_name() mantidimaging.core.operations.base_filter.FilterGroup [source]¶
- static register_gui(form, on_change, view) Dict[str, Any] [source]¶
Adds any required input widgets to the given form and returns references to them.
The return values should be in a dict which can be unpacked as kwargs for a call to the operations execute_wrapper.
- Parameters
view –
form – the layout to create input widgets in
on_change – the filter view action to be bound to all created inputs
- Returns
the widgets bound as kwargs which are needed to call execute_wrapper