Home

Awesome

News

Stripformer (ECCV 2022 Oral)

Pytorch Implementation of "Stripformer: Strip Transformer for Fast Image Deblurring" (ECCV 2022 Oral)

<img src="./Figure/Intra_Inter.PNG" width = "800" height = "200" div align=center />

Installation

The implementation is modified from "DeblurGANv2".

git clone https://github.com/pp00704831/Stripformer.git
cd Stripformer
conda create -n Stripformer python=3.6
source activate Stripformer
conda install pytorch==1.8.0 torchvision==0.9.0 torchaudio==0.8.0 cudatoolkit=11.1 -c pytorch -c conda-forge
pip install opencv-python tqdm pyyaml joblib glog scikit-image tensorboardX albumentations
pip install -U albumentations[imgaug]
pip install albumentations==1.1.0

Training

Download "GoPro" dataset into './datasets' </br> For example: './datasets/GoPro'

We train our Stripformer in two stages: </br>

python train_Stripformer_pretrained.py
python train_Stripformer_gopro.py

Testing

For reproducing our results on GoPro and HIDE datasets, download "Stripformer_gopro.pth"

For reproducing our results on RealBlur dataset, download "Stripformer_realblur_J.pth" and "Stripformer_realblur_R.pth"

For testing on GoPro dataset </br>

python predict_GoPro_test_results.py --weights_path ./Stripformer_gopro.pth 

For testing on HIDE dataset </br>

python predict_HIDE_results.py --weights_path ./Stripformer_gopro.pth 

For testing on RealBlur test sets </br>

python predict_RealBlur_J_test_results.py --weights_path ./Stripformer_realblur_J.pth 
python predict_RealBlur_R_test_results.py --weights_path ./Stripformer_realblur_R.pth 

For testing your own training weight (take GoPro for a example) </br>

Evaluation

evaluation_GoPro.m
evaluation_HIDE.m
python evaluate_RealBlur_J.py
python evaluate_RealBlur_R.py

Citation

@inproceedings{Tsai2022Stripformer,
  author    = {Fu-Jen Tsai and Yan-Tsung Peng and Yen-Yu Lin and Chung-Chi Tsai and Chia-Wen Lin},
  title     = {Stripformer: Strip Transformer for Fast Image Deblurring},
  booktitle = {ECCV},
  year      = {2022}
}