Exposure-slot: Exposure-centric representations learning with Slot-in-Slot Attention for Region-aware Exposure Correction (Official)
Donggoo Jung*, Daehyun Kim*, Guanghui Wang, Tae Hyun Kimβ . (*Equal Contribution, β Corresponding author)
CVPR 2025
This repository contains the official PyTorch implementation of "Exposure-slot: Exposure-centric representations learning with Slot-in-Slot Attention for Region-aware Exposure Correction" accepted at CVPR 2025.
Exposure-slot is the first approach to leverage Slot Attention mechanism for optimized exposure-specific feature partitioning. We introduce the slot-in-slot attention that enables sophisticated feature partitioning and learning and exposure-aware prompts that enhance the exposure-centric characteristics of each image feature.
Our proposing method is the first approach to leverage Slot Attention mechanism for optimized exposure-specific feature partitioning. We introduce the slot-in-slot attention that enables sophisticated feature partitioning and learning and exposure-aware prompts that enhance the exposure-centric characteristics of each image feature. We provide validation code, training code, and pre-trained weights on three benchmark datasets (MSEC, SICE, LCDP).
Setting
Please follow these steps to set up the repository.
1. Clone the Repository
git clone https://github.com/kdhRick2222/Exposure-slot.git
cd Exposure-slot
2. Download Pre-trained models and Official Checkpoints
We utilize pre-trained models from Exposure-slot_ckpt.zip.
- Place the pre-trained models into the
ckpt/directory.
3. Prepare Data
For training and validating our model, we used SICE, MSEC, and LCDP dataset.
SICE dataset
We downloaded the SICE dataset from here.
python prepare_SICE.pyMake .Dataset_txt/SICE_Train.txt and .Dataset_txt/SICE_Test.txt for validation and training.
MSEC dataset
We downloaded the MSEC dataset from here.
python prepare_MSEC.pyMake .Dataset_txt/MSEC_Train.txt and .Dataset_txt/MSEC_Test.txt for validation and training.
LCDP dataset
We downloaded the LCDP dataset from here.
python prepare_LCDP.pyMake .Dataset_txt/LCDP_Train.txt and .Dataset_txt/LCDP_Test.txt for validation and training.
Inference and Evaluation
We provide 2-level and 3-level Exposure-slot model for each dataset (SICE, MSEC, LCDP).
python test.py --level=2 --dataset="MSEC"
Training
python train.py --gpu_num=0 --level=2 --dataset="MSEC"
Overall directory
βββ ckpts
β βββ LCDP_level2.pth
β βββ LCDP_level3.pth
β βββ MSEC_level2.pth
β βββ MSEC_level3.pth
β βββ SICE_level2.pth
β βββ SICE_level3.pth
β
βββ config
β βββ basic.py
β
βββ data
β βββ dataloaders.py
β βββ datasets.py
|
βββ Dataset_txt
β βββ LCDP_Train.txt
β βββ LCDP_Test.txt
β βββ MSEC_Train.txt
β βββ MSEC_Test.txt
β βββ SICE_Train.txt
β βββ SICE_Test.txt
|
βββ utils
β βββ scheduler_util.py
β βββ util.py
|
βββ network_level2.py
βββ network_level3.py
βββ prepare_LCDP.py
βββ prepare_MSEC.py
βββ prepare_SICE.py
βββ test.py
βββ train.py
Citation
If you find our work useful in your research, please cite:
@inproceedings{jung2025Exposureslot,
title={Exposure-slot: Exposure-centric representations learning with Slot-in-Slot Attention for Region-aware Exposure Correction},
author={Donggoo Jung, Daehyun Kim, Guanghui Wang, Tae Hyun Kim},
booktitle={Computer Vision and Pattern Recognition (CVPR)},
year={2025}
}