All Projects → elliottwu → sText2Image

elliottwu / sText2Image

Licence: MIT license
Attribute-Guided Sketch-to-Image Generation

Programming Languages

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

Projects that are alternatives of or similar to sText2Image

Icface
ICface: Interpretable and Controllable Face Reenactment Using GANs
Stars: ✭ 122 (+82.09%)
Mutual labels:  face, image-generation
Apdrawinggan
Code for APDrawingGAN: Generating Artistic Portrait Drawings from Face Photos with Hierarchical GANs (CVPR 2019 Oral)
Stars: ✭ 510 (+661.19%)
Mutual labels:  face, image-generation
FaceNet-IOT
IOT implementation for FaceNet project by David Sandberg https://github.com/davidsandberg/facenet
Stars: ✭ 18 (-73.13%)
Mutual labels:  face
interfaces
A diverse set of royalty-free user avatars to be used for marketing graphics and application screenshots.
Stars: ✭ 50 (-25.37%)
Mutual labels:  face
face age gender
Can we predict the age and gender of someone given a picture of their face ?
Stars: ✭ 40 (-40.3%)
Mutual labels:  face
derivative-works
Derivative-Works is an experiment in using machine learning to create image collages.
Stars: ✭ 29 (-56.72%)
Mutual labels:  face
Peppa-Facial-Landmark-PyTorch
Facial Landmark Detection based on PyTorch
Stars: ✭ 172 (+156.72%)
Mutual labels:  face
CycleGAN-Models
Models generated by CycleGAN
Stars: ✭ 42 (-37.31%)
Mutual labels:  image-generation
emotion-recognition-GAN
This project is a semi-supervised approach to detect emotions on faces in-the-wild using GAN
Stars: ✭ 20 (-70.15%)
Mutual labels:  face
multiple-objects-gan
Implementation for "Generating Multiple Objects at Spatially Distinct Locations" (ICLR 2019)
Stars: ✭ 111 (+65.67%)
Mutual labels:  image-generation
Face-Recognition-FaceNet
A python script label faces in group photos using Facenet. 🎉
Stars: ✭ 21 (-68.66%)
Mutual labels:  face
eccv16 attr2img
Torch Implemention of ECCV'16 paper: Attribute2Image
Stars: ✭ 93 (+38.81%)
Mutual labels:  face
FacialEmotionRecognition
Using Extended Cohn-Kanade AU-Coded Facial Expression Database to classify basic human facial emotion expressions using ann
Stars: ✭ 28 (-58.21%)
Mutual labels:  face
TheLaughingMan-ARKit
Use ARKit to become the infamous Laughing Man from Ghost in the Shell
Stars: ✭ 26 (-61.19%)
Mutual labels:  face
vqgan-clip-app
Local image generation using VQGAN-CLIP or CLIP guided diffusion
Stars: ✭ 94 (+40.3%)
Mutual labels:  image-generation
netflix-show-generator
A tool for generating Netflix show image
Stars: ✭ 18 (-73.13%)
Mutual labels:  image-generation
FaceIDLight
A lightweight face-recognition toolbox and pipeline based on tensorflow-lite
Stars: ✭ 17 (-74.63%)
Mutual labels:  face
Anime2Sketch
A sketch extractor for anime/illustration.
Stars: ✭ 1,623 (+2322.39%)
Mutual labels:  image-generation
texturize
🤖🖌️ Generate photo-realistic textures based on source images. Remix, remake, mashup! Useful if you want to create variations on a theme or elaborate on an existing texture.
Stars: ✭ 495 (+638.81%)
Mutual labels:  image-generation
timeline
Timeline - A photo organizer
Stars: ✭ 39 (-41.79%)
Mutual labels:  face

Attribute-Guided Sketch-to-Image Generation

Introduction

Note: Implementation in this repo has been largely outdated. You may refer to my presentation slides for your own implementation.

This is based on one of our prior works on Sketch-to-Image Generation. Freehand sketch can be highly abstract (examples shown below), and learning representations of sketches is not trivial. In contrast to other cross domain learning approaches, like pix2pix and CycleGAN, where a mapping from representations in one domain to those in another domain is learned using translation networks, in Sketch-to-Image Generation, we propose to learn a joint representation of sketch and image.

In this project we intend to add text constraints to sketch-to-image generation, where texts provide the contents and sketches control the shapes. So far, I only tried to add attribute guidance instead of using text embeddings as additional conditions, and this repo demonstrates results on Attribute-Guided Sketch-to-Image Generation.

face bird shoe

* A few freehand sketches were collected from volunteers.

Contributors:

  • Major Contributor: Shangzhe Wu (HKUST)
  • Supervisor: Yu-wing Tai (Tencent), Chi-Keung Tang (HKUST)
  • Mentor in MLJejuCamp2017: Hyungjoo Cho

MLJejuCamp2017

This project was developed in Machine Learning Camp Jeju 2017 within one month. More interesting projects can be found in final presentations and program GitHub. Final presentation video can be watched here (partially). Camp 2018 has been launched, and more details can be found here.

Get Started

Prerequisites

Setup

  • Clone this repo:
git clone https://github.com/elliottwu/sText2Image.git
cd sText2Image
  • Download preprocessed CelebA data (~3GB):
sh ./datasets/download_dataset.sh

Train

sh train.sh
  • To monitor training using Tensorboard, copy the following to your terminal and open localhost:8888 in your browser
tensorboard --logdir=logs_face --port=8888

Test

sh test.sh

Pretrained Model

  • Download pretrained model:
sh download_pretrained_model.sh
  • Test pretrained model on CelebA dataset:
python test.py ./datasets/celeba/test/* --checkpointDir checkpoints_face_pretrained --maskType right --batchSize 64 --lam1 100 --lam2 1 --lam3 0.1 --lr 0.001 --nIter 1000 --outDir results_face_pretrained --text_vector_dim 18 --text_path datasets/celeba/imAttrs.pkl

Experiments

We test our framework with 3 kinds of data, face(CelebA), bird(CUB), and flower(Oxford-102). So far, we have only experimented with face images using attribute vectors as texts information. Here are some preliminary results:

1. Face

We used CelebA dataset, which also provides 40 attributes for each image. Similar to the text information, attributes control the specific details of the generated images. We chose 18 attrbutes for training.

a). Attributes match sketch:

The following images were generated given sketches and the corresponding attriubtes.

Mustache
attributes sketch / generated / gt attributes sketch / generated / gt
Male, 5_o_Clock_Shadow, Mouth_Open, Pointy_Nose Male, 5_o_Clock_Shadow, Big_Nose, Mustache
Male, Big_Lips, Big_Nose, Chubby, Goatee, High_Cheekbones, Smiling Male, Mustache
Male, Goatee, Mouth_Open, Smiling Male, Big_Nose, Goatee, Smiling
Male, 5_o_Clock_Shadow, Big_Lips, Big_Nose, Goatee, High_Cheekbones, Mouth_Open, Rosy_Cheeks, Smiling Male, 5_o_Clock_Shadow, Big_Nose, Narrow_Eyes
Eyeglasses
attributes sketch / generated / gt attributes sketch / generated / gt
Male, Big_Nose, Eyeglasses, Goatee Female, Eyeglasses
Female, Eyeglasses, High_Cheekbones, Mouth_Open, Smiling Male, 5_o_Clock_Shadow, Big_Nose, Eyeglasses, Mouth_Open, Smiling
Male, Big_Nose, Double_Chin, Eyeglasses, Mouth_Open, Pointy_Nose, Smiling Male, Eyeglasses, High_Cheekbones, Mouth_Open, Smiling
Male, 5_o_Clock_Shadow, Eyeglasses, Mouth_Open, Smiling Male, Big_Lips, Big_Nose, Eyeglasses, Goatee, Mouth_Open
Lipstick
attributes sketch / generated / gt attributes sketch / generated / gt
Female, Heavy_Makeup, High_Cheekbones, Mouth_Open, Pointy_Nose, Smiling, Wearing_Lipstick Female, Heavy_Makeup, Mouth_Open, Wearing_Lipstick
Female, Heavy_Makeup, High_Cheekbones, Mouth_Open, Pointy_Nose, Smiling, Wearing_Lipstick Female, Heavy_Makeup, Pointy_Nose, Smiling, Wearing_Lipstick
Female, Heavy_Makeup, High_Cheekbones, Mouth_Open, Pointy_Nose, Smiling, Wearing_Lipstick Female, Big_Lips, Big_Nose, Heavy_Makeup, High_Cheekbones, Mouth_Open, Rosy_Cheeks, Smiling, Wearing_Lipstick
Female, Heavy_Makeup, Pointy_Nose, Wearing_Lipstick Female, Heavy_Makeup, Mouth_Open, Smiling, Wearing_Lipstick

b). Attributes mismatch sketch:

The following images were generated given sketches and the random attriubtes. The controlling effects of the attributes are still under improvement.

attributes sketch / generated attributes sketch / generated attributes sketch / generated
Female, Big_Lips, Heavy_Makeup, Wearing_Lipstick Female, Big_Lips, Heavy_Makeup, Wearing_Lipstick Male, Big_Nose, No_Eyeglasses
Male, Big_Nose, Chubby, Double_Chin, High_Cheekbones, Smiling Male, Big_Nose, Chubby, Double_Chin, High_Cheekbones, Mouth_Open, Smiling Female, Heavy_Makeup, High_Cheekbones, Mouth_Open, Smiling, Wearing_Lipstick
Female, Heavy_Makeup, High_Cheekbones, Mouth_Open, Smiling, Wearing_Lipstick Female, Heavy_Makeup, High_Cheekbones, Mouth_Open, Smiling, Wearing_Lipstick Female, Heavy_Makeup, High_Cheekbones, Mouth_Open, Smiling, Wearing_Lipstick
Female, Heavy_Makeup, High_Cheekbones, Mouth_Open, Smiling, Wearing_Lipstick, No_Eyeglasses Male Female, Heavy_Makeup, Pale_Skin, Wearing_Lipstick
Female, Heavy_Makeup, High_Cheekbones, Pointy_Nose, Smiling, Wearing_Lipstick, No_Eyeglasses Female, Heavy_Makeup, High_Cheekbones, Pointy_Nose, Smiling, Wearing_Lipstick Female, Heavy_Makeup, High_Cheekbones, Mouth_Open, Pointy_Nose, Rosy_Cheeks, Smiling, Wearing_Lipstick

c). Freehand sketch:

The following images were generated given freehand sketches and the random attriubtes. The controlling effects of the attributes are still under improvement.

attributes sketch / generated attributes sketch / generated attributes sketch / generated
Female, Big_Lips, Heavy_Makeup, Wearing_Lipstick Male, Big_Nose Male, Big_Nose, Chubby, Double_Chin, High_Cheekbones, Mouth_Open, Smiling
Male, Big_Nose, Chubby, Double_Chin, High_Cheekbones, Mouth_Open, Smiling Male, Big_Nose, Chubby, Double_Chin, High_Cheekbones, Mouth_Open, Smiling Female, Heavy_Makeup, High_Cheekbones, Mouth_Open, Smiling, Wearing_Lipstick
Female, Heavy_Makeup, High_Cheekbones, Mouth_Open, Smiling, Wearing_Lipstick Female, Heavy_Makeup, High_Cheekbones, Mouth_Open, Smiling, Wearing_Lipstick Female, Heavy_Makeup, High_Cheekbones, Mouth_Open, Smiling, Wearing_Lipstick
Female, Heavy_Makeup, High_Cheekbones, Mouth_Open, Smiling, Wearing_Lipstick Female, Big_Lips, Heavy_Makeup, High_Cheekbones, Mouth_Open, Narrow_Eyes, Smiling, Wearing_Lipstick Female, Big_Lips, Heavy_Makeup, High_Cheekbones, Mouth_Open, Narrow_Eyes, Smiling, Wearing_Lipstick
Female, Heavy_Makeup, High_Cheekbones, Pointy_Nose, Smiling, Wearing_Lipstick Female, Heavy_Makeup, High_Cheekbones, Mouth_Open, Smiling, Wearing_Lipstick Female, Heavy_Makeup, High_Cheekbones, Mouth_Open, Smiling, Wearing_Lipstick

Acknowledgement

Codes are based on DCGAN and dcgan-completion.

Citation

Consider citing the following paper if you find this repo helpful:

@InProceedings{Lu_2018_ECCV,
  author = {Lu, Yongyi and Wu, Shangzhe and Tai, Yu-Wing and Tang, Chi-Keung},
  title = {Image Generation from Sketch Constraint Using Contextual GAN},
  booktitle = {The European Conference on Computer Vision (ECCV)},
  month = {September},
  year = {2018}
}
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].