Commit graph

79 commits

Author SHA1 Message Date
Colombo
8035325f92 extractor: fix for amd 2019-10-27 12:47:12 +04:00
Colombo
75eeef0a96 fix for amd 2019-10-24 21:59:13 +04:00
Colombo
59d6fada23 draw up arrow in the red landmark debug square 2019-10-24 10:09:51 +04:00
Colombo
e63e89c305 fix s3fd extractor bug for 11GB+ cards 2019-10-17 22:25:23 +04:00
Colombo
5a2eefaa5b removed last fix 2019-10-14 20:31:11 +04:00
Colombo
e18b07549b new fix of "fixed bug when the same face could be detected twice" 2019-10-14 20:26:53 +04:00
Colombo
1de1e0029f Extractor now produces a less shaked face. but second pass is now slower by 25%,
before/after: https://imgur.com/L77puLH
2019-10-14 12:09:32 +04:00
Colombo
e013cb0f6b moving some files 2019-10-14 09:34:44 +04:00
Colombo
2b264da86b fixed bug when same face can be detected twice 2019-10-13 14:59:50 +04:00
Colombo
cbc18b2d41 nothing interesting 2019-10-06 17:55:32 +04:00
Colombo
d781af3d1f fixed GPU detection and indexes, got rid of using nvml, now using direct cuda lib to determine gpu info that match tensorflow indexes,
removed TrueFace model.

added SAEv2 model. Differences from SAE:
+ default e_ch_dims is now 21
+ new encoder produces more stable face and less scale jitter
  before: https://i.imgur.com/4jUcol8.gifv
  after:  https://i.imgur.com/lyiax49.gifv - scale of the face is less changed within frame size
+ decoder now has only 1 residual block instead of 2, result is same quality with less decoder size
+ added mid-full face, which covers 30% more area than half face.
+ added option " Enable 'true face' training "
  Enable it only after 50k iters, when the face is sharp enough.
  the result face will be more like src.
  The most src-like face with 'true-face-training' you can achieve with DF architecture.
2019-10-05 16:26:23 +04:00
Colombo
d9d10f91c2 S3FD and 2DFAN-4 were improperly ported from pytorch. now fixed. 2019-09-20 17:16:37 +04:00
Colombo
c06d073936 1 2019-09-19 11:16:35 +04:00
Colombo
dc11ec32be SAE : WARNING, RETRAIN IS REQUIRED !
fixed model sizes from previous update.
avoided bug in ML framework(keras) that forces to train the model on random noise.

Converter: added blur on the same keys as sharpness

Added new model 'TrueFace'. This is a GAN model ported from https://github.com/NVlabs/FUNIT
Model produces near zero morphing and high detail face.
Model has higher failure rate than other models.
Keep src and dst faceset in same lighting conditions.
2019-09-19 11:13:56 +04:00
Colombo
7ed38a8097 Converter:
Session is now saved to the model folder.

blur and erode ranges are increased to -400+400

hist-match-bw is now replaced with seamless2 mode.

Added 'ebs' color transfer mode (works only on Windows).

FANSEG model (used in FAN-x mask modes) is retrained with new model configuration
and now produces better precision and less jitter
2019-09-07 13:57:42 +04:00
Colombo
bac9d5a99d nothing interesting 2019-08-30 09:49:07 +04:00
iperov
23854ac8bc removing landmarks of lips which are used in face aligning, and leave only corners of mouth landmarks,
result: less scale jittering aligning that will be feeded into AE and produce more stable face
before: https://i.imgur.com/gJaW5Y4.gifv
after: https://i.imgur.com/Vq7gvhY.gifv
2019-08-26 19:36:41 +04:00
iperov
25da22fdc9 minor fix 2019-08-25 22:32:21 +04:00
iperov
407ce3b1ca Added interactive converter.
With interactive converter you can change any parameter of any frame and see the result in real time.

Converter: added motion_blur_power param.
Motion blur is applied by precomputed motion vectors.
So the moving face will look more realistic.

RecycleGAN model is removed.

Added experimental AVATAR model. Minimum required VRAM is 6GB (NVIDIA), 12GB (AMD)
Usage:
1) place data_src.mp4 10-20min square resolution video of news reporter sitting at the table with static background,
   other faces should not appear in frames.
2) process "extract images from video data_src.bat" with FULL fps
3) place data_dst.mp4 video of face who will control the src face
4) process "extract images from video data_dst FULL FPS.bat"
5) process "data_src mark faces S3FD best GPU.bat"
6) process "data_dst extract unaligned faces S3FD best GPU.bat"
7) train AVATAR.bat stage 1, tune batch size to maximum for your card (32 for 6GB), train to 50k+ iters.
8) train AVATAR.bat stage 2, tune batch size to maximum for your card (4 for 6GB), train to decent sharpness.
9) convert AVATAR.bat
10) converted to mp4.bat

updated versions of modules
2019-08-24 12:57:29 +04:00
iperov
b72d5a3f9a fixed error "Failed to get convolution algorithm" on some systems
fixed error "dll load failed" on some systems
Expanded eyebrows line of face masks. It does not affect mask of FAN-x converter mode.
2019-08-11 11:17:22 +04:00
cclauss
93ee889597 Identity is not the same thing as equality in Python (#291)
Use ==/!= to compare str, bytes, and int literals
$ python
```python
>>> method = 'Mi'
>>> method += 'n'
>>> method == 'Min'
True
>>> method is 'Min'
False
```
2019-06-27 21:10:22 +04:00
iperov
659aa5705a _ 2019-04-30 17:14:02 +04:00
iperov
2cd028fb67 _ 2019-04-28 21:16:27 +04:00
iperov
ab714dfbfe _ 2019-04-28 16:29:32 +04:00
iperov
f89200d236 nothing interesting 2019-04-26 15:18:48 +04:00
iperov
0e088f6415 _ 2019-04-25 14:46:39 +04:00
iperov
9535a657d2 SAE: revert back CA weights option 2019-04-24 13:44:12 +04:00
iperov
60ed56a801 upd dev_poseestimator 2019-04-24 11:33:11 +04:00
iperov
e1da9c56b4
SAE collapse fix (#245)
* test

* _

* _

* upd dev_poseest

* SAE: finally collapses are fixed

* fix batch size help
2019-04-24 09:38:26 +04:00
iperov
2809d495c2 _ 2019-04-23 17:31:58 +04:00
iperov
268b402513 _ 2019-04-23 17:03:53 +04:00
iperov
565c131b97 SAE: removed option 'remove gray border', because it makes the model very resource intensive 2019-04-23 08:31:13 +04:00
iperov
e58197ca22 initial code to extract umdfaces.io dataset and train pose estimator 2019-04-23 08:14:09 +04:00
iperov
046649e6be
update == 04.20.2019 == (#242)
* superb improved fanseg

* _

* _

* added FANseg extractor for src and dst faces to use it in training

* -

* _

* _

* update to 'partial' func

* _

* trained FANSeg_256_full_face.h5,
new experimental models: AVATAR, RecycleGAN

* _

* _

* _

* fix for TCC mode cards(tesla), was conflict with plaidML initialization.

* _

* update manuals

* _
2019-04-20 08:23:08 +04:00
iperov
5ac7e5d7f1 changed help message for pixel loss:
Pixel loss may help to enhance fine details and stabilize face color. Use it only if quality does not improve over time.

SAE:
previous SAE model will not work with this update.
Greatly decreased chance of model collapse.
Increased model accuracy.
Residual blocks now default and this option has been removed.
Improved 'learn mask'.
Added masked preview (switch by space key)

Converter:
fixed rct/lct in seamless mode
added mask mode (6) learned*FAN-prd*FAN-dst

added mask editor, its created for refining dataset for FANSeg model, and not for production, but you can spend your time and test it in regular fakes with face obstructions
2019-04-04 10:22:53 +04:00
iperov
b03b147bae refactoring 2019-03-26 11:09:44 +04:00
iperov
bb02cc1d97 _ 2019-03-25 13:28:08 +04:00
iperov
c4f41a7e76 Converter: added new mask modes: FAN-prd, FAN-dst 2019-03-21 21:19:03 +04:00
iperov
7a0cc56603 extractor: fixes, optimizations,
manual extractor: added 'a' option to switch accuracy mode
2019-03-21 18:56:32 +04:00
iperov
63c9be3d1f fix 2019-03-21 12:15:04 +04:00
iperov
d1676dea06 refactorings, optimizations 2019-03-21 11:58:54 +04:00
iperov
6169e6ba8a fix fanseg 2019-03-20 09:08:42 +04:00
iperov
a3df04999c removing trailing spaces 2019-03-19 23:53:27 +04:00
iperov
fa4e579b95 fix fanseg 2019-03-19 23:49:41 +04:00
iperov
034ad3cce5 upd fan segmentator 2019-03-19 19:44:14 +04:00
iperov
33606e327b fixed landmark extraction of face with opened mouth 2019-03-19 00:23:52 +04:00
iperov
da7cf225db fix 2019-03-18 10:38:48 +04:00
iperov
b8efb4cbba enhancing landmarks extractor by using s3fd second pass inside second pass,
it will be x2 slower, but time will be saved due to more images will be marked properly
works on 2GB+
2019-03-18 10:25:24 +04:00
iperov
1d56585f33 fix ability for auto re-extract dst faces, after this update DFL torrent extractor scripts will not work. 2019-03-18 01:12:04 +04:00
iperov
00e56299c4 S3FD: wrong small face check fix 2019-03-18 00:30:08 +04:00