dival.reference_reconstructors module¶
-
dival.reference_reconstructors.
CONFIGURATIONS
= {'diptv': {'datasets': ['ellipses', 'lodopab'], 'type': {'cls': 'DeepImagePriorCTReconstructor', 'module': 'dival.reconstructors.dip_ct_reconstructor'}}, 'fbp': {'datasets': ['ellipses', 'lodopab'], 'type': {'cls': 'FBPReconstructor', 'module': 'dival.reconstructors.odl_reconstructors'}}, 'fbpunet': {'datasets': ['ellipses', 'lodopab'], 'learned_params_spec': {'ext': '.pt'}, 'type': {'cls': 'FBPUNetReconstructor', 'module': 'dival.reconstructors.fbpunet_reconstructor'}}, 'iradonmap': {'datasets': ['ellipses', 'lodopab'], 'learned_params_spec': {'ext': '.pt'}, 'type': {'cls': 'IRadonMapReconstructor', 'module': 'dival.reconstructors.iradonmap_reconstructor'}}, 'learnedgd': {'datasets': ['ellipses', 'lodopab'], 'learned_params_spec': {'ext': '.pt'}, 'type': {'cls': 'LearnedGDReconstructor', 'module': 'dival.reconstructors.learnedgd_reconstructor'}}, 'learnedpd': {'datasets': ['ellipses', 'lodopab'], 'learned_params_spec': {'ext': '.pt'}, 'type': {'cls': 'LearnedPDReconstructor', 'module': 'dival.reconstructors.learnedpd_reconstructor'}}, 'tvadam': {'datasets': ['ellipses', 'lodopab'], 'type': {'cls': 'TVAdamCTReconstructor', 'module': 'dival.reconstructors.tvadam_ct_reconstructor'}}}¶ Specification of reference configurations.
For each configuration key name a dict with the following fields is specified:
'type'
dictThe reconstructor class, given by the following fields:
'cls'
strThe class name.
'module'
strThe module to import the class from.
'datasets'
list of strList of standard dataset names the configuration is available for.
'learned_params_spec'
dict, optionalHow learned parameters are stored. See also
LearnedReconstructor.save_learned_params()
andLearnedReconstructor.load_learned_params()
. Valid fields are:'ext'
str, optionalA single file with the given extension (e.g.
'.pt'
). The param path (returned byget_params_path()
) is suffixed by this.'dir'
?, optionalA directory. The param path (returned by
get_params_path()
) is equal to the directory path. not implemented yet
-
dival.reference_reconstructors.
DATASETS
= ['ellipses', 'lodopab']¶ List of standard datasets for which (some) reference reconstructor configurations are available.
-
dival.reference_reconstructors.
construct_reconstructor
(reconstructor_key_name_or_type, dataset_name, **kwargs)[source]¶ Construct reference reconstructor object (not loading parameters).
Note: see :func:get_reference_reconstructor to retrieve a reference reconstructor with optimized parameters.
This function implements the constructors calls which are potentially specific to each configuration.
- Parameters
reconstructor_key_name_or_type (str or type) – Key name of configuration or reconstructor type.
dataset_name (str) – Standard dataset name.
kwargs (dict) – Keyword arguments. For CT configurations this includes the
'impl'
used byodl.tomo.RayTransform
.
- Raises
ValueError – If the configuration does not exist.
NotImplementedError – If construction is not implemented for the configuration.
- Returns
reconstructor – The reconstructor instance.
- Return type
Reconstructor
-
dival.reference_reconstructors.
validate_reconstructor_key_name_or_type
(reconstructor_key_name_or_type, dataset_name)[source]¶ Validate that a configuration exists and return both its key name and the reconstructor type.
- Parameters
reconstructor_key_name_or_type (str or type) – Key name of configuration or reconstructor type.
dataset_name (str) – Standard dataset name.
- Raises
ValueError – If the configuration does not exist.
- Returns
r_key_name (str) – Key name of the configuration.
r_type (type) – Reconstructor type.
-
dival.reference_reconstructors.
get_params_path
(reconstructor_key_name_or_type, dataset_name)[source]¶ Return path of the parameters for a configuration. It can be passed to
Reconstructor.load_params
as a single argument to load all parameters (hyper params and learned params).- Parameters
reconstructor_key_name_or_type (str or type) – Key name of configuration or reconstructor type.
dataset_name (str) – Standard dataset name.
- Returns
params_path – Parameter path.
- Return type
str
-
dival.reference_reconstructors.
get_hyper_params_path
(reconstructor_key_name_or_type, dataset_name)[source]¶ Return path of the hyper parameters for a configuration.
- Parameters
reconstructor_key_name_or_type (str or type) – Key name of configuration or reconstructor type.
dataset_name (str) – Standard dataset name.
- Returns
hyper_params_path – Hyper parameter path.
- Return type
str
-
dival.reference_reconstructors.
download_params
(reconstructor_key_name_or_type, dataset_name, include_learned=True)[source]¶ Download parameters for a configuration.
- Parameters
reconstructor_key_name_or_type (str or type) – Key name of configuration or reconstructor type.
dataset_name (str) – Standard dataset name.
include_learned (bool, optional) – Whether to include learned parameters. Otherwise only hyper parameters are downloaded. Default: True.
- Raises
NotImplementedError – If trying to download learned parameters that are stored in a directory (instead of as a single file).
ValueError – If trying to download learned parameters for a configuration that does not specify how they are stored (as a single file or in a directory).
-
dival.reference_reconstructors.
download_hyper_params
(reconstructor_key_name_or_type, dataset_name)[source]¶ Download hyper parameters for a configuration.
- Parameters
reconstructor_key_name_or_type (str or type) – Key name of configuration or reconstructor type.
dataset_name (str) – Standard dataset name.
-
dival.reference_reconstructors.
check_for_params
(reconstructor_key_name_or_type, dataset_name, include_learned=True, return_missing=False)[source]¶ Return whether the parameter file(s) can be found.
- Parameters
reconstructor_key_name_or_type (str or type) – Key name of configuration or reconstructor type.
dataset_name (str) – Standard dataset name.
include_learned (bool, optional) – Whether to check for learned parameters, too. Default: True.
return_missing (bool, optional) – Whether to return a list of missing files as second return value. Default: False.
- Raises
NotImplementedError – If trying to check for learned parameters that are stored in a directory (instead of as a single file).
ValueError – If trying to check for learned parameters for a configuration that does not specify how they are stored (as a single file or in a directory).
- Returns
params_exist (bool) – Whether the parameter file(s) can be found.
missing (list of str, optional) – List of missing files. Only returned if return_missing=True.
-
dival.reference_reconstructors.
check_for_hyper_params
(reconstructor_key_name_or_type, dataset_name)[source]¶ Return whether the hyper parameter file can be found.
- Parameters
reconstructor_key_name_or_type (str or type) – Key name of configuration or reconstructor type.
dataset_name (str) – Standard dataset name.
- Returns
params_exist – Whether the hyper parameter file can be found.
- Return type
bool
-
dival.reference_reconstructors.
get_reference_reconstructor
(reconstructor_key_name_or_type, dataset_name, pretrained=True, **kwargs)[source]¶ Return a reference reconstructor.
- Parameters
reconstructor_key_name_or_type (str or type) – Key name of configuration or reconstructor type.
dataset_name (str) – Standard dataset name.
pretrained (bool, optional) – Whether learned parameters should be loaded (if any). Default: True.
kwargs (dict) – Keyword arguments (passed to
construct_reconstructor()
). For CT configurations this includes the'impl'
used byodl.tomo.RayTransform
.
- Raises
RuntimeError – If parameter files are missing and the user chooses not to download.
- Returns
reconstructor – The reference reconstructor.
- Return type
Reconstructor