How edongdongchen/ei works
Equivariant Imaging (EI) is a research framework for reconstructing images from measurements when ground-truth training images are unavailable. Its main workflow loads image batches, applies a task-specific forward model, and trains a neural reconstructor using measurement consistency and equivariance under image transformations; optional adversarial and supervised variants are also present. For evaluation, a measurement is mapped through the pseudoinverse and trained network to produce a reconstruction. The graph reflects the documented workflow and sampled implementations; some closure and CT details are not shown in the excerpts.
Main entry points: demo_train.py Training entry · ei.py EI objective · demo_test_inpainting.py Inpainting evaluation · unet.py Reconstruction U-Net
Components 19
Image data
- CT data
dataset/ctdb.py - Image datasets
dataset/cvdb.py
Imaging operators
- CT operator
physics/ct.py - Inpainting operator
physics/inpainting.py - Radon transforms
physics/radon/radon.py - Rotation transforms
transforms/rotate.py - Shift transforms
transforms/shift.py
EI learning
- Training entry
demo_train.py - EI training API
ei/ei.py - EI objective
ei/closure/ei.py - Adversarial EI
ei/closure/ei_adv.py - Supervised objectives
ei/closure/supervised.py - Supervised EI
ei/closure/supervised_ei.py - Reconstruction U-Net
models/unet.py - Discriminator
models/discriminator.py
Reconstruction
- Inpainting evaluation
demo_test_inpainting.py - Image metrics
utils/metric.py - Reconstructed image
Other components
- Experimenter
Connections 25
- Experimenter → Training entry: configures
- Training entry → CT data: loads CT batches
- Training entry → Image datasets: loads image batches
- Training entry → CT operator: selects CT model
- Training entry → Inpainting operator: selects inpainting model
- Training entry → Rotation transforms: selects rotations
- Training entry → Shift transforms: selects shifts
- Training entry → EI training API: starts training
- EI training API → EI objective: runs objective
- EI objective → Reconstruction U-Net: reconstructs
- EI objective → CT operator: uses forward model
- EI objective → Inpainting operator: uses forward model
- CT operator → Radon transforms: uses projection
- EI objective → Rotation transforms: transforms estimate
- EI objective → Shift transforms: transforms estimate
- Adversarial EI → Reconstruction U-Net: trains generator
- Adversarial EI → Discriminator: trains discriminator
- Supervised objectives → Reconstruction U-Net: trains reconstructor
- Supervised EI → Reconstruction U-Net: trains reconstructor
- Experimenter → Inpainting evaluation: evaluates checkpoint
- Inpainting evaluation → Image datasets: loads test images
- Inpainting evaluation → Inpainting operator: forms measurements
- Inpainting evaluation → Reconstruction U-Net: applies checkpoint
- Inpainting evaluation → Image metrics: scores output
- Inpainting evaluation → Reconstructed image: produces