All Projects → TheSouthFrog → Stylealign

TheSouthFrog / Stylealign

[ICCV 2019]Aggregation via Separation: Boosting Facial Landmark Detector with Semi-Supervised Style Transition

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Stylealign

Learning-From-Rules
Implementation of experiments in paper "Learning from Rules Generalizing Labeled Exemplars" to appear in ICLR2020 (https://openreview.net/forum?id=SkeuexBtDr)
Stars: ✭ 46 (-73.26%)
Mutual labels:  representation-learning, data-augmentation
Good Papers
I try my best to keep updated cutting-edge knowledge in Machine Learning/Deep Learning and Natural Language Processing. These are my notes on some good papers
Stars: ✭ 248 (+44.19%)
Mutual labels:  representation-learning, semi-supervised-learning
Usss iccv19
Code for Universal Semi-Supervised Semantic Segmentation models paper accepted in ICCV 2019
Stars: ✭ 57 (-66.86%)
Mutual labels:  representation-learning, semi-supervised-learning
Face.evolve.pytorch
🔥🔥High-Performance Face Recognition Library on PaddlePaddle & PyTorch🔥🔥
Stars: ✭ 2,719 (+1480.81%)
Mutual labels:  data-augmentation, face-alignment
awesome-graph-self-supervised-learning
Awesome Graph Self-Supervised Learning
Stars: ✭ 805 (+368.02%)
Mutual labels:  representation-learning, data-augmentation
semantic-parsing-dual
Source code and data for ACL 2019 Long Paper ``Semantic Parsing with Dual Learning".
Stars: ✭ 17 (-90.12%)
Mutual labels:  semi-supervised-learning, data-augmentation
Grand
Source code and dataset of the NeurIPS 2020 paper "Graph Random Neural Network for Semi-Supervised Learning on Graphs"
Stars: ✭ 75 (-56.4%)
Mutual labels:  data-augmentation, semi-supervised-learning
Torchsample
High-Level Training, Data Augmentation, and Utilities for Pytorch
Stars: ✭ 1,731 (+906.4%)
Mutual labels:  data-augmentation
Weakly Supervised Panoptic Segmentation
Weakly- and Semi-Supervised Panoptic Segmentation (ECCV18)
Stars: ✭ 149 (-13.37%)
Mutual labels:  semi-supervised-learning
Deep Face Alignment
The MXNet Implementation of Stacked Hourglass and Stacked SAT for Robust 2D and 3D Face Alignment
Stars: ✭ 134 (-22.09%)
Mutual labels:  face-alignment
Uda
Unsupervised Data Augmentation (UDA)
Stars: ✭ 1,877 (+991.28%)
Mutual labels:  semi-supervised-learning
Kate
Code & data accompanying the KDD 2017 paper "KATE: K-Competitive Autoencoder for Text"
Stars: ✭ 135 (-21.51%)
Mutual labels:  representation-learning
Prnet pytorch
Training & Inference Code of PRNet in PyTorch 1.1.0
Stars: ✭ 149 (-13.37%)
Mutual labels:  face-alignment
Role2vec
A scalable Gensim implementation of "Learning Role-based Graph Embeddings" (IJCAI 2018).
Stars: ✭ 134 (-22.09%)
Mutual labels:  representation-learning
Torch Audiomentations
Fast audio data augmentation in PyTorch. Inspired by audiomentations. Useful for deep learning.
Stars: ✭ 164 (-4.65%)
Mutual labels:  data-augmentation
Ghost Free Shadow Removal
[AAAI 2020] Towards Ghost-free Shadow Removal via Dual Hierarchical Aggregation Network and Shadow Matting GAN
Stars: ✭ 133 (-22.67%)
Mutual labels:  data-augmentation
Deformable Kernels
Deforming kernels to adapt towards object deformation. In ICLR 2020.
Stars: ✭ 166 (-3.49%)
Mutual labels:  representation-learning
Imagecorruptions
Python package to corrupt arbitrary images.
Stars: ✭ 158 (-8.14%)
Mutual labels:  data-augmentation
Deep Face Recognition
One-shot Learning and deep face recognition notebooks and workshop materials
Stars: ✭ 147 (-14.53%)
Mutual labels:  face-alignment
Binary Face Alignment
Real time face alignment
Stars: ✭ 145 (-15.7%)
Mutual labels:  face-alignment

Aggregation via Separation: Boosting Facial Landmark Detector with Semi-Supervised Style Translation

Shengju Qian, Keqiang Sun, Wayne Wu, Chen Qian, and Jiaya Jia

International Conference on Computer Vision (ICCV), 2019

This repository contains the implementation of our ICCV 2019 paper, 'Aggregation via Separation: Boosting Facial Landmark Detector with Semi-Supervised Style Translation'. The proposed method investigates how to boost the performance of facial landmark detector in limited training resources, using synthetic data in a style-translation manner.

aug

Results(NME/%) on WFLW dataset

Method Fullset Pose Expression Illumination Make-up Occlusion Blur
DVLN 6.08 11.54 6.78 5.73 5.98 7.33 6.88
LAB 5.27 10.24 5.51 5.23 5.15 6.79 6.32
SAN 5.22 10.39 5.71 5.19 5.49 6.83 5.80
WING 5.11 8.75 5.36 4.93 5.41 6.37 5.81
ResNet-18 6.09 10.76 6.97 5.83 6.19 7.15 6.67
AVS(ResNet-18) 5.25 9.10 5.83 4.93 5.47 6.26 5.86
AVS(LAB) 4.76 8.21 5.14 4.51 5.00 5.76 5.43
AVS(SAN) 4.39 8.42 4.68 4.24 4.37 5.60 4.86

We provide a synthetic WFLW dataset generated by this method here Google Drive or Baidu Drive.

In the provided dataset, each image is augmented with eight different styles in the original WFLW dataset. You may download from this link and are able to produce similar to re-produce the results reported in our paper.

For example, you can train a SAN(CVPR 2018) model using our script.

Avaliable Implementation

Tensorflow

Pytorch(Minimal)

Facial Landmark Detection(SAN)


The instruction of tensorflow implementation is provided in the following:

Prerequisites and Installation

  • Python 3.6
  • Tensorflow 1.2.1
  • CUDA 8.0 and CuDNN 5.1

Getting Started

Clone this repository:

git clone [email protected]:TheSouthFrog/stylealign.git
cd stylealign

Install dependencies using Anaconda:

conda create -n stylealign python=3.6
source activate stylealign
pip install -r requirements.txt

Note this implementation, we use variational u-net as network structure as it produces sharper results.

As it uses a deprecated API of data dependent initialization which requires legacy version of CUDA 8.0 and CuDNN 5.1 without backward compatibility. Prepare Dataset

  • You may the original cropped WFLW dataset here Google Drive or Baidu Drive.
  • Unzip downloaded files. Remember to change the data_dir and image_list to your image directory and annotation file, respectively.

Running the code:

Assume that you have installed multiple versions of CUDA and CuDNN. By switching the environment to run our code, you need to find out the directory where you have installed the right version and run(for example):

export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64

Then run:

CUDA_VISIBLE_DEVICES=gpu_id python main.py --config config/exp_0001.yaml

Generate style-augmented samples

CUDA_VISIBLE_DEVICES=gpu_id python main.py --checkpoint XXXXXX --config config/test_0001.yaml

For acceleration, we use the transfer pass to perform testing, where every image in a batch(batch size: n) outputs n samples under different styles in this batch(n2 in single pass).

gen_landmark.py is used to generate seperated images and corresponding labels of synthetic images according to transfer images and given order in original annotation files.

  • --label_file: The annotation file that used for testing.
  • --checkpoint_iter: Trained Iteration of the testing checkpoint.
  • --batch_size: Testing batch size.
  • --gen_dir and --out_dir: Testing directory and Output directory.

Contact

If you have any questions, please feel free to contact the authors. Shengju Qian [email protected]

Citation

If you use our code, please consider citing our paper:

@inproceedings{qian2019aggregation,
  title={Aggregation via Separation: Boosting Facial Landmark Detector with Semi-Supervised Style Translation},
  author={Qian, Shengju and Sun, Keqiang and Wu, Wayne and Qian, Chen and Jia, Jiaya},
  journal={ICCV},
  year={2019}
}
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].