--- license: apache-2.0 tags: - super-resolution - denoising - pytorch - rrdbnet - esrgan --- # RRDBNet — 4x Super-Resolution / Denoising An RRDBNet (ESRGAN-style) model trained for 4x image super-resolution and denoising, initialized from Real-ESRGAN's `RealESRGAN_x4plus` pretrained weights and fine-tuned on a paired low-resolution / high-resolution dataset. ## Files in this repo | File | Purpose | |---|---| | `model.py` | The `RRDBNet` architecture (with its `ResidualDenseBlock` / `RRDB` submodules) as plain PyTorch code. Import this to reconstruct the model before loading weights. | | `config.json` | Architecture hyperparameters used to build the model (channel counts, block count, scale factor). | | `model.safetensors` (or `best_model.pth`) | Trained weights (`state_dict`) for the architecture above. | | `README.md` | This file. | ## Architecture - **Type:** RRDBNet (Residual-in-Residual Dense Block Network), the generator architecture used in ESRGAN / Real-ESRGAN. - **Feature channels:** 64 - **RRDB blocks:** 23 - **Growth channels (dense block):** 32 - **Upscale factor:** 4x (two successive 2x nearest-neighbor upsampling stages) Full config: see [`config.json`](./config.json). ## Training details - **Initialization:** pretrained on `RealESRGAN_x4plus.pth`, then fine-tuned. - **Loss:** L1 loss between the super-resolved output and the ground-truth high-resolution image. - **Optimizer:** Adam, initial LR `2e-4`, cosine annealing schedule. - **Patch size:** 256 (HR), with the LR crop derived at `patch_size / scale_factor`. - **Batch size:** 8 - **Epochs:** 45 - **Checkpoint selection:** best validation PSNR across epochs.