AKDT: Adaptive Kernel Dilation Transformer for Effective Image Denoising
April 14, 2026 ยท View on GitHub
๐ Updates
14.04.2026๐ข๐ฅณ Check out our new CVPR 2026 paper: Multinex: Lightweight Low-light Image Enhancement via Multi-prior Retinex: ๐Project Page, ๐Paper, โญCode.28.07.2025โจ Check out our new multimodal framework: ModalFormer: Multimodal Transformer for Low-Light Image Enhancement! Paper and HF Demo coming soon!20.04.2025๐ We use AKDT to participate in the CVPR Workshop NTIRE 2025 Image Denoising Challenge. Check out the Challenge Report.23.03.2025๐ Repository updated with link to paper PDF.04.12.2024๐ Paper has been accepted at VISAPP 2025. To be published.
๐งช Experiment
โ๏ธ 1. Create Environment
- Make Conda Environment
conda create -n AKDT python=3.7
conda activate AKDT
- Install Dependencies
conda install pytorch=1.8 torchvision cudatoolkit=10.2 -c pytorch
pip install matplotlib scikit-learn scikit-image opencv-python yacs joblib natsort h5py tqdm
pip install einops gdown addict future lmdb numpy pyyaml requests scipy tb-nightly yapf lpips
- Install basicsr
python setup.py develop --no_cuda_ext
๐ 2. Prepare Datasets
Download the datasets and place them as specified in the ./Denoising/Datasets/README.md
SIDD_train - Google Drive
SIDD_val - Google Drive
SIDD_test - Google Drive
BSD400 - Google Drive
DIV2K - Google Drive
WaterlooED - Google Drive
gaussian_test - Google Drive
๐งซ 3. Test
Pre-trained weights available at Google Drive. Place the pre-trained weights into the ./Denoising/pretrained_models/ directory.
- Real Image Denoising evaluation
# To obtain denoised results
python test_real_denoising_sidd.py --save_images
# Compute PSNR
python eval_sidd.py
- Color Gaussian Image Denoising evaluation
# To obtain denoised results
python test_gaussian_color_denoising.py --model_type blind --sigmas 15,25,50
# Compute PSNR
python evaluate_gaussian_color_denoising.py --model_type blind --sigmas 15,25,50
Note: --weights argument can be used to specify paths to different weights.
๐ 4. Compute Complexity
You can test the model complexity (FLOPS/MACs/Params) using the following command:
python ./basicsr/models/archs/macs.py
๐๏ธ 5. Train
- Generate training image patches:
# Gaussian color image denoising
python generate_patches_dfwb.py
# Real image denoising
python generate_patches_sidd.py
- Train AKDT on Color Gaussian Image Denoising:
./train.sh Denoising/Options/GaussianColorDenoising_AKDT.yml
- Train AKDT on Real Image Denoising:
./train.sh Denoising/Options/GaussianColorDenoising_AKDT.yml
๐ Citation
@inproceedings{brateanu2025akdt,
author = {Alexandru Brateanu and Raul Balmez and Adrian Avram and Ciprian Orhei},
title = {AKDT: Adaptive Kernel Dilation Transformer for Effective Image Denoising},
booktitle = {Proceedings of the 20th International Joint Conference on Computer Vision, Imaging and Computer Graphics Theory and Applications - Volume 3: VISAPP},
year = {2025},
pages = {418--425},
isbn = {978-989-758-728-3},
issn = {2184-4321}
}