NVlabs / FUNIT

Translate images to unseen domains in the test time with few example images.

Home Page:https://nvlabs.github.io/FUNIT/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

face swap instead of pet swap

ak9250 opened this issue · comments

https://github.com/shaoanlu/fewshot-face-translation-GAN
uses modules from FUNIT and SPADE for face-swapping but the quality of swaps isnt as good as FUNIT, are there particular limits like expressions and rotations?

I just ported funit to pure keras and started training with 2 classes for face swap

@iperov cool, is this port public or will it be part of deepfacelab?

part of dfl

when approx it will appear in your dfl?

@eps696 I dont know , currently testing...
Do you want source code for keras ?

would love to try it
[dfl looks a bit overloaded by end-user convenience features, cleaner task-oriented code would b perfect]

In the last page of the FUNIT arxiv paper (which will be presented in ICCV 2019), we do have the few-shot face translation experiments. We simply use CelebA for the experiments. I expect combining with SPADE and utilizing landmarks should lead to better performance thought.

image

@mingyuliutw I am trying to train FUNIT on celebA but I am confused. What are the classes? If I take every person as a different class then there would be too much classes. Or can I take real as 1 and fake as 0, nothing more? Please Guide me.

Each human identity is a class. CelebA has the person name for each photo. You can divide the training set into different classes using the name.

I trained FUNIT on 256 VGGFace dataset clases for a week.

Currently, it seems that it cannot correctly convert unknown persons.

FUNIT_preview_TEST

@mingyuliutw, are 256 persons with 69k total photos enough for the model?

should I expand to 1024, or 2048 persons ?

@mingyuliutw can you give me advice for network config for 1024 person classes and 200k photos?

@mingyuliutw is it good that one class has 60 photos and other class has 500 photos?

@iperov
would you like to share me your keras code? thank you.

thank you ~~

@iperov
Hi I'm quite interested how you trained fuint for face swap
Note N faces in the trainig data set, you just followed the origin fuint traning set and treat N ids as N classes right?

@MengXinChengXuYuan

for 1024 persons I got unsatisfactory result.

seen faces swap:
377250

unseen faces swaps are unrecognizable:
python_2019-11-05_12-41-24

May be if train it on 8000 persons on bigger size funit we will get better result, but I have no time and no hardware for that.

for 2 persons result is much worse than classic deepfake autoencoder.
64905963-b6454980-d6f0-11e9-886d-4cf2e8b5956a 1