From 8db3dec06c855b5a1811d018f41778342bd88cc8 Mon Sep 17 00:00:00 2001 From: Carolin Schmitt <47317483+cscmt@users.noreply.github.com> Date: Thu, 24 Aug 2023 17:20:44 +0200 Subject: [PATCH 1/2] update requirements for face_alignment --- requirements38.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements38.txt b/requirements38.txt index bc07ab3..fc65f5e 100644 --- a/requirements38.txt +++ b/requirements38.txt @@ -12,7 +12,7 @@ docker-pycreds~=0.4.0 docutils~=0.16 dominate~=2.6.0 easydict~=1.9 -face-alignment~=1.3.3 +face-alignment~=1.3.4 facenet-pytorch~=2.5.1 flatbuffers~=1.12 freetype-py~=2.2.0 From c10dc3f185794034e4577267c62e5c93554bb40e Mon Sep 17 00:00:00 2001 From: Carolin Schmitt <47317483+cscmt@users.noreply.github.com> Date: Thu, 24 Aug 2023 17:22:36 +0200 Subject: [PATCH 2/2] quick fix loading checkpoint from EMOCA v1 --- gdl_apps/EmotionRecognition/utils/io.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/gdl_apps/EmotionRecognition/utils/io.py b/gdl_apps/EmotionRecognition/utils/io.py index ab086c8..0517021 100644 --- a/gdl_apps/EmotionRecognition/utils/io.py +++ b/gdl_apps/EmotionRecognition/utils/io.py @@ -47,9 +47,9 @@ def load_configs(run_path): -def replace_asset_dirs(cfg, output_dir : Path, ): +def replace_asset_dirs(cfg, output_dir : Path, deca_checkpoint_path : Path = None): asset_dir = get_path_to_assets() - if 'deca_cfg' in cfg.keys(): + if 'deca_cfg' in cfg.model.keys(): # cfg.model.deca_cfg.inout.output_dir = str(output_dir.parent) # cfg.model.deca_cfg.inout.full_run_dir = str(output_dir / mode) # cfg.model.deca_cfg.inout.checkpoint_dir = str(output_dir / mode / "checkpoints") @@ -70,6 +70,12 @@ def replace_asset_dirs(cfg, output_dir : Path, ): # cfg.model.emonet_model_path = str(asset_dir / "EmotionRecognition/image_based_networks/ResNet50") cfg.model.deca_cfg.model.emonet_model_path = "" + if not bool(cfg.model.deca_checkpoint): + if deca_checkpoint_path is not None: + cfg.model.deca_checkpoint = str(deca_checkpoint_path) + else: + print("[WARNING] Pointing the EMOCA-based emotion recognition model to the original EMOCA version") + cfg.model.deca_checkpoint = str(asset_dir / "EMOCA/models/EMOCA/detail/checkpoints/deca-epoch=03-val_loss/dataloader_idx_0=9.44489288.ckpt") return cfg