前提
プログラミング初心者です。
githubにて論文の再現実装を行おうとしています。(python version = 3.6.15)
README.mdに書いてある手順通りにコードを実行していましたが、ModuleNotFoundErrorが出てしまっています。
実現したいこと
githubコードを手順通りに実行して結果を出力する
発生している問題・エラーメッセージ
$ python demos/test_emoca_on_images.py Traceback (most recent call last): File "demos/test_emoca_on_images.py", line 20, in <module> from gdl_apps.EMOCA.utils.load import load_model ModuleNotFoundError: No module named 'gdl_apps'
該当のソースコード
test_emoca_on_images.py
1from gdl_apps.EMOCA.utils.load import load_model 2from gdl.datasets.ImageTestDataset import TestData 3import gdl 4import numpy as np 5import os 6import torch 7from skimage.io import imsave 8from pathlib import Path 9from tqdm import auto 10import argparse 11from gdl_apps.EMOCA.utils.io import save_obj, save_images, save_codes, test 12 13 14def main(): 15 parser = argparse.ArgumentParser() 16 # add the input folder arg 17 parser.add_argument('--input_folder', type=str, default= str(Path(gdl.__file__).parents[1] / "data/EMOCA_test_example_data/images/affectnet_test_examples")) 18 parser.add_argument('--output_folder', type=str, default="image_output", help="Output folder to save the results to.") 19 parser.add_argument('--model_name', type=str, default='EMOCA', help='Name of the model to use.') 20 parser.add_argument('--path_to_models', type=str, default=str(Path(gdl.__file__).parents[1] / "assets/EMOCA/models")) 21 parser.add_argument('--save_images', type=bool, default=True, help="If true, output images will be saved") 22 parser.add_argument('--save_codes', type=bool, default=False, help="If true, output FLAME values for shape, expression, jaw pose will be saved") 23 parser.add_argument('--save_mesh', type=bool, default=False, help="If true, output meshes will be saved") 24 25 args = parser.parse_args() 26 27 28 # path_to_models = '/ps/scratch/rdanecek/emoca/finetune_deca' 29 # path_to_models = '/is/cluster/work/rdanecek/emoca/finetune_deca' 30 path_to_models = args.path_to_models 31 input_folder = args.input_folder 32 output_folder = args.output_folder 33 model_name = args.model_name 34 35 mode = 'detail' 36 # mode = 'coarse' 37 38 # 1) Load the model 39 emoca, conf = load_model(path_to_models, model_name, mode) 40 emoca.cuda() 41 emoca.eval() 42 43 # 2) Create a dataset 44 dataset = TestData(input_folder, face_detector="fan", max_detection=20) 45 46 ## 4) Run the model on the data 47 for i in auto.tqdm( range(len(dataset))): 48 batch = dataset[i] 49 vals, visdict = test(emoca, batch) 50 # name = f"{i:02d}" 51 current_bs = batch["image"].shape[0] 52 53 for j in range(current_bs): 54 name = batch["image_name"][j] 55 56 sample_output_folder = Path(output_folder) / name 57 sample_output_folder.mkdir(parents=True, exist_ok=True) 58 59 if args.save_mesh: 60 save_obj(emoca, str(sample_output_folder / "mesh_coarse.obj"), vals, j) 61 if args.save_images: 62 save_images(output_folder, name, visdict, with_detection=True, i=j) 63 if args.save_codes: 64 save_codes(Path(output_folder), name, vals, i=j) 65 66 print("Done") 67 68 69if __name__ == '__main__': 70 main()
初心者質問で申し訳ないのですが、ご回答いただけたら幸いです。
githubリンクを提示ください。
また、漏れ抜けや間違いないかが第三者が確認できるように、実際に行った手順を具体的に記載すると回答得られやすくなります。
> No module named 'gdl_apps'
動かしたいのが
https://github.com/radekd91/emoca
なら、それの「Installation」はやりました?
やってれば、
pip install -e .
で、「gdl」と「gdl_apps」がインストールされてると思うのですが

回答1件
あなたの回答
tips
プレビュー