Official implementation of the paper by Alexander Becker*, Rodrigo Daudt*, Dominik Narnhofer, Torben Peters, Nando Metzger, Jan Dirk Wegner and Konrad Schindler (* equal contribution)
Thera is the first arbitrary-scale super-resolution method with a built-in physical observation model.
2025-03-12: Pre-trained checkpoints are released
You need a Python 3.10 environment (e.g., installed via conda) on Linux as well as an NVIDIA GPU. Then install packages via pip:
> pip install --upgrade pip
> pip install -r requirements.txt
Download checkpoints:
Backbone | Variant | Download |
EDSR-base | Air | Google Drive |
Plus | Google Drive | |
Pro | Google Drive | |
RDN | Air | Google Drive |
Plus | Google Drive | |
Pro | Google Drive |
Super-resolve any image with:
> ./super_resolve.py IN_FILE OUT_FILE --scale 3.14 --checkpoint thera-rdn-pro.pkl
You can evaluate the models on datasets using the run_eval.py
script, e.g.:
> python run_eval.py --checkpoint thera-rdn-pro.pkl --data-dir path_to_data_parent_folder --eval-sets data_folder_1 data_folder_2 ...
Check the arguments in args.py
(bottom of file) for all testing options.
Training code will be released soon.
- Disable pre-allocation of entire VRAM:
XLA_PYTHON_CLIENT_PREALLOCATE=false
- Disable jitting for debugging:
JAX_DISABLE_JIT=1
Citation coming soon.