dival.reconstructors.fbpunet_reconstructor module¶
-
class
dival.reconstructors.fbpunet_reconstructor.
FBPUNetReconstructor
(ray_trafo, allow_multiple_workers_without_random_access=False, **kwargs)[source]¶ Bases:
dival.reconstructors.standard_learned_reconstructor.StandardLearnedReconstructor
CT reconstructor applying filtered back-projection followed by a postprocessing U-Net (e.g. 1).
References
- 1
K. H. Jin, M. T. McCann, E. Froustey, et al., 2017, “Deep Convolutional Neural Network for Inverse Problems in Imaging”. IEEE Transactions on Image Processing. doi:10.1109/TIP.2017.2713099
-
HYPER_PARAMS
= {'batch_size': {'default': 64, 'retrain': True}, 'channels': {'default': (32, 32, 64, 64, 128, 128), 'retrain': True}, 'epochs': {'default': 20, 'retrain': True}, 'filter_type': {'default': 'Hann', 'retrain': True}, 'frequency_scaling': {'default': 1.0, 'retrain': True}, 'init_bias_zero': {'default': True, 'retrain': True}, 'lr': {'default': 0.001, 'retrain': True}, 'lr_min': {'default': 0.0001, 'retrain': True}, 'normalize_by_opnorm': {'default': False, 'retrain': True}, 'scales': {'default': 5, 'retrain': True}, 'scheduler': {'choices': ['base', 'cosine'], 'default': 'cosine', 'retrain': True}, 'skip_channels': {'default': 4, 'retrain': True}, 'use_sigmoid': {'default': False, 'retrain': True}}¶
-
__init__
(ray_trafo, allow_multiple_workers_without_random_access=False, **kwargs)[source]¶ - Parameters
ray_trafo (
odl.tomo.RayTransform
) – Ray transform (the forward operator).allow_multiple_workers_without_random_access (bool, optional) – Whether for datasets without support for random access a specification of
num_data_loader_workers > 1
is honored. If False (the default), the value is overridden by1
for generator-only datasets.keyword arguments are passed to super()__init__() (Further) –
-
train
(dataset)[source]¶ Train the reconstructor with a dataset by adapting its parameters.
Should only use the training and validation data from dataset.
- Parameters
dataset (
Dataset
) – The dataset from which the training data should be used.
-
init_model
()[source]¶ Initialize
model
. Called intrain()
after callinginit_transform()
, but before callinginit_optimizer()
andinit_scheduler()
.
-
init_scheduler
(dataset_train)[source]¶ Initialize the learning rate scheduler. Called in
train()
, after callinginit_transform()
,init_model()
andinit_optimizer()
.- Parameters
dataset_train (
torch.utils.data.Dataset
) – The training (torch) dataset constructed intrain()
.
-
property
batch_size
¶
-
property
channels
¶
-
property
epochs
¶
-
property
filter_type
¶
-
property
frequency_scaling
¶
-
property
init_bias_zero
¶
-
property
lr
¶
-
property
lr_min
¶
-
property
normalize_by_opnorm
¶
-
property
scales
¶
-
property
scheduler
¶ torch learning rate scheduler: The scheduler, usually set by
init_scheduler()
, which gets called intrain()
.
-
property
skip_channels
¶
-
property
use_sigmoid
¶