Commit graph

44 commits

Author SHA1 Message Date
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
4683c362ac changing SubpixelUpscaler to variable H,W dims,
tensorflow backend : using depth_to_space in SubpixelUpscaler, so training speed increased by 4%
2019-03-28 17:55:42 +04:00
iperov
bb02cc1d97 _ 2019-03-25 13:28:08 +04:00
iperov
37505d88e3 old SAE model will not work with this update.
Fixed bug when SAE can be collapsed during a time.

SAE: removed CA weights and encoder/decoder dims.

added new options:

Encoder dims per channel (21-85 ?:help skip:%d)
More encoder dims help to recognize more facial features, but require more VRAM. You can fine-tune model size to fit your GPU.

Decoder dims per channel (11-85 ?:help skip:%d)
More decoder dims help to get better details, but require more VRAM. You can fine-tune model size to fit your GPU.

Add residual blocks to decoder? (y/n, ?:help skip:n) :
These blocks help to get better details, but require more computing time.

Remove gray border? (y/n, ?:help skip:n) :
Removes gray border of predicted face, but requires more computing resources.
2019-03-24 15:35:02 +04:00
iperov
4f4447d719 nnlib: implemented ReflectionPadding2D for plaidML,
wrapping Conv2D with new padding param
2019-03-23 22:20:05 +04:00
iperov
9849bcc1e5 fix 2019-03-21 19:04:46 +04:00
iperov
565af4d1da refactoring 2019-03-21 18:58:38 +04:00
iperov
a3df04999c removing trailing spaces 2019-03-19 23:53:27 +04:00
iperov
2b40fa182f fix 2019-03-17 23:50:18 +04:00
iperov
a71defc69a removing fail solutions 2019-03-17 23:47:14 +04:00
iperov
7aebfa3f7f added AdaBound 2019-03-17 19:17:44 +04:00
iperov
d6a45763a2 SAE: added option "Use CA weights":
Initialize network with 'Convolution Aware' weights. This may help to achieve a higher accuracy model, but consumes time at first run.
2019-03-16 12:54:36 +04:00
iperov
8da47fec13 fix ModelBase, nnlib 2019-03-13 20:53:59 +04:00
iperov
a9026ccb67 fix ModelBase, nnlib 2019-03-13 19:50:16 +04:00
iperov
58763756f5 SAE: removed simple_optimizer . Added optimizer mode for tensorflow only (NVIDIA cards), allows to train x2-x3 bigger networks with normal Adam optimizer, consuming VRAM and CPU power. 2019-03-13 11:54:17 +04:00
iperov
69174a48e0 fix DFLOptimizer 2019-03-12 16:56:59 +04:00
iperov
46ff33bf89 SAE: dssim kernel size now depends on resolution 2019-03-12 09:49:40 +04:00
iperov
fd3b9add2f SAE: added option "simple optimizer" allows to train bigger networks on same VRAM
nnlib: added DFLOptimizer is my own optimizer
2019-03-12 09:32:35 +04:00
iperov
ee8dbcbc35 revert back Adam 2019-03-11 21:52:36 +04:00
iperov
e4637336ef added ability to save optimizers states which work with K.function,
added custom Adam that can save 'iterations' param
2019-03-11 18:23:01 +04:00
iperov
9440224556 change TF console log level to 'errors only' 2019-03-09 20:23:33 +04:00
iperov
7cea93c0f2 nothing interesting 2019-02-28 20:10:58 +04:00
iperov
f0a20b46d3 SAE: added new archi 'vg' 2019-02-21 17:53:59 +04:00
iperov
d66829aae4 proper nnlib.dssim 2019-02-20 19:03:49 +04:00
iperov
72ba6b103c added support of AMD videocards
added Intel's plaidML backend to use OpenCL engine. Check new requirements.
smart choosing of backend in device.py
env var 'force_plaidML' can be choosed to forced using plaidML
all tf functions transferred to pure keras
MTCNN transferred to pure keras, but it works slow on plaidML (forced to CPU in this case)
default batch size for all models and VRAMs now 4, feel free to adjust it on your own
SAE: default style options now ZERO, because there are no best values for all scenes, set them on your own.
SAE: return back option pixel_loss, feel free to enable it on your own.
SAE: added option multiscale_decoder default is true, but you can disable it to get 100% same as H,DF,LIAEF model behaviour.
fix converter output to .png
added linux fork reference to doc/doc_build_and_repository_info.md
2019-02-19 17:33:12 +04:00
iperov
06fe1314d8 removing default yaw_value from DFLIMG files,
added better pitch/yaw estimator from 68 landmarks,
improving face yaw accuracy for sorting and trainers,
added sort by face-pitch
2019-02-12 21:31:37 +04:00
iperov
429e7e6aee upd nnlib.py 2019-02-12 09:30:38 +04:00
iperov
d8833e929e upd nnlib.py 2019-02-11 21:29:30 +04:00
iperov
f8e63970d2 H64, H128, DF, LIAEF128: added pixel loss option. 2019-02-11 12:05:54 +04:00
iperov
4d37fd62cd fix DFLJPG,
SAE: added "rare sample booster"
SAE: pixel loss replaced to smooth transition from DSSIM to PixelLoss in 15k epochs by default
2019-02-09 18:53:37 +04:00
iperov
6d95dd4a99 DFL now works with JPG files by default. Old PNG files also supported. Added util convertor PNG to JPG. 2019-02-04 19:47:24 +04:00
iperov
b6c4171ea1 optimizations of nnlib and SampleGeneratorFace,
refactorings
2019-01-22 11:52:04 +04:00
iperov
946688567d enhanced SAE model. You should to restart training.
new default style power = 2.0
fix DF default batch sizes.
upd readme
2019-01-17 21:41:40 +04:00
iperov
ba06a71fff SAE: changed default style power to 10.0 . Now style power is floating number in valid range 0.0 to 100.0 2019-01-14 21:24:33 +04:00
iperov
12383570e8 Fix for systems without NVSMI 2019-01-13 16:38:17 +04:00
iperov
81e837d920 upd readme 2019-01-12 15:29:34 +04:00
iperov
2473dabf37 fix loss history 2019-01-11 19:19:29 +04:00
iperov
bf5282f7ec if you have multi GPU in a system, you can choose what GPU to use on model start 2019-01-10 19:22:54 +04:00
iperov
48d0123f0b SAE: new options face_style_power, bg_style_power instead of style_power. Zero - means dont use style.
SAE: new option 'lighter_encoder'.
Now model settings can be overrided by pressing enter in 2 seconds while model loading (works on Windows).
Removed all MultiGPU models, because keras multi_gpu in fact doesn't work.
2019-01-10 18:28:12 +04:00
iperov
e8620919a7 update devicelib/nnlib to detect compute capability 2019-01-08 10:48:06 +04:00
iperov
7b70e7eec1 added new model U-net Face Morpher.
removed AVATAR - useless model was just for demo
removed MIAEF128 - use UFM insted
removed LIAEF128YAW - use model option sort by yaw on start for any model
All models now ask some options on start.
Session options (such as target epoch, batch_size, write_preview_history etc) can be overrided by special command arg.
Converter now always ask options and no more support to define options via command line.
fix bug when ConverterMasked always used not predicted mask.
SampleGenerator now always generate samples with replicated border, exclude mask samples.
refactorings
2019-01-02 17:26:12 +04:00
iperov
474fff248f RecycleGAN fixes 2018-12-28 23:13:29 +04:00
iperov
1f86d7f1dd ResNet, changed PixelShuffler to Conv2DTranspose 2018-12-28 20:38:26 +04:00
iperov
f8824f9601 refactoring. Added RecycleGAN for testing. 2018-12-28 19:38:52 +04:00