Skip to content

amberwangyili/neurop

main
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Neural Color Operators for Sequential Image Retouching (ECCV2022)

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

[arXiv] [project] [doi]

[Paddle Implementation](Offical)

[Pytorch Implementation]

[Jittor Implementation]

Left: Compared with previous state-of-the-art methods, NeurOp achieves superior performance with only 28k parameters (~75% of CSRNet). Right: Strength Controllability Results. Our method can directly change the retouching output with intuitive control (i.e. directly modify the scalar strengths)

Datasets

Pretrain data to initialize our neurOps is hosted on 百度网盘 (code:pld9).

MIT-Adobe FiveK & PPR10K

We host all these data in 百度网盘 (code:jvvq)

  • There are two preprocessed versions of MIT-Adobe FiveK, in our paper, we refer them as MIT-Adobe FiveK-Dark (originally provided by CSRNet) and MIT-Adobe FiveK-Lite (originally provided by Distort-and-Recover).

  • The official PPR10K dataset link is here.

Get Started

  • Clone this repo

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

    tree -L 2 neurop/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
    pip install -r requirements.txt 

Test

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

  2. Run command:

    python test.py -config ./configs/test/<configuaration-name>.yaml 
  3. The evaluation results will be in the neurop/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 

BibTex

If you find neurOp useful in your research, please use the following BibTeX entry.

    @inproceedings{wang2022neurop,
    author = {Wang, Yili and Li, Xin and Xu, Kun and He, Dongliang and Zhang, Qi and Li, Fu and Ding, Errui},
    title = {Neural Color Operators for Sequential Image Retouching},
    year = {2022},
    isbn = {978-3-031-19800-7},
    publisher = {Springer-Cham},
    url = {https://doi.org/10.1007/978-3-031-19800-7_3},
    doi = {10.1007/978-3-031-19800-7_3},
    booktitle = {Computer Vision – ECCV 2022: 17th European Conference, Tel Aviv, Israel, October 23–27, 2022, Proceedings, Part XIX},
    numpages = {14},
    }

Acknowledgement

NeurOp is licensed under a MIT License.

About

(ECCV 2022) Neural Color Operators for Sequential Image Retouching

Topics

Resources

License

Stars

Watchers

Forks