All Projects → Maclory → Deep Iterative Collaboration

Maclory / Deep Iterative Collaboration

Pytorch implementation of Deep Face Super-Resolution with Iterative Collaboration between Attentive Recovery and Landmark Estimation (CVPR 2020)

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Deep Iterative Collaboration

Basicsr
Open Source Image and Video Restoration Toolbox for Super-resolution, Denoise, Deblurring, etc. Currently, it includes EDSR, RCAN, SRResNet, SRGAN, ESRGAN, EDVR, BasicVSR, SwinIR, ECBSR, etc. Also support StyleGAN2, DFDNet.
Stars: ✭ 2,708 (+1220.98%)
Mutual labels:  super-resolution
Dpir
Plug-and-Play Image Restoration with Deep Denoiser Prior (PyTorch)
Stars: ✭ 159 (-22.44%)
Mutual labels:  super-resolution
Mzsr
Meta-Transfer Learning for Zero-Shot Super-Resolution (CVPR, 2020)
Stars: ✭ 181 (-11.71%)
Mutual labels:  super-resolution
Pan
[Params: Only 272K!!!] Efficient Image Super-Resolution Using Pixel Attention, in ECCV Workshop, 2020.
Stars: ✭ 151 (-26.34%)
Mutual labels:  super-resolution
Tenet
Official Pytorch Implementation for Trinity of Pixel Enhancement: a Joint Solution for Demosaicing, Denoising and Super-Resolution
Stars: ✭ 157 (-23.41%)
Mutual labels:  super-resolution
Face And Image Super Resolution
Stars: ✭ 174 (-15.12%)
Mutual labels:  super-resolution
Awesome Cvpr2021 Cvpr2020 Low Level Vision
A Collection of Papers and Codes for CVPR2021/CVPR2020 Low Level Vision
Stars: ✭ 139 (-32.2%)
Mutual labels:  super-resolution
Psfrgan
PyTorch codes for "Progressive Semantic-Aware Style Transformation for Blind Face Restoration"
Stars: ✭ 185 (-9.76%)
Mutual labels:  super-resolution
Waifu2x
PyTorch on Super Resolution
Stars: ✭ 156 (-23.9%)
Mutual labels:  super-resolution
Pytorch Zssr
PyTorch implementation of 1712.06087 "Zero-Shot" Super-Resolution using Deep Internal Learning
Stars: ✭ 180 (-12.2%)
Mutual labels:  super-resolution
Frvsr
Frame-Recurrent Video Super-Resolution (official repository)
Stars: ✭ 157 (-23.41%)
Mutual labels:  super-resolution
A Pytorch Tutorial To Super Resolution
Photo-Realistic Single Image Super-Resolution Using a Generative Adversarial Network | a PyTorch Tutorial to Super-Resolution
Stars: ✭ 157 (-23.41%)
Mutual labels:  super-resolution
Gpufit
GPU-accelerated Levenberg-Marquardt curve fitting in CUDA
Stars: ✭ 174 (-15.12%)
Mutual labels:  super-resolution
Adafm
CVPR2019 (oral) Modulating Image Restoration with Continual Levels via Adaptive Feature Modification Layers (AdaFM). PyTorch implementation
Stars: ✭ 151 (-26.34%)
Mutual labels:  super-resolution
Waveletsrnet
A pytorch implementation of Paper "Wavelet-srnet: A wavelet-based cnn for multi-scale face super resolution"
Stars: ✭ 186 (-9.27%)
Mutual labels:  super-resolution
Waifu2x Extension
Image, GIF and Video enlarger/upscaler achieved with waifu2x and Anime4K. [NO LONGER UPDATED]
Stars: ✭ 149 (-27.32%)
Mutual labels:  super-resolution
Video Super Resolution
Video super resolution implemented in Pytorch
Stars: ✭ 169 (-17.56%)
Mutual labels:  super-resolution
Iseebetter
iSeeBetter: Spatio-Temporal Video Super Resolution using Recurrent-Generative Back-Projection Networks | Python3 | PyTorch | GANs | CNNs | ResNets | RNNs | Published in Springer Journal of Computational Visual Media, September 2020, Tsinghua University Press
Stars: ✭ 202 (-1.46%)
Mutual labels:  super-resolution
Anime4k
A High-Quality Real Time Upscaler for Anime Video
Stars: ✭ 14,083 (+6769.76%)
Mutual labels:  super-resolution
Super resolution with cnns and gans
Image Super-Resolution Using SRCNN, DRRN, SRGAN, CGAN in Pytorch
Stars: ✭ 176 (-14.15%)
Mutual labels:  super-resolution

Deep Iterative Collaboration for Face Super-Resolution

Pytorch implementation of Deep Face Super-Resolution with Iterative Collaboration between Attentive Recovery and Landmark Estimation (CVPR 2020) [arXiv][CVF]

If you find our work useful in your research, please consider citing:

@inproceedings{ma2020deep,
  title={Deep Face Super-Resolution with Iterative Collaboration between Attentive Recovery and Landmark Estimation},
  author={Ma, Cheng and Jiang, Zhenyu and Rao, Yongming and Lu, Jiwen and Zhou, Jie},
  booktitle={Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR)},
  year={2020}
}

Dependencies

  • Python 3 (Recommend to use Anaconda)
  • PyTorch >= 1.1.0
  • NVIDIA GPU + CUDA
  • Python packages: pip install numpy opencv-python tqdm imageio pandas matplotlib tensorboardX

Dataset Preparation

Download datasets

CelebA dataset can be downloaded here. Please download and unzip the img_celeba.7z file.

Helen dataset can be downloaded here. Please download and unzip the 5 parts of All images.

Testing sets for CelebA and Helen can be downloaded from Google Drive or Baidu Drive (extraction code: 6qhx).

Download landmark annotations and pretrained models

Landmark annotations for CelebA and Helen can be downloaded in the annotations folder from Google Drive or Baidu Drive (extraction code: 6qhx).

The pretrained models can also be downloaded from the models folder in the above links. Then please place them in ./models.

Training

To train a model:

cd code
python train.py -opt options/train/train_(DIC|DICGAN)_(CelebA|Helen).json
  • The json file will be processed by options/options.py. Please refer to this for more details.

  • Before running this code, please modify option files to your own configurations including:

    • proper dataroot_HR and dataroot_LR paths for the data loader
    • proper info_path for the annotations
    • whether to use a pretrained model and the path of the model
    • the path of the pretrained Feedback HourGlass model (for face landmark detection) if not using a pretrained model
    • the path of the feature extraction model (LightCNN_feature.pth) if training a GAN model
    • whether to resume training
    • saving frequency for models and states
    • other hyperparameters
    • loss function, etc.
  • During training, you can use Tesorboard to monitor the losses with tensorboard --logdir tb_logger/NAME_OF_YOUR_EXPERIMENT

Testing

To generate SR images by a model:

cd code
python test.py -opt options/test/test_(DIC|DICGAN)_(CelebA|Helen).json
  • Similar to training, the configurations can be modified in the json file. Please refer to this for more details.
  • You can find your results in results/{test_name}/{dataset_name}. The PSNR and SSIM values will be stored in result.json while the average results will be recorded in average_result.txt
  • We provide our DIC and DICGAN models used in our paper that can be downloaded in the models folder from Google Drive or Baidu Drive (extraction code: 6qhx). Then you can modify the directory of pretrained model and LR image sets in option files and run test.py for a quick test.
  • Please use png images as input!

Evaluation

To evaluate the SR results by landmark detection:

python eval_landmark.py --info_path /path/to/landmark/annotations --data_root /path/to/result/images

  • First you need to download the HG_68_CelebA.pth from the from Google Drive or Baidu Drive (extraction code: 6qhx) and put it into the ./models directory.
  • Results will be in /path/to/result/images/landmark_result.json and the averaged results will be in landmark_average_result.txt.

Visual Results

Reference

The code is based on SRFBN and hourglass-facekeypoints-detection

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].