Architecture¶
Package layers¶
LION.CTtoolsGeometry definitions, CT operator construction, noise models, and unit conversions.
LION.data_loadersDataset adapters and preprocessing utilities. Dataset parameters carry the geometry and task definition into training or reconstruction.
LION.experimentsReproducible bundles of geometry, noise, and split-specific dataset configuration.
LION.modelsandLION.lossesLearned priors and reconstruction networks together with their training objectives. The PaDIS implementation uses a position-aware NCSN++ denoiser and an EDM-style patch loss.
LION.optimizersTraining orchestration, validation, checkpointing, and resumption. Despite the historical package name, these classes coordinate complete model training rather than exposing only numerical optimisers.
LION.reconstructorsClassical and learned inverse solvers. Reconstructors consume a geometry or operator, measurements, model state, and algorithm parameters.
PaDIS data flow¶
For PaDIS training, an Experiment
constructs an LIDC-IDRI image-prior dataset. A
PaDISSolver samples patches and noise
levels, evaluates PaDISDenoisingLoss, updates the
NCSN++ model, and maintains exponential-moving-average checkpoints.
At inference time PaDIS assembles a
whole-image score from patches and combines it with CT data consistency. The
reproduction scripts select the sampler convention, tuned hyperparameters,
checkpoint, and experiment matrix without duplicating the underlying solver.
Design boundaries¶
The implementation keeps three concerns separate:
physical acquisition geometry belongs to LION operators and experiments;
prior parameterisation belongs to model and checkpoint metadata;
study-specific scheduling and output layout belong to reproduction scripts.
This separation is important when comparing the public PaDIS implementation, the equations described by Hu et al., and LION-native physics scaling.