Skip to content


Folders and files

Last commit message
Last commit date

Latest commit



10 Commits

Repository files navigation

Conditional Sequential Modulation for Efficient Global Image Retouching Paper Link

By Jingwen He*, Yihao Liu*, Yu Qiao, and Chao Dong (* indicates equal contribution)

Left: Compared with existing state-of-the-art methods, our method achieves superior performance with extremely few parameters (1/13 of HDRNet and 1/250 of White-Box). The diameter of the circle represents the amount of trainable parameters. Right: Image retouching examples.

The first row shows smooth transition effects between different styles (expert A to B) by image interpolation. In the second row, we use image interpolation to control the retouching strength from input image to the automatic retouched result. We denote the interpolation coefficient α for each image.


  title={Conditional Sequential Modulation for Efficient Global Image Retouching},
  author={He, Jingwen and Liu, Yihao and Qiao, Yu and Dong, Chao},
  journal={arXiv preprint arXiv:2009.10390},

Dependencies and Installation

  • Python 3 (Recommend to use Anaconda)
  • PyTorch >= 1.0
  • Python packages: pip install numpy opencv-python lmdb pyyaml
  • TensorBoard:
    • PyTorch >= 1.1: pip install tb-nightly future
    • PyTorch == 1.0: pip install tensorboardX


Here, we provide the preprocessed datasets: MIT-Adobe FiveK dataset, which contains both training pairs and testing pairs.

  • training pairs: {GT: expert_C_train; Input: raw_input_train}
  • testing pairs: {GT: expert_C_test; Input: raw_input_test}

How to Test

  1. Modify the configuration file options/test/test_Enhance.yml. e.g., dataroot_GT, dataroot_LQ, and pretrain_model_G. (We provide a pretrained model in experiments/pretrain_models/csrnet.pth)
  2. Run command:
python -opt options/test/test_Enhance.yml
  1. Modify the python file input_path, GT_path (Line 139, 140). Then run:

How to Train

  1. Modify the configuration file options/train/train_Enhance.yml. e.g., dataroot_GT, dataroot_LQ.
  2. Run command:
python -opt options/train/train_Enhance.yml


  • This code is based on mmsr.
  • Thanks Yihao Liu for part of this work.