LION.experiments.deteCT_benchmark

The 2DeteCT benchmark: the experiments of

Kiss, Biguri, Shumaylov, Sherry, Batenburg, Schönlieb and Lucka, “Benchmarking learned algorithms for computed tomography image reconstruction tasks”, Applied Mathematics for Modern Challenges 3 (2025) (CTBenchmarkingExperiment.cite()).

Each experiment is a reconstruction task on the 2DeteCT dataset (LION.data_loaders.deteCT), with mode 2 reconstructions as targets:

  • FullDataCTRecon: all 3600 angles of mode 2; GroundTruthCT: the mode 2 reconstructions only (no sinograms);

  • LimitedAngle{150,120,90,60}CTRecon: the first 1500, 1200, 900 or 600 angles (150 to 60 degrees);

  • SparseAngle{720,360,180,120,90,60}CTRecon: every 5th to every 60th angle;

  • LowDoseCTRecon: mode 1 sinograms (low dose);

  • BeamHardeningCTRecon: mode 3 sinograms (beam hardening).

They reproduce the paper: their parameters are not changed.

Classes

BeamHardeningCTRecon([experiment_params, ...])

A 2DeteCT benchmark experiment (see the module docstring): reconstruction from the mode 3 sinograms (beam hardening), all angles.

CTBenchmarkingExperiment([...])

An experiment of the 2DeteCT benchmark (see the module docstring).

FullDataCTRecon([datafolder])

A 2DeteCT benchmark experiment (see the module docstring): reconstruction from all 3600 angles of mode 2 (full data).

GroundTruthCT([datafolder])

A 2DeteCT benchmark experiment (see the module docstring): the mode 2 reconstructions only, no sinograms (task "groundtruth"; do_recon False).

LimitedAngle120CTRecon([experiment_params, ...])

A 2DeteCT benchmark experiment (see the module docstring), limited angle: reconstruction from the first 1200 angles of mode 2 (120 degrees).

LimitedAngle150CTRecon([experiment_params, ...])

A 2DeteCT benchmark experiment (see the module docstring), limited angle: reconstruction from the first 1500 angles of mode 2 (150 degrees).

LimitedAngle60CTRecon([experiment_params, ...])

A 2DeteCT benchmark experiment (see the module docstring), limited angle: reconstruction from the first 600 angles of mode 2 (60 degrees).

LimitedAngle90CTRecon([experiment_params, ...])

A 2DeteCT benchmark experiment (see the module docstring), limited angle: reconstruction from the first 900 angles of mode 2 (90 degrees).

LowDoseCTRecon([experiment_params, dataset, ...])

A 2DeteCT benchmark experiment (see the module docstring): reconstruction from the mode 1 sinograms (low dose), all angles.

SparseAngle120CTRecon([experiment_params, ...])

A 2DeteCT benchmark experiment (see the module docstring), sparse view: reconstruction from every 30th angle of mode 2 (120 angles over 360 degrees).

SparseAngle180CTRecon([experiment_params, ...])

A 2DeteCT benchmark experiment (see the module docstring), sparse view: reconstruction from every 20th angle of mode 2 (180 angles over 360 degrees).

SparseAngle360CTRecon([experiment_params, ...])

A 2DeteCT benchmark experiment (see the module docstring), sparse view: reconstruction from every 10th angle of mode 2 (360 angles over 360 degrees).

SparseAngle60CTRecon([experiment_params, ...])

A 2DeteCT benchmark experiment (see the module docstring), sparse view: reconstruction from every 60th angle of mode 2 (60 angles over 360 degrees).

SparseAngle720CTRecon([experiment_params, ...])

A 2DeteCT benchmark experiment (see the module docstring), sparse view: reconstruction from every 5th angle of mode 2 (720 angles over 360 degrees).

SparseAngle90CTRecon([experiment_params, ...])

A 2DeteCT benchmark experiment (see the module docstring), sparse view: reconstruction from every 40th angle of mode 2 (90 angles over 360 degrees).

Functions

benchmark_parameters(name[, angles, ...])

The parameters of a 2DeteCT benchmark experiment: the dataset's default geometry, keeping only the projections angles (a slice; None: all of them; the data loader subsamples the sinograms to match), sinograms of input_mode and mode 2 reconstructions as targets.


class LION.experiments.deteCT_benchmark.BeamHardeningCTRecon(experiment_params=None, dataset='2DeteCT', datafolder=None)[source]

Bases: CTBenchmarkingExperiment

A 2DeteCT benchmark experiment (see the module docstring): reconstruction from the mode 3 sinograms (beam hardening), all angles. Mode 2 reconstructions are the targets.

static default_parameters(dataset='2DeteCT')[source]

The experiment’s parameters (benchmark_parameters), as in the paper. dataset: only “2DeteCT”.

class LION.experiments.deteCT_benchmark.CTBenchmarkingExperiment(experiment_params=None, dataset='2DeteCT', datafolder=None)[source]

Bases: Experiment

An experiment of the 2DeteCT benchmark (see the module docstring).

static cite(cite_format='bib')[source]

The paper of the benchmark: BibTeX (“bib”) or “MLA”.

class LION.experiments.deteCT_benchmark.FullDataCTRecon(datafolder=None)[source]

Bases: CTBenchmarkingExperiment

A 2DeteCT benchmark experiment (see the module docstring): reconstruction from all 3600 angles of mode 2 (full data). Mode 2 reconstructions are the targets.

static default_parameters(dataset='2DeteCT')[source]

The experiment’s parameters (benchmark_parameters), as in the paper. dataset: only “2DeteCT”.

class LION.experiments.deteCT_benchmark.GroundTruthCT(datafolder=None)[source]

Bases: CTBenchmarkingExperiment

A 2DeteCT benchmark experiment (see the module docstring): the mode 2 reconstructions only, no sinograms (task “groundtruth”; do_recon False).

static default_parameters(dataset='2DeteCT')[source]

The experiment’s parameters (benchmark_parameters), as in the paper. dataset: only “2DeteCT”.

class LION.experiments.deteCT_benchmark.LimitedAngle120CTRecon(experiment_params=None, dataset='2DeteCT', datafolder=None)[source]

Bases: CTBenchmarkingExperiment

A 2DeteCT benchmark experiment (see the module docstring), limited angle: reconstruction from the first 1200 angles of mode 2 (120 degrees). Mode 2 reconstructions are the targets.

static default_parameters(dataset='2DeteCT')[source]

The experiment’s parameters (benchmark_parameters), as in the paper. dataset: only “2DeteCT”.

class LION.experiments.deteCT_benchmark.LimitedAngle150CTRecon(experiment_params=None, dataset='2DeteCT', datafolder=None)[source]

Bases: CTBenchmarkingExperiment

A 2DeteCT benchmark experiment (see the module docstring), limited angle: reconstruction from the first 1500 angles of mode 2 (150 degrees). Mode 2 reconstructions are the targets.

static default_parameters(dataset='2DeteCT')[source]

The experiment’s parameters (benchmark_parameters), as in the paper. dataset: only “2DeteCT”.

class LION.experiments.deteCT_benchmark.LimitedAngle60CTRecon(experiment_params=None, dataset='2DeteCT', datafolder=None)[source]

Bases: CTBenchmarkingExperiment

A 2DeteCT benchmark experiment (see the module docstring), limited angle: reconstruction from the first 600 angles of mode 2 (60 degrees). Mode 2 reconstructions are the targets.

static default_parameters(dataset='2DeteCT')[source]

The experiment’s parameters (benchmark_parameters), as in the paper. dataset: only “2DeteCT”.

class LION.experiments.deteCT_benchmark.LimitedAngle90CTRecon(experiment_params=None, dataset='2DeteCT', datafolder=None)[source]

Bases: CTBenchmarkingExperiment

A 2DeteCT benchmark experiment (see the module docstring), limited angle: reconstruction from the first 900 angles of mode 2 (90 degrees). Mode 2 reconstructions are the targets.

static default_parameters(dataset='2DeteCT')[source]

The experiment’s parameters (benchmark_parameters), as in the paper. dataset: only “2DeteCT”.

class LION.experiments.deteCT_benchmark.LowDoseCTRecon(experiment_params=None, dataset='2DeteCT', datafolder=None)[source]

Bases: CTBenchmarkingExperiment

A 2DeteCT benchmark experiment (see the module docstring): reconstruction from the mode 1 sinograms (low dose), all angles. Mode 2 reconstructions are the targets.

static default_parameters(dataset='2DeteCT')[source]

The experiment’s parameters (benchmark_parameters), as in the paper. dataset: only “2DeteCT”.

class LION.experiments.deteCT_benchmark.SparseAngle120CTRecon(experiment_params=None, dataset='2DeteCT', datafolder=None)[source]

Bases: CTBenchmarkingExperiment

A 2DeteCT benchmark experiment (see the module docstring), sparse view: reconstruction from every 30th angle of mode 2 (120 angles over 360 degrees). Mode 2 reconstructions are the targets.

static default_parameters(dataset='2DeteCT')[source]

The experiment’s parameters (benchmark_parameters), as in the paper. dataset: only “2DeteCT”.

class LION.experiments.deteCT_benchmark.SparseAngle180CTRecon(experiment_params=None, dataset='2DeteCT', datafolder=None)[source]

Bases: CTBenchmarkingExperiment

A 2DeteCT benchmark experiment (see the module docstring), sparse view: reconstruction from every 20th angle of mode 2 (180 angles over 360 degrees). Mode 2 reconstructions are the targets.

static default_parameters(dataset='2DeteCT')[source]

The experiment’s parameters (benchmark_parameters), as in the paper. dataset: only “2DeteCT”.

class LION.experiments.deteCT_benchmark.SparseAngle360CTRecon(experiment_params=None, dataset='2DeteCT', datafolder=None)[source]

Bases: CTBenchmarkingExperiment

A 2DeteCT benchmark experiment (see the module docstring), sparse view: reconstruction from every 10th angle of mode 2 (360 angles over 360 degrees). Mode 2 reconstructions are the targets.

static default_parameters(dataset='2DeteCT')[source]

The experiment’s parameters (benchmark_parameters), as in the paper. dataset: only “2DeteCT”.

class LION.experiments.deteCT_benchmark.SparseAngle60CTRecon(experiment_params=None, dataset='2DeteCT', datafolder=None)[source]

Bases: CTBenchmarkingExperiment

A 2DeteCT benchmark experiment (see the module docstring), sparse view: reconstruction from every 60th angle of mode 2 (60 angles over 360 degrees). Mode 2 reconstructions are the targets.

static default_parameters(dataset='2DeteCT')[source]

The experiment’s parameters (benchmark_parameters), as in the paper. dataset: only “2DeteCT”.

class LION.experiments.deteCT_benchmark.SparseAngle720CTRecon(experiment_params=None, dataset='2DeteCT', datafolder=None)[source]

Bases: CTBenchmarkingExperiment

A 2DeteCT benchmark experiment (see the module docstring), sparse view: reconstruction from every 5th angle of mode 2 (720 angles over 360 degrees). Mode 2 reconstructions are the targets.

static default_parameters(dataset='2DeteCT')[source]

The experiment’s parameters (benchmark_parameters), as in the paper. dataset: only “2DeteCT”.

class LION.experiments.deteCT_benchmark.SparseAngle90CTRecon(experiment_params=None, dataset='2DeteCT', datafolder=None)[source]

Bases: CTBenchmarkingExperiment

A 2DeteCT benchmark experiment (see the module docstring), sparse view: reconstruction from every 40th angle of mode 2 (90 angles over 360 degrees). Mode 2 reconstructions are the targets.

static default_parameters(dataset='2DeteCT')[source]

The experiment’s parameters (benchmark_parameters), as in the paper. dataset: only “2DeteCT”.

LION.experiments.deteCT_benchmark.benchmark_parameters(name, angles=None, input_mode='mode2', task='sino2recon')[source]

The parameters of a 2DeteCT benchmark experiment: the dataset’s default geometry, keeping only the projections angles (a slice; None: all of them; the data loader subsamples the sinograms to match), sinograms of input_mode and mode 2 reconstructions as targets.