Experimental implementations for reconstructing detail in low-resolution thermal images.
This project explores 8× thermal super-resolution through CNN baselines, residual networks, and GAN-based models, with experiments in edge-aware reconstruction and frequency-domain supervision.
| Resource | What you'll find |
|---|---|
models/ |
Training scripts for SRCNN, VDSR-style, SRResNet, SRGAN, and Real-ESRGAN-style variants |
inference/ |
Model-specific inference and evaluation scripts |
output_samples/ |
Saved output images grouped by experiment |
thermal_DINO_loss.py |
An additional feature-loss experiment |
| Detailed technical guide | Architecture notes, loss formulations, configuration, and experimental workflow |
| Project report | The included thermal super-resolution report |
- Compare L1 and L2 reconstruction objectives in shallow CNN baselines.
- Explore residual upsampling and hybrid reconstruction losses.
- Incorporate Sobel-derived edge information.
- Investigate FFT-based frequency supervision.
- Examine GAN training strategies adapted to thermal imagery.
These are experimental directions represented by the code. The saved examples are qualitative artifacts; they do not establish general benchmark superiority.
- Read the technical guide and choose a model family.
- Inspect the matching script in
models/for dataset locations, dependencies, and training settings. - Configure paths for your own low/high-resolution thermal image pairs.
- Use the corresponding inference script with a compatible checkpoint.
- Compare outputs using a fixed validation set, PSNR/SSIM, and visual inspection of thermal boundaries.
The repository does not include a complete dataset or trained checkpoint bundle. Some scripts use local paths, so configuring your environment is part of reproducing an experiment.
An output from the edge-injection experiment:
Browse the output gallery to compare saved artifacts across model families. Use matched inputs and documented configurations when making quantitative comparisons.
- Consolidate dataset paths and model settings into shared configuration.
- Add a tested dependency specification.
- Publish comparable input/output panels and evaluation settings.
- Document checkpoint availability and reproducibility for each experiment.
Built and maintained by Vansh Joshi.
