All Projects → junleen → Expression-manipulator

junleen / Expression-manipulator

Licence: MIT license
ECCV'20 paper 'Toward Fine-grained Facial Expression Manipulation' code

Programming Languages

python
139335 projects - #7 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to Expression-manipulator

3ddfa v2
The official PyTorch implementation of Towards Fast, Accurate and Stable 3D Dense Face Alignment, ECCV 2020.
Stars: ✭ 1,961 (+2661.97%)
Mutual labels:  eccv
Pwc
Papers with code. Sorted by stars. Updated weekly.
Stars: ✭ 15,288 (+21432.39%)
Mutual labels:  eccv
Awesome-Computer-Vision-Paper-List
This repository contains all the papers accepted in top conference of computer vision, with convenience to search related papers.
Stars: ✭ 248 (+249.3%)
Mutual labels:  eccv
JSTASR-DesnowNet-ECCV-2020
This is the project page of our paper which has been published in ECCV 2020.
Stars: ✭ 17 (-76.06%)
Mutual labels:  eccv
Dehazing-PMHLD-Patch-Map-Based-Hybrid-Learning-DehazeNet-for-Single-Image-Haze-Removal-TIP-2020
This is the source code of PMHLD-Patch-Map-Based-Hybrid-Learning-DehazeNet-for-Single-Image-Haze-Removal which has been accepted by IEEE Transaction on Image Processing 2020.
Stars: ✭ 14 (-80.28%)
Mutual labels:  eccv
DeepVTB
🌌 OpenVTuber-虚拟アイドル共享计划 An application of real-time face and gaze analyzation via deep nerual networks.
Stars: ✭ 32 (-54.93%)
Mutual labels:  eccv
PS-FCN Poster LaTex
LaTex Poster for PS-FCN (ECCV 2018)
Stars: ✭ 41 (-42.25%)
Mutual labels:  eccv
SOLAR
PyTorch code for "SOLAR: Second-Order Loss and Attention for Image Retrieval". In ECCV 2020
Stars: ✭ 150 (+111.27%)
Mutual labels:  eccv
NeuroAI
NeuroAI-UW seminar, a regular weekly seminar for the UW community, organized by NeuroAI Shlizerman Lab.
Stars: ✭ 36 (-49.3%)
Mutual labels:  eccv
Guided-I2I-Translation-Papers
Guided Image-to-Image Translation Papers
Stars: ✭ 117 (+64.79%)
Mutual labels:  eccv
CURL
Code for the ICPR 2020 paper: "CURL: Neural Curve Layers for Image Enhancement"
Stars: ✭ 177 (+149.3%)
Mutual labels:  eccv
Depth-Guided-Inpainting
Code for ECCV 2020 "DVI: Depth Guided Video Inpainting for Autonomous Driving"
Stars: ✭ 50 (-29.58%)
Mutual labels:  eccv
video-pace
code for our ECCV-2020 paper: Self-supervised Video Representation Learning by Pace Prediction
Stars: ✭ 95 (+33.8%)
Mutual labels:  eccv
sam-textvqa
Official code for paper "Spatially Aware Multimodal Transformers for TextVQA" published at ECCV, 2020.
Stars: ✭ 51 (-28.17%)
Mutual labels:  eccv

Toward Fine-grained Facial Expression Manipulation (ECCV 2020, Paper)

Python 3.6 Pytorch 0.4.1 Pytorch 1.3.1

cover Arbitrary Facial Expression Manipulation. Our model can 1) perform continuous editing between two expressions (top); 2) learn to only modify one facial component(middle); 3) transform expression in paintings (bottom). From left to right, the emotion intensity is set to 0, 0.5, 0.75, 1, and 1.25.

Single/Multiple AU Editing

single-au Single/multiple au Editing. AU4: Brow Lowerer; AU5: Upper Lid Raiser; AU7: Lid Tightener; AU12: Lip Corner Puller; AU15: Lip Corner Depressor; AU20: Lip Stretcher. The legend below the images are relative AUs intensity. The higher (lower) AUs value means to strengthen (weaken) the corresponding facial action unit in input image.

Expression Transfer

arbitrary Arbitrary Facial Expresson Manipulation. The top-left image with blue box is input, the images in odd rows are image with target expression, the images in even rows are animated results.

gif

Resources

Here are some links for you to know Action Units better.

Prerequisites

  • Install PyTorch(version==0.4.1 or >= 1.3.0), torchvision

  • Install requirements.txt

    numpy
    matplotlib
    tqdm
    pickle
    opencv-python
    tensorboardX
    face_alignment

Getting Started

1. Data Preparation

  • prepare your images (EmotionNet, or AffectNet, etc.)

  • Extract the Action Units with OpenFace, and generate aus_dataset.pkl which contains a list of dict, e.g., [{'file_path': <path of image1>, 'aus':<extracted aus of image1>}, {'file_path': <path of image2>, 'aus':<extracted aus of image2>}]

  • Please refer to src/samples/aus_dataset.pkl

  • You may use the function of pickle to save pkl file

    with open('aus_dataset.pkl', 'wb') as f:
        pickle.dump(data, f, pickle.HIGHEST_PROTOCOL)

2. Training

To train, please modify the parameters in launch/train.sh and run:

bash launch/train.sh

Citation

If you find this repository helpful, use this code or adopt ideas from the paper for your research, please cite:

@inproceedings{ling2020toward,
  title={Toward Fine-grained Facial Expression Manipulation},
  author={Ling, Jun and Xue, Han and Song, Li and Yang, Shuhui and Xie, Rong and Gu, Xiao},
  booktitle={European Conference on Computer Vision},
  pages={37--53},
  year={2020},
  organization={Springer}
}

Contact

Please contact [email protected] or open an issue for any questions or suggestions.

Acknowledgement

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].