/neurop-pytorch

A Pytorch Implementation of paper: "Neural Color Operators for Sequential Image Retouching", ECCV 2022

Primary LanguagePython

Neural Color Operators for Sequential Image Retouching (Pytorch Implementation)

Yili Wang, Xin Li, Kun Xu, Dongliang He, Qi Zhang, Fu Li, Errui Ding

[arXiv] [project] [doi]

Get Started

  • Clone this repo

    git clone https://github.com/amberwangyili/neurop-pytorch
    
  • Download the Dataset from 百度网盘 (code:jvvq) and unzip in project folder

    tree -L 2 neurop-pytorch/datasets
    # the output should be like the following:
    datasets/
    ├── dataset-dark
    │   ├── testA
    │   ├── testB
    │   ├── trainA
    │   └── trainB
    ├── dataset-init
    │   ├── BC
    │   ├── EX
    │   └── VB
    ├── dataset-lite
    │   ├── testA
    │   ├── testB
    │   ├── trainA
    │   └── trainB
    └── dataset-ppr
        ├── ppr-a
        ├── ppr-b
        ├── ppr-c
        ├── testA
        ├── testM
        ├── trainA
        └── trainM
  • Install Dependencies

    cd neurop-pytorch/codes
    pip install -r requirements.txt 

Test

  1. We provide pretrained model weights for MIT-Adobe FiveK and PPR10K in neurop-pytorch/pretrain_models/

  2. Run command:

    python test.py -config configs/test/<configuaration-name>.yaml 
  3. The evaluation results will be in the neurop-pytorch/results folder

Train

  1. Initialization individual neural color operators:

    python train.py -config ./configs/init_neurop.yaml 
  2. Finetune with strength predictors:

    python train.py -config ./configs/train/<configuration-name>.yaml