dival.reconstructors.tvadam_ct_reconstructor module

class dival.reconstructors.tvadam_ct_reconstructor.TVAdamCTReconstructor(ray_trafo, callback_func=None, callback_func_interval=100, show_pbar=True, **kwargs)[source]

Bases: dival.reconstructors.reconstructor.IterativeReconstructor

CT reconstructor minimizing a TV-functional with the Adam optimizer.

HYPER_PARAMS = {'gamma': {'default': 0.0001, 'grid_search_options': {'num_samples': 20}, 'range': [1e-07, 1.0]}, 'init_filter_type': {'default': 'Hann'}, 'init_frequency_scaling': {'default': 0.1}, 'iterations': {'default': 5000, 'range': [1, 50000]}, 'loss_function': {'choices': ['mse', 'poisson'], 'default': 'mse'}, 'lr': {'default': 0.001, 'range': [1e-05, 0.1]}, 'mu_max': {'default': 81.35858}, 'photons_per_pixel': {'default': 4096}}
__init__(ray_trafo, callback_func=None, callback_func_interval=100, show_pbar=True, **kwargs)[source]
Parameters
  • ray_trafo (odl.tomo.operators.RayTransform) – The forward operator

  • callback_func (callable, optional) – Callable with signature callback_func(iteration, reconstruction, loss) that is called after every callback_func_interval iterations, starting after the first iteration. It is additionally called after the last iteration. Note that it differs from the inherited IterativeReconstructor.callback (which is also supported) in that the latter is of type odl.solvers.util.callback.Callback, which only receives the reconstruction, such that the loss would have to be recomputed.

  • callback_func_interval (int, optional) – Number of iterations between calls to callback_func. Default: 100.

  • show_pbar (bool, optional) – Whether to show a tqdm progress bar during reconstruction.

property gamma
property init_filter_type
property init_frequency_scaling
property iterations
property loss_function
property lr
property mu_max
property photons_per_pixel