Code Monkey home page Code Monkey logo

progressive-face-super-resolution's Introduction

Progressive Face Super-Resolution

Deokyun Kim*, Minseon Kim*, Gihyun Kwon*, and Dae-shik Kim, Progressive Face Super-Resolution via Attention to Facial Landmark, The British Machine Vision Conference 2019 (BMVC 2019)

*The authors have equally contributed.

Overview

our structure

Progressive Face Super-Resolution via Attention to Facial Landmark
Deokyun Kim (KAIST), Minseon Kim (KAIST), Gihyun Kwon (KAIST), et al.
Abstract: Face Super-Resolution (SR) is a subfield of the SR domain that specifically targets the reconstruction of face images. The main challenge of face SR is to restore essential facial features without distortion. We propose a novel face SR method that generates photo-realistic 8ร— super-resolved face images with fully retained facial details. To that end, we adopt a progressive training method, which allows stable training by splitting the network into successive steps, each producing output with a progressively higher resolution. We also propose a novel facial attention loss and apply it at each step to focus on restoring facial attributes in greater details by multiplying the pixel difference and heatmap values. Lastly, we propose a compressed version of the state-of-the-art face alignment network (FAN) for landmark heatmap extraction. With the proposed FAN, we can extract the heatmaps suitable for face SR and also reduce the overall training time. Experimental results verify that our method outperforms state-of-the-art methods in both qualitative and quantitative measurements, especially in perceptual quality.

Prerequisites

  • Python 3.6
  • Pytorch 1.0.0
  • CUDA 9.0 or higher

This code support NVIDIA apex-Distributed Training in Pytorch, please follow description. Also, we refered state-of-the-art Face Alignment Network in order to get face SR-oriented facial landmark heatmap.

Data Preparation

create a folder:

 mkdir dataset

and then, download dataset. Anno & Img.

Demonstration

  • Single face image demonstartion
$ python demo.py --image-path ./figure/eval_target_image.jpeg --checkpoint-path 'CHECKPOINT_PATH/generator_checkpoint_singleGPU.ckpt' --output-path './OUTPUT_PATH/OUTPUT_NAME.jpeg'

Test model

  • Test trained model
$ python eval.py --data-path './dataset' --checkpoint-path 'CHECKPOINT_PATH/generator_checkpoint_singleGPU.ckpt'
  • Test distributed trained model
$ python -m torch.distributed.launch --nproc_per_node=number_of_used_GPUs eval.py \
                                                 --distributed \
                                                 --data-path './dataset' \
                                                 --checkpoint-path 'CHECKPOINT_PATH/generator_checkpoint.ckpt'

Citation

@inproceedings{progressive-face-sr,
    author    = {Deokyun Kim, Minseon Kim, Gihyun Kwon, Dae-Shik Kim}, 
    title     = {Progressive Face Super-Resolution via Attention to Facial Landmark}, 
    booktitle = {Proceedings of the 30th British Machine Vision Conference (BMVC)},
    year  = {2019}
}

progressive-face-super-resolution's People

Contributors

deokyunkim avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.