This repository is a lightweight super-resolution training and testing framework built upon BasicSR.
It is designed for convenient development, training, and evaluation of custom image super-resolution models.
├── archs/ # Super-resolution model architectures
├── options/ # YAML configuration files
│ ├── train/
│ └── test/
├── train.py # Training script
├── test.py # Testing script
├── datasets/
├── models/
├── utils/
└── README.md
git clone https://github.com/MinGTu1/VAFMNet.git
cd VAFMNetconda create -n basicsr python=3.10
conda activate basicsrpip install torch torchvision
pip install -r requirements.txtOr install BasicSR manually:
pip install basicsrOrganize datasets as follows:
datasets/
├── train/
│ ├── HR/
│ └── LR/
| X2/
| X3/
| X4/
├── val/
│ ├── HR/
│ └── LR/
| X2/
| X3/
| X4/
Dataset paths can be modified in YAML files under options/.
Training configuration files are stored in:
options/train/
Run training with:
python train.py -opt options/train/VAFMNet_DIV2K_100w_x2SR.ymlExample:
python train.py -opt options/train/VAFMNet_DIV2K_100w_x2SR.ymlTesting configuration files are stored in:
options/test/
Run testing with:
python test.py -opt options/test/benchmark_VAFMN_x2.ymlExample:
python test.py -opt options/test/benchmark_VAFMN_x2.ymlAll custom super-resolution architectures should be placed in:
archs/
Example:
archs/
├── VAFMNet_arch.py
After adding a new architecture, register it properly so that it can be called by the YAML configuration.
All experiment settings are managed through YAML files, including:
- Network structure
- Dataset paths
- Training hyperparameters
- Optimizer settings
- Loss functions
- Validation settings
Training logs, checkpoints, and visual results are automatically saved during training/testing.
Typical outputs include:
experiments/
results/
This project is built upon the excellent framework:
This project is released under the MIT License.